transformers-0.1.4.0: Concrete monad transformers

Portabilityportable
Stabilityexperimental
Maintainerlibraries@haskell.org

Control.Monad.Trans.Maybe

Contents

Description

Declaration of the MaybeT monad transformer.

Synopsis

The MaybeT monad transformer

newtype MaybeT m a Source

Constructors

MaybeT 

Fields

runMaybeT :: m (Maybe a)
 

Instances

mapMaybeT :: (m (Maybe a) -> n (Maybe b)) -> MaybeT m a -> MaybeT n bSource

Lifting other operations

liftCallCC :: (((Maybe a -> m (Maybe b)) -> m (Maybe a)) -> m (Maybe a)) -> ((a -> MaybeT m b) -> MaybeT m a) -> MaybeT m aSource

Lift a callCC operation to the new monad.

liftCatch :: (m (Maybe a) -> (e -> m (Maybe a)) -> m (Maybe a)) -> MaybeT m a -> (e -> MaybeT m a) -> MaybeT m aSource

Lift a catchError operation to the new monad.

liftListen :: Monad m => (m (Maybe a) -> m (Maybe a, w)) -> MaybeT m a -> MaybeT m (a, w)Source

Lift a listen operation to the new monad.

liftPass :: Monad m => (m (Maybe a, w -> w) -> m (Maybe a)) -> MaybeT m (a, w -> w) -> MaybeT m aSource

Lift a pass operation to the new monad.