| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | ross@soi.city.ac.uk |
| Safe Haskell | Safe-Inferred |
Control.Monad.Trans.Identity
Description
The identity monad transformer.
This is useful for functions parameterized by a monad transformer.
- newtype IdentityT f a = IdentityT (f a)
- runIdentityT :: IdentityT f a -> f a
- mapIdentityT :: (m a -> n b) -> IdentityT m a -> IdentityT n b
- liftCatch :: Catch e m a -> Catch e (IdentityT m) a
- liftCallCC :: CallCC m a b -> CallCC (IdentityT m) a b
The identity monad transformer
The trivial monad transformer, which maps a monad to an equivalent monad.
Constructors
| IdentityT (f a) |
Instances
| MonadTrans IdentityT | |
| Monad m => Monad (IdentityT m) | |
| Functor m => Functor (IdentityT m) | |
| MonadFix m => MonadFix (IdentityT m) | |
| MonadPlus m => MonadPlus (IdentityT m) | |
| Applicative m => Applicative (IdentityT m) | |
| Foldable f => Foldable (IdentityT f) | |
| Traversable f => Traversable (IdentityT f) | |
| Alternative m => Alternative (IdentityT m) | |
| MonadIO m => MonadIO (IdentityT m) | |
| Show1 f => Show1 (IdentityT f) | |
| Read1 f => Read1 (IdentityT f) | |
| Ord1 f => Ord1 (IdentityT f) | |
| Eq1 f => Eq1 (IdentityT f) | |
| (Eq1 f, Eq a) => Eq (IdentityT f a) | |
| (Ord1 f, Ord a) => Ord (IdentityT f a) | |
| (Read1 f, Read a) => Read (IdentityT f a) | |
| (Show1 f, Show a) => Show (IdentityT f a) |
runIdentityT :: IdentityT f a -> f aSource
The inverse of IdentityT.
mapIdentityT :: (m a -> n b) -> IdentityT m a -> IdentityT n bSource
Lift a unary operation to the new monad.
Lifting other operations
liftCallCC :: CallCC m a b -> CallCC (IdentityT m) a bSource
Lift a callCC operation to the new monad.