Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
data SessionEnv u nid k rpkt Source #
SessionEnv | |
|
Instances
Monad m => MonadReader (SessionEnv u nid k rpkt) (SessionT u nid k rpkt tp m) Source # | |
Defined in Metro.Session ask :: SessionT u nid k rpkt tp m (SessionEnv u nid k rpkt) # local :: (SessionEnv u nid k rpkt -> SessionEnv u nid k rpkt) -> SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m a # reader :: (SessionEnv u nid k rpkt -> a) -> SessionT u nid k rpkt tp m a # |
data SessionEnv1 u nid k rpkt tp Source #
SessionEnv1 | |
|
newSessionEnv :: MonadIO m => u -> nid -> k -> Int64 -> [Maybe rpkt] -> m (SessionEnv u nid k rpkt) Source #
data SessionT u nid k rpkt tp m a Source #
Instances
FromConn (SessionT u nid k rpkt) Source # | |
Monad m => MonadReader (SessionEnv u nid k rpkt) (SessionT u nid k rpkt tp m) Source # | |
Defined in Metro.Session ask :: SessionT u nid k rpkt tp m (SessionEnv u nid k rpkt) # local :: (SessionEnv u nid k rpkt -> SessionEnv u nid k rpkt) -> SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m a # reader :: (SessionEnv u nid k rpkt -> a) -> SessionT u nid k rpkt tp m a # | |
MonadTrans (SessionT u nid k rpkt tp) Source # | |
Defined in Metro.Session | |
Monad m => Monad (SessionT u nid k rpkt tp m) Source # | |
Functor m => Functor (SessionT u nid k rpkt tp m) Source # | |
Applicative m => Applicative (SessionT u nid k rpkt tp m) Source # | |
Defined in Metro.Session pure :: a -> SessionT u nid k rpkt tp m a # (<*>) :: SessionT u nid k rpkt tp m (a -> b) -> SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m b # liftA2 :: (a -> b -> c) -> SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m b -> SessionT u nid k rpkt tp m c # (*>) :: SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m b -> SessionT u nid k rpkt tp m b # (<*) :: SessionT u nid k rpkt tp m a -> SessionT u nid k rpkt tp m b -> SessionT u nid k rpkt tp m a # | |
MonadIO m => MonadIO (SessionT u nid k rpkt tp m) Source # | |
Defined in Metro.Session | |
MonadUnliftIO m => MonadUnliftIO (SessionT u nid k rpkt tp m) Source # | |
Defined in Metro.Session |
runSessionT :: SessionEnv u nid k rpkt -> SessionT u nid k rpkt tp m a -> ConnT tp m a Source #
runSessionT1 :: SessionEnv1 u nid k rpkt tp -> SessionT u nid k rpkt tp m a -> m a Source #
send :: (MonadUnliftIO m, Transport tp, SendPacket spkt, SetPacketId k spkt) => spkt -> SessionT u nid k rpkt tp m () Source #
getSessionId :: Monad m => SessionT u nid k rpkt tp m k Source #
getSessionEnv1 :: (Monad m, Transport tp) => SessionT u nid k rpkt tp m (SessionEnv1 u nid k rpkt tp) Source #
ident :: SessionEnv1 u nid k rpkt tp -> (nid, k) Source #
makeResponse :: (MonadUnliftIO m, Transport tp, SendPacket spkt, SetPacketId k spkt) => (rpkt -> m (Maybe spkt)) -> SessionT u nid k rpkt tp m () Source #
makeResponse_ :: (MonadUnliftIO m, Transport tp, SendPacket spkt, SetPacketId k spkt) => (rpkt -> Maybe spkt) -> SessionT u nid k rpkt tp m () Source #