deepcontrol-0.4.1.0: DeepControl/Monad/Trans/Reader.hs
{-|
Module : DeepControl.Monad.Trans.Reader
Description : Extension for mtl's Contrl.Monad.Reader.
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 : ---
This module extended Reader monad of mtl(monad-transformer-library).
-}
{-# LANGUAGE TypeFamilies #-}
module DeepControl.Monad.Trans.Reader (
module Control.Monad.Reader,
) where
import DeepControl.Applicative
import DeepControl.Monad.Trans
import Control.Monad.Reader
----------------------------------------------------------------------
-- Level-1
instance MonadTransDown (ReaderT r) where
type TransDown (ReaderT r) = Reader r
instance MonadTransCover (ReaderT s) where
(|*|) = ReaderT . ((*:)|$>) . runReader