mtlx-0.1: Monad transformer library with type indexes, providing 'free' copies.

Portabilitynon-portable (multi-parameter type classes)
Stabilityexperimental
MaintainerMark Snyder, marks@ittc.ku.edu

Control.Monad.ErrorX.Class

Description

 

Documentation

class (Monad m, Index ix) => MonadErrorX ix e m | ix m -> e whereSource

Methods

throwErrorx :: ix -> e -> m aSource

catchErrorx :: ix -> m a -> (e -> m a) -> m aSource

Instances

(MonadErrorX ixe e m, Index ixe, Index ixr) => MonadErrorX ixe e (ReaderTX ixr r m) 
(MonadErrorX ixe e m, Index ixs) => MonadErrorX ixe e (StateTX ixs s m) 
(MonadErrorX ixe e m, Index ixe, Index ixs) => MonadErrorX ixe e (StateTX ixs s m) 
(Monoid w, Index ixe, Index ixw, MonadErrorX ixe e m) => MonadErrorX ixe e (WriterTX ixw w m) 
(Monoid w, MonadErrorX ixe e m, Index ixw) => MonadErrorX ixe e (WriterTX ixw w m) 
(Monoid w, MonadErrorX ixe e m, Index ix, Index ixe) => MonadErrorX ixe e (RWSTX ix r w s m) 
(Monoid w, Index ix, Error e, MonadErrorX ixe e m) => MonadErrorX ixe e (RWSTX ix r w s m)