ether-0.1.0.0: Monad transformers and classes

Safe HaskellNone
LanguageHaskell2010

Control.Monad.Ether.Reader.Class

Description

Synopsis

Documentation

class Monad m => MonadReader tag r m | m tag -> r where Source

Minimal complete definition

(ask | reader), local

Methods

ask :: proxy tag -> m r Source

Retrieves the monad environment.

local Source

Arguments

:: proxy tag 
-> (r -> r)

The function to modify the environment.

-> m a

Reader to run in the modified environment.

-> m a 

Executes a computation in a modified environment.

reader Source

Arguments

:: proxy tag 
-> (r -> a)

The selector function to apply to the environment.

-> m a 

Retrieves a function of the current environment.

Instances

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

asks Source

Arguments

:: MonadReader tag r m 
=> proxy tag 
-> (r -> a)

The selector function to apply to the environment.

-> m a 

Retrieves a function of the current environment.