Safe Haskell | None |
---|---|
Language | Haskell2010 |
- newtype RWST r w s m a = RWST {
- runRWST :: (r, s) -> m (a, s, w)
- type RWS r w s a = RWST r w s Id a
- class MonadTrans t => MonadInternal t where
- i'RWST :: Iso (RWST r w s m a) (RWST r' w' s' m' a') ((r, s) -> m (a, s, w)) ((r', s') -> m' (a', s', w'))
- get_ :: (MonadTrans t, MonadState a m) => t m a
- put_ :: (MonadTrans t, MonadState s m) => s -> t m ()
- modify_ :: (MonadTrans t, MonadState s m) => (s -> s) -> t m ()
- local_ :: (MonadInternal t, MonadReader r m) => (r -> r) -> t m a -> t m a
- ask_ :: (MonadTrans t, MonadReader a m) => t m a
- tell_ :: (MonadWriter w m, MonadTrans t) => w -> t m ()
- listen_ :: (MonadInternal t, MonadWriter w m) => t m a -> t m (w, a)
- censor_ :: (MonadInternal t, MonadWriter w m) => t m (a, w -> w) -> t m a
- getCounter_ :: (MonadTrans t, MonadCounter w acc m) => t m acc
- setCounter_ :: (MonadTrans t, MonadCounter w acc m) => acc -> t m ()
Documentation
newtype RWST r w s m a Source #
class MonadTrans t => MonadInternal t where Source #
MonadInternal (ReaderT r) Source # | |
MonadInternal (StateT s) Source # | |
Monoid w => MonadInternal (WriterT w) Source # | |
Monoid w => MonadInternal (RWST r w s) Source # | |
i'RWST :: Iso (RWST r w s m a) (RWST r' w' s' m' a') ((r, s) -> m (a, s, w)) ((r', s') -> m' (a', s', w')) Source #
Default methods
get_ :: (MonadTrans t, MonadState a m) => t m a Source #
put_ :: (MonadTrans t, MonadState s m) => s -> t m () Source #
modify_ :: (MonadTrans t, MonadState s m) => (s -> s) -> t m () Source #
local_ :: (MonadInternal t, MonadReader r m) => (r -> r) -> t m a -> t m a Source #
ask_ :: (MonadTrans t, MonadReader a m) => t m a Source #
tell_ :: (MonadWriter w m, MonadTrans t) => w -> t m () Source #
listen_ :: (MonadInternal t, MonadWriter w m) => t m a -> t m (w, a) Source #
censor_ :: (MonadInternal t, MonadWriter w m) => t m (a, w -> w) -> t m a Source #
getCounter_ :: (MonadTrans t, MonadCounter w acc m) => t m acc Source #
setCounter_ :: (MonadTrans t, MonadCounter w acc m) => acc -> t m () Source #