| Haskell Hierarchical Libraries (mtl package) | Source code | Contents | Index

Control.Monad.Reader.Class

Portability | non-portable (multi-param classes, functional dependencies)
Stability | experimental
Maintainer | libraries@haskell.org

Description
MonadReader class. Inspired by the paper Functional Programming with Overloading and Higher-Order Polymorphism, Mark P Jones (http://www.cse.ogi.edu/~mpj/) Advanced School of Functional Programming, 1995.
Documentation
class Monad m => MonadReader r m | m -> r where

Methods

ask :: m r
local :: (r -> r) -> m a -> m a

Instances

MonadReader r (Reader r)
MonadReader r ((->) r)
MonadReader s m => MonadReader s (ListT m)
(Error e, MonadReader r m) => MonadReader r (ErrorT e m)
Monad m => MonadReader r (ReaderT r m)
MonadReader r m => MonadReader r (StateT s m)
MonadReader r m => MonadReader r (StateT s m)
(Monoid w, MonadReader r m) => MonadReader r (WriterT w m)
(Monoid w, MonadReader r m) => MonadReader r (WriterT w m)
MonadReader r' m => MonadReader r' (ContT r m)
Monoid w => MonadReader r (RWS r w s)
Monoid w => MonadReader r (RWS r w s)
(Monoid w, Monad m) => MonadReader r (RWST r w s m)
(Monoid w, Monad m) => MonadReader r (RWST r w s m)

asks :: MonadReader r m => (r -> a) -> m a
Produced by Haddock version 0.8