definition module IRC
+import IRCBot
from Data.Maybe import :: Maybe
from Data.Either import :: Either
from StdOverloaded import class fromInt, class toInt, class toString, class fromString
+from Text.Parsers.Simple.Core import :: Error
:: IRCMessage =
- { irc_prefix :: Maybe (Either String IRCUser)
- , irc_command :: IRCCommand}
+ { irc_prefix :: Maybe (Either IRCUser String)
+ , irc_command :: Either IRCNumReply IRCCommand}
+
+:: IRCNumReply =
+ { irc_reply :: IRCReplies
+ , irc_recipient :: String
+ , irc_message :: String
+ }
:: IRCUser =
{ irc_nick :: String
, irc_host :: Maybe String
}
-instance toString IRCCommand, IRCReplies, IRCErrors, IRCMessage, IRCUser
+parseIRCMessage :: String -> Either [Error] IRCMessage
+
+instance toString IRCCommand, IRCReplies, IRCErrors, IRCMessage, IRCUser, IRCNumReply
instance fromInt IRCReplies, IRCErrors
instance toInt IRCReplies, IRCErrors