|Copyright||(c) 2007 Yitzak Gale, Eric Kidd|
|License||BSD-style (see the file LICENSE)|
MaybeT monad transformer extends a monad with the ability to exit the computation without returning a value.
A sequence of actions produces a value only if all the actions in the sequence do. If one exits, the rest of the sequence is skipped and the composite action exits.
For a variant allowing a range of exception values, see Control.Monad.Trans.Except.
The parameterizable maybe monad, obtained by composing an arbitrary monad with the
Computations are actions that may produce a value or exit.
return function yields a computation that produces that value, while
>>= sequences two subcomputations, exiting if either computation does.
|Monad m => Monad (MaybeT m)|
|Functor m => Functor (MaybeT m)|
|MonadFix m => MonadFix (MaybeT m)|
|(Functor m, Monad m) => Applicative (MaybeT m)|
|Foldable f => Foldable (MaybeT f)|
|Traversable f => Traversable (MaybeT f)|
|(Functor m, Monad m) => Alternative (MaybeT m)|
|Monad m => MonadPlus (MaybeT m)|
|MonadIO m => MonadIO (MaybeT m)|
|Show1 m => Show1 (MaybeT m)|
|Read1 m => Read1 (MaybeT m)|
|Ord1 m => Ord1 (MaybeT m)|
|Eq1 m => Eq1 (MaybeT m)|
|(Eq1 m, Eq a) => Eq (MaybeT m a)|
|(Ord1 m, Ord a) => Ord (MaybeT m a)|
|(Read1 m, Read a) => Read (MaybeT m a)|
|(Show1 m, Show a) => Show (MaybeT m a)|
Transform the computation inside a
callCC operation to the new monad.
catchE operation to the new monad.
listen operation to the new monad.
pass operation to the new monad.
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).