Copyright | (c) 2017 Michael Walker |
---|---|
License | MIT |
Maintainer | Michael Walker <mike@barrucadu.co.uk> |
Stability | experimental |
Portability | FlexibleInstances, GADTs, GeneralizedNewtypeDeriving, MultiParamTypeClasses |
Safe Haskell | None |
Language | Haskell2010 |
Internal types. Most of these are re-exported elsewhere as lenses.
This module is NOT considered to form part of the public interface of this library.
Synopsis
- newtype IRC s a = IRC {}
- data IRCState s = IRCState {}
- data ConnectionConfig s = ConnectionConfig {
- _func :: IO () -> ConduitM (Either ByteString (Event ByteString)) Void IO () -> ConduitM () (Message ByteString) IO () -> IO ()
- _server :: ByteString
- _port :: Int
- _username :: Text
- _realname :: Text
- _password :: Maybe Text
- _flood :: NominalDiffTime
- _timeout :: NominalDiffTime
- _onconnect :: IRC s ()
- _ondisconnect :: Maybe SomeException -> IRC s ()
- _logfunc :: Origin -> ByteString -> IO ()
- data InstanceConfig s = InstanceConfig {}
- data ConnectionState
- data Origin
- data EventHandler s where
- EventHandler :: (Event Text -> Maybe b) -> (Source Text -> b -> IRC s ()) -> EventHandler s
- data Timeout = Timeout
- data Disconnect = Disconnect
The IRC monad
The IRC monad.
Instances
MonadState s (IRC s) Source # | |
Monad (IRC s) Source # | |
Functor (IRC s) Source # | |
Applicative (IRC s) Source # | |
Alternative (IRC s) Source # | |
MonadPlus (IRC s) Source # | |
MonadIO (IRC s) Source # | |
Defined in Network.IRC.Client.Internal.Types | |
MonadThrow (IRC s) Source # | |
Defined in Network.IRC.Client.Internal.Types | |
MonadCatch (IRC s) Source # | |
MonadMask (IRC s) Source # | |
MonadReader (IRCState s) (IRC s) Source # | |
State
The state of an IRC session.
IRCState | |
|
data ConnectionConfig s Source #
The static state of an IRC server connection.
ConnectionConfig | |
|
data InstanceConfig s Source #
The updateable state of an IRC connection.
InstanceConfig | |
|
data ConnectionState Source #
The state of the connection.
Instances
The origin of a message.
Events
data EventHandler s where Source #
A function which handles an event.
EventHandler :: (Event Text -> Maybe b) -> (Source Text -> b -> IRC s ()) -> EventHandler s |
Exceptions
Exception thrown to kill the client if the timeout elapses with nothing received from the server.
Instances
Bounded Timeout Source # | |
Enum Timeout Source # | |
Eq Timeout Source # | |
Ord Timeout Source # | |
Defined in Network.IRC.Client.Internal.Types | |
Read Timeout Source # | |
Show Timeout Source # | |
Exception Timeout Source # | |
Defined in Network.IRC.Client.Internal.Types toException :: Timeout -> SomeException # fromException :: SomeException -> Maybe Timeout # displayException :: Timeout -> String # |
data Disconnect Source #
Exception thrown to all managed threads when the client disconnects.