66 lines
1.2 KiB
Haskell
66 lines
1.2 KiB
Haskell
{-|
|
|
Module : Network.IRC.Types
|
|
Description : Types for the IRC bot and the message handlers.
|
|
Copyright : (c) Abhinav Sarkar, 2014
|
|
License : Apache-2.0
|
|
Maintainer : abhinav@abhinavsarkar.net
|
|
Stability : experimental
|
|
Portability : POSIX
|
|
-}
|
|
|
|
module Network.IRC.Types
|
|
(
|
|
-- * IRC Messages
|
|
Nick (..)
|
|
, User (..)
|
|
, MessageC (..)
|
|
, Message (..)
|
|
, newMessage
|
|
, IdleMsg (..)
|
|
, NickInUseMsg (..)
|
|
, PingMsg (..)
|
|
, PongMsg (..)
|
|
, NamesMsg (..)
|
|
, ChannelMsg (..)
|
|
, PrivMsg (..)
|
|
, ActionMsg (..)
|
|
, JoinMsg (..)
|
|
, QuitMsg (..)
|
|
, PartMsg (..)
|
|
, NickMsg (..)
|
|
, KickMsg (..)
|
|
, ModeMsg (..)
|
|
, OtherMsg (..)
|
|
-- * IRC Commands
|
|
, PingCmd (..)
|
|
, PongCmd (..)
|
|
, ChannelMsgReply (..)
|
|
, PrivMsgReply (..)
|
|
, NickCmd (..)
|
|
, UserCmd (..)
|
|
, JoinCmd (..)
|
|
, QuitCmd (..)
|
|
, NamesCmd (..)
|
|
-- * Message Parsing
|
|
, MessageParserId
|
|
, MessagePart (..)
|
|
, MessageParseResult (..)
|
|
, MessageParser (..)
|
|
-- * Command Formatting
|
|
, CommandFormatter
|
|
-- * Bot
|
|
, BotConfig (..)
|
|
, newBotConfig
|
|
, Bot (..)
|
|
, BotStatus (..)
|
|
-- * Message Handlers
|
|
, MsgHandlerName
|
|
, MonadMsgHandler
|
|
, MsgHandler (..)
|
|
, newMsgHandler
|
|
, MsgHandlerMaker (..)
|
|
) where
|
|
|
|
import Network.IRC.Message.Types
|
|
import Network.IRC.Internal.Types
|