| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Control.Monad.Trans.Lift.Pass
Description
Lifting the pass operation.
- class MonadTrans t => LiftPass t where
- type Pass w m a = m (a, w -> w) -> m a
- defaultLiftPass :: (Monad m, LiftPass n) => (forall x. n m x -> t m x) -> (forall o x. t o x -> n o x) -> Pass w m (StT n a) -> Pass w (t m) a
- module Control.Monad.Trans.Class
Documentation
class MonadTrans t => LiftPass t where Source #
The class of monad transformers capable of lifting pass.
Minimal complete definition
Instances
| LiftPass MaybeT Source # | |
| Monoid w' => LiftPass (WriterT w') Source # | |
| Monoid w' => LiftPass (WriterT w') Source # | |
| LiftPass (StateT s) Source # | |
| LiftPass (StateT s) Source # | |
| LiftPass (IdentityT *) Source # | |
| LiftPass (ExceptT e) Source # | |
| Monoid w' => LiftPass (WriterT w') Source # | |
| LiftPass (ReaderT * r) Source # | |
| Monoid w' => LiftPass (RWST r w' s) Source # | |
| Monoid w' => LiftPass (RWST r w' s) Source # | |
| Monoid w' => LiftPass (RWST r w' s) Source # | |
type Pass w m a = m (a, w -> w) -> m a #
Signature of the pass operation,
introduced in Control.Monad.Trans.Writer.
Any lifting function liftPass should satisfy
lift. liftPass = liftPass .lift
Arguments
| :: (Monad m, LiftPass n) | |
| => (forall x. n m x -> t m x) | Monad constructor |
| -> (forall o x. t o x -> n o x) | Monad deconstructor |
| -> Pass w m (StT n a) | |
| -> Pass w (t m) a |
Default definition for the liftPass method.
module Control.Monad.Trans.Class