ether-0.2.1.0: Monad transformers and classes

Safe HaskellNone
LanguageHaskell2010

Control.Monad.Ether.Except.Class

Description

Synopsis

Documentation

class Monad m => MonadExcept tag e m | m tag -> e where Source

Methods

throw :: proxy tag -> e -> m a Source

Is used within a monadic computation to begin exception processing.

catch :: proxy tag -> m a -> (e -> m a) -> m a Source

A handler function to handle previous exceptions and return to normal execution.

Instances

MonadExcept tag e m => MonadExcept tag e (MaybeT m) 
MonadExcept tag e m => MonadExcept tag e (ListT m) 
MonadExcept tag e m => MonadExcept tag e (IdentityT m) 
(Monoid w, MonadExcept tag e m) => MonadExcept tag e (WriterT w m) 
(Monoid w, MonadExcept tag e m) => MonadExcept tag e (WriterT w m) 
MonadExcept tag e m => MonadExcept tag e (StateT s m) 
MonadExcept tag e m => MonadExcept tag e (StateT s m) 
MonadExcept tag e m => MonadExcept tag e (ReaderT r m) 
MonadExcept tag e m => MonadExcept tag e (ExceptT e' m) 
MonadExcept tag e m => MonadExcept tag e (WrappedEther tag' m) 
MonadExcept tag e m => MonadExcept tag e (StateT tag' s m) 
MonadExcept tag e m => MonadExcept tag e (StateT tag' s m) 
(Monoid w, MonadExcept tag e m) => MonadExcept tag e (WriterT tag' w m) 
MonadExcept tag e m => MonadExcept tag e (ReaderT tag' r m) 
MonadExcept tag e m => MonadExcept tag e (ExceptT tag' e' m) 
Monad m => MonadExcept tag e (ExceptT tag e m)