-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | MaybeT monad transformer
--
-- Support for computations with failures.
@package MaybeT
@version 0.1.1
-- | The MaybeT monad. See
-- http://www.haskell.org/haskellwiki/New_monads/MaybeT for more
-- widely-used version. Our Functor instance and our
-- implementation of >>= are borrowed from there.
--
--
-- - Computation type: Computations which may fail or return
-- nothing.
-- - Binding strategy: Failure returns the value Nothing,
-- bypassing any bound functions which follow. Success returns a value
-- wrapped in Just.
-- - Useful for: Building computations from steps which may
-- fail. No error information is returned. (If error information is
-- required, see Control.Monad.Error.)
--
module Control.Monad.Maybe
-- | A monad transformer which adds Maybe semantics to an existing monad.
newtype MaybeT m a
MaybeT :: m (Maybe a) -> MaybeT m a
runMaybeT :: MaybeT m a -> m (Maybe a)
instance (MonadWriter w m) => MonadWriter w (MaybeT m)
instance (MonadState s m) => MonadState s (MaybeT m)
instance (MonadReader r m) => MonadReader r (MaybeT m)
instance (MonadFix m) => MonadFix (MaybeT m)
instance (MonadIO m) => MonadIO (MaybeT m)
instance (MonadCont m) => MonadCont (MaybeT m)
instance MonadTrans MaybeT
instance (Monad m) => Monad (MaybeT m)
instance (Functor m) => Functor (MaybeT m)