| Portability | non-portable (multi-param classes, functional dependencies) |
|---|---|
| Stability | experimental |
| Maintainer | Mark Snyder, marks@ittc.ku.edu |
Control.Monad.ReaderX
Description
- module Control.Monad.ReaderX.Class
- data Index ix => ReaderX ix r a = ReaderX ix (r -> a)
- runReaderX :: Index ix => ix -> ReaderX ix r a -> r -> a
- mapReaderx :: Index ix => ix -> (a -> b) -> ReaderX ix r a -> ReaderX ix r b
- withReaderx :: Index ix => ix -> (r' -> r) -> ReaderX ix r a -> ReaderX ix r' a
- data Index ix => ReaderTX ix r m a = ReaderTX ix (r -> m a)
- runReaderTX :: Index ix => ix -> ReaderTX ix r m a -> r -> m a
- mapReaderTX :: Index ix => ix -> (m a -> n b) -> ReaderTX ix w m a -> ReaderTX ix w n b
- withReaderTX :: Index ix => ix -> (r' -> r) -> ReaderTX ix r m a -> ReaderTX ix r' m a
- module Control.Monad
- module Control.Monad.Fix
- module Control.Monad.Trans
- module Control.Monad.Index
Documentation
module Control.Monad.ReaderX.Class
runReaderX :: Index ix => ix -> ReaderX ix r a -> r -> aSource
mapReaderx :: Index ix => ix -> (a -> b) -> ReaderX ix r a -> ReaderX ix r bSource
withReaderx :: Index ix => ix -> (r' -> r) -> ReaderX ix r a -> ReaderX ix r' aSource
A more general version of local.
data Index ix => ReaderTX ix r m a Source
The reader monad transformer. Can be used to add environment reading functionality to other monads.
Constructors
| ReaderTX ix (r -> m a) |
Instances
| (Index ix1, Index ix2, MonadReaderX ix1 r1 m) => MonadReaderX ix1 r1 (ReaderTX ix2 r2 m) | |
| (Monad m, Index ix) => MonadReaderX ix r (ReaderTX ix r m) | |
| (Index ixr, Index ixs, MonadStateX ixs s m) => MonadStateX ixs s (ReaderTX ixr r m) | |
| (Index ixr, MonadWriterX ixw w m) => MonadWriterX ixw w (ReaderTX ixr r m) | |
| (MonadReader r m, Index ix) => MonadReader r (ReaderTX ix r2 m) | |
| (Index ix, MonadState s m) => MonadState s (ReaderTX ix r m) | |
| (MonadError e m, Index ix) => MonadError e (ReaderTX ix r m) | |
| (Index ix, MonadWriter w m) => MonadWriter w (ReaderTX ix r m) | |
| Index ix => MonadTrans (ReaderTX ix r) | |
| (Monad m, Index ix) => Monad (ReaderTX ix r m) | |
| (Monad m, Index ix) => Functor (ReaderTX ix r m) | |
| (MonadFix m, Index ix) => MonadFix (ReaderTX ix r m) | |
| (MonadPlus m, Index ix) => MonadPlus (ReaderTX ix r m) | |
| (MonadCont m, Index ix) => MonadCont (ReaderTX ix r m) | |
| (MonadIO m, Index ix) => MonadIO (ReaderTX ix r m) |
runReaderTX :: Index ix => ix -> ReaderTX ix r m a -> r -> m aSource
mapReaderTX :: Index ix => ix -> (m a -> n b) -> ReaderTX ix w m a -> ReaderTX ix w n bSource
withReaderTX :: Index ix => ix -> (r' -> r) -> ReaderTX ix r m a -> ReaderTX ix r' m aSource
module Control.Monad
module Control.Monad.Fix
module Control.Monad.Trans
module Control.Monad.Index