Module

Run.Reader

Package
purescript-run
Repository
natefaubion/purescript-run

#Reader Source

newtype Reader e a

Constructors

Instances

#READER Source

type READER :: Type -> Row (Type -> Type) -> Row (Type -> Type)type READER e r = (reader :: Reader e | r)

#_reader Source

_reader :: Proxy "reader"

#liftReader Source

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

#liftReaderAt Source

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

#ask Source

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

#asks Source

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

#askAt Source

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

#asksAt Source

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

#local Source

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

#localAt Source

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

#runReader Source

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

#runReaderAt Source

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