Module

Run.Reader

#Reader

newtype Reader e a

Constructors

Instances

#READER

type READER e r = (reader :: Reader e | r)

#_reader

_reader :: Proxy "reader"

#liftReader

liftReader :: forall e a r. Reader e a -> Run ((READER e) + r) a

#liftReaderAt

liftReaderAt :: forall proxy t e a r s. IsSymbol s => Cons s (Reader e) t r => proxy s -> Reader e a -> Run r a

#ask

ask :: forall e r. Run ((READER e) + r) e

#asks

asks :: forall e r a. (e -> a) -> Run ((READER e) + r) a

#askAt

askAt :: forall proxy t e r s. IsSymbol s => Cons s (Reader e) t r => proxy s -> Run r e

#asksAt

asksAt :: forall proxy t e r s a. IsSymbol s => Cons s (Reader e) t r => proxy s -> (e -> a) -> Run r a

#local

local :: forall e a r. (e -> e) -> Run ((READER e) + r) a -> Run ((READER e) + r) a

#localAt

localAt :: forall proxy t e a r s. IsSymbol s => Cons s (Reader e) t r => proxy s -> (e -> e) -> Run r a -> Run r a

#runReader

runReader :: forall e a r. e -> Run ((READER e) + r) a -> Run r a

#runReaderAt

runReaderAt :: forall proxy t e a r s. IsSymbol s => Cons s (Reader e) t r => proxy s -> e -> Run r a -> Run t a

Modules