| Copyright | (c) Andy Gill 2001, (c) Oregon Graduate Institute of Science and Technology 2001, (c) Jeff Newbern 2003-2007, (c) Andriy Palamarchuk 2007, (C) 2015 KONISHI Yohsuke, |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | ocean0yohsuke@gmail.com |
| Stability | experimental |
| Portability | --- |
| Safe Haskell | Safe |
| Language | Haskell2010 |
DeepControl.Monad.Trans.Reader
Description
This module extended Reader Monad of mtl(monad-transformer-library).
- module Control.Monad.Reader
- newtype ReaderT2 r m1 m2 a = ReaderT2 {
- runReaderT2 :: r -> m1 (m2 a)
- mapReaderT2 :: (m1 (m2 a) -> n1 (n2 b)) -> ReaderT2 r m1 m2 a -> ReaderT2 r n1 n2 b
- liftCatch2 :: Catch2 e m1 m2 a -> Catch e (ReaderT2 r m1 m2) a
- newtype ReaderT3 r m1 m2 m3 a = ReaderT3 {
- runReaderT3 :: r -> m1 (m2 (m3 a))
- mapReaderT3 :: (m1 (m2 (m3 a)) -> n1 (n2 (n3 b))) -> ReaderT3 r m1 m2 m3 a -> ReaderT3 r n1 n2 n3 b
- liftCatch3 :: Catch3 e m1 m2 m3 a -> Catch e (ReaderT3 r m1 m2 m3) a
Documentation
module Control.Monad.Reader
Level-2
newtype ReaderT2 r m1 m2 a Source
Constructors
| ReaderT2 | |
Fields
| |
Instances
| (Monad m1, Monad2 m2) => MonadReader r (ReaderT2 r m1 m2) Source | |
| MonadTransCover2 (ReaderT2 r) Source | |
| MonadTransFold2 (ReaderT2 r) Source | |
| MonadTrans2Down (ReaderT2 r) Source | |
| MonadTrans2 (ReaderT2 r) Source | |
| (Monad m1, Monad2 m2) => Monad (ReaderT2 r m1 m2) Source | |
| (Functor m1, Functor m2) => Functor (ReaderT2 r m1 m2) Source | |
| (Monad m1, Monad2 m2) => Applicative (ReaderT2 s m1 m2) Source | |
| (Alternative m1, Alternative m2, Monad m1, Monad2 m2) => Alternative (ReaderT2 r m1 m2) Source | |
| (MonadPlus m1, MonadPlus m2, Monad m1, Monad2 m2) => MonadPlus (ReaderT2 r m1 m2) Source | |
| (MonadIO m1, Monad m1, Monad2 m2) => MonadIO (ReaderT2 r m1 m2) Source | |
| type Trans2Down (ReaderT2 r) = ReaderT r Source |
mapReaderT2 :: (m1 (m2 a) -> n1 (n2 b)) -> ReaderT2 r m1 m2 a -> ReaderT2 r n1 n2 b Source
lift function
liftCatch2 :: Catch2 e m1 m2 a -> Catch e (ReaderT2 r m1 m2) a Source
Level-3
newtype ReaderT3 r m1 m2 m3 a Source
Constructors
| ReaderT3 | |
Fields
| |
Instances
| (Monad m1, Monad2 m2, Monad3 m3) => MonadReader r (ReaderT3 r m1 m2 m3) Source | |
| MonadTransCover3 (ReaderT3 r) Source | |
| MonadTransFold3 (ReaderT3 r) Source | |
| MonadTrans3Down (ReaderT3 r) Source | |
| MonadTrans3 (ReaderT3 r) Source | |
| (Monad m1, Monad2 m2, Monad3 m3) => Monad (ReaderT3 r m1 m2 m3) Source | |
| (Functor m1, Functor m2, Functor m3) => Functor (ReaderT3 r m1 m2 m3) Source | |
| (Monad m1, Monad2 m2, Monad3 m3) => Applicative (ReaderT3 s m1 m2 m3) Source | |
| (Alternative m1, Alternative m2, Alternative m3, Monad m1, Monad2 m2, Monad3 m3) => Alternative (ReaderT3 r m1 m2 m3) Source | |
| (MonadPlus m1, MonadPlus m2, MonadPlus m3, Monad m1, Monad2 m2, Monad3 m3) => MonadPlus (ReaderT3 r m1 m2 m3) Source | |
| (MonadIO m1, Monad m1, Monad2 m2, Monad3 m3) => MonadIO (ReaderT3 r m1 m2 m3) Source | |
| type Trans3Down (ReaderT3 r) = ReaderT2 r Source |
mapReaderT3 :: (m1 (m2 (m3 a)) -> n1 (n2 (n3 b))) -> ReaderT3 r m1 m2 m3 a -> ReaderT3 r n1 n2 n3 b Source
lift function
liftCatch3 :: Catch3 e m1 m2 m3 a -> Catch e (ReaderT3 r m1 m2 m3) a Source