ircbot-0.6.5: A library for writing IRC bots

Safe HaskellNone
LanguageHaskell98

Network.IRC.Bot.BotMonad

Documentation

newtype BotPartT m a Source #

Constructors

BotPartT 

Fields

Instances

MonadTrans BotPartT Source # 

Methods

lift :: Monad m => m a -> BotPartT m a #

MonadRWS r w s m => MonadRWS r w s (BotPartT m) Source # 
MonadError e m => MonadError e (BotPartT m) Source # 

Methods

throwError :: e -> BotPartT m a #

catchError :: BotPartT m a -> (e -> BotPartT m a) -> BotPartT m a #

MonadReader r m => MonadReader r (BotPartT m) Source # 

Methods

ask :: BotPartT m r #

local :: (r -> r) -> BotPartT m a -> BotPartT m a #

reader :: (r -> a) -> BotPartT m a #

MonadState s m => MonadState s (BotPartT m) Source # 

Methods

get :: BotPartT m s #

put :: s -> BotPartT m () #

state :: (s -> (a, s)) -> BotPartT m a #

MonadWriter w m => MonadWriter w (BotPartT m) Source # 

Methods

writer :: (a, w) -> BotPartT m a #

tell :: w -> BotPartT m () #

listen :: BotPartT m a -> BotPartT m (a, w) #

pass :: BotPartT m (a, w -> w) -> BotPartT m a #

Monad m => Monad (BotPartT m) Source # 

Methods

(>>=) :: BotPartT m a -> (a -> BotPartT m b) -> BotPartT m b #

(>>) :: BotPartT m a -> BotPartT m b -> BotPartT m b #

return :: a -> BotPartT m a #

fail :: String -> BotPartT m a #

Functor m => Functor (BotPartT m) Source # 

Methods

fmap :: (a -> b) -> BotPartT m a -> BotPartT m b #

(<$) :: a -> BotPartT m b -> BotPartT m a #

MonadFix m => MonadFix (BotPartT m) Source # 

Methods

mfix :: (a -> BotPartT m a) -> BotPartT m a #

Applicative m => Applicative (BotPartT m) Source # 

Methods

pure :: a -> BotPartT m a #

(<*>) :: BotPartT m (a -> b) -> BotPartT m a -> BotPartT m b #

(*>) :: BotPartT m a -> BotPartT m b -> BotPartT m b #

(<*) :: BotPartT m a -> BotPartT m b -> BotPartT m a #

Alternative m => Alternative (BotPartT m) Source # 

Methods

empty :: BotPartT m a #

(<|>) :: BotPartT m a -> BotPartT m a -> BotPartT m a #

some :: BotPartT m a -> BotPartT m [a] #

many :: BotPartT m a -> BotPartT m [a] #

MonadPlus m => MonadPlus (BotPartT m) Source # 

Methods

mzero :: BotPartT m a #

mplus :: BotPartT m a -> BotPartT m a -> BotPartT m a #

MonadIO m => MonadIO (BotPartT m) Source # 

Methods

liftIO :: IO a -> BotPartT m a #

MonadCont m => MonadCont (BotPartT m) Source # 

Methods

callCC :: ((a -> BotPartT m b) -> BotPartT m a) -> BotPartT m a #

(Functor m, MonadIO m, MonadPlus m) => BotMonad (BotPartT m) Source # 

mapBotPartT :: (m a -> n b) -> BotPartT m a -> BotPartT n b Source #

maybeZero :: MonadPlus m => Maybe a -> m a Source #