mtlx-0.1.4: 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 Index ix => ErrorX ix a whereSource

Methods

noMsgx :: ix -> aSource

strMsgx :: ix -> String -> aSource

Instances

Index ix => ErrorX ix IOError 
Index ix => ErrorX ix String 

class (Monad m, ErrorX ix e, 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

Index ix => MonadErrorX ix IOError IO 
(Monad m, ErrorX ix1 e1, ErrorX ix2 e2, Index ix1, Index ix2, MonadErrorX ix1 e1 m) => MonadErrorX ix1 e1 (ErrorTX ix2 e2 m) 
(Monad m, ErrorX ix e, Index ix) => MonadErrorX ix e (ErrorTX ix e m) 
(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 ixe) => MonadErrorX ixe e (RWST r w s m) 
(Monoid w, MonadErrorX ixe e m, Index ix, Index ixe) => MonadErrorX ixe e (RWSTX ix r w s m) 
(Monoid w, MonadErrorX ixe e m, Index ix, Index ixe) => MonadErrorX ixe e (RWSTX ix r w s m)