| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | libraries@haskell.org |
Control.Monad.Trans.Identity
Description
Declaration of the identity monad transformer.
- newtype IdentityT m a = IdentityT {
- runIdentityT :: m a
- liftCallCC :: (((a -> m b) -> m a) -> m a) -> ((a -> IdentityT m b) -> IdentityT m a) -> IdentityT m a
- liftCatch :: (m a -> (e -> m a) -> m a) -> IdentityT m a -> (e -> IdentityT m a) -> IdentityT m a
- liftListen :: Monad m => (m a -> m (a, w)) -> IdentityT m a -> IdentityT m (a, w)
- liftLocal :: Monad m => ((r -> r) -> m a -> m a) -> (r -> r) -> IdentityT m a -> IdentityT m a
- liftPass :: Monad m => (m (a, w -> w) -> m a) -> IdentityT m (a, w -> w) -> IdentityT m a
The identity monad transformer
Constructors
| IdentityT | |
Fields
| |
Instances
| MonadTrans IdentityT | |
| Monad m => Monad (IdentityT m) | |
| Functor m => Functor (IdentityT m) | |
| MonadPlus m => MonadPlus (IdentityT m) | |
| Applicative m => Applicative (IdentityT m) | |
| Alternative m => Alternative (IdentityT m) | |
| MonadIO m => MonadIO (IdentityT m) |
Lifting other operations
liftCallCC :: (((a -> m b) -> m a) -> m a) -> ((a -> IdentityT m b) -> IdentityT m a) -> IdentityT m aSource
Lift a callCC operation to the new monad.
liftCatch :: (m a -> (e -> m a) -> m a) -> IdentityT m a -> (e -> IdentityT m a) -> IdentityT m aSource
Lift a catchError operation to the new monad.
liftListen :: Monad m => (m a -> m (a, w)) -> IdentityT m a -> IdentityT m (a, w)Source
Lift a listen operation to the new monad.