Safe Haskell | None |
---|---|
Language | Haskell2010 |
Effectful.Reader.Static
Contents
Description
Support for access to a read only value of a particular type.
Synopsis
- data Reader r (a :: Type -> Type) b
- runReader :: forall r (es :: [(Type -> Type) -> Type -> Type]) a. HasCallStack => r -> Eff (Reader r ': es) a -> Eff es a
- withReader :: forall r1 r2 (es :: [(Type -> Type) -> Type -> Type]) a. HasCallStack => (r1 -> r2) -> Eff (Reader r2 ': es) a -> Eff (Reader r1 ': es) a
- ask :: forall r (es :: [Effect]). (HasCallStack, Reader r :> es) => Eff es r
- asks :: forall r (es :: [Effect]) a. (HasCallStack, Reader r :> es) => (r -> a) -> Eff es a
- local :: forall r (es :: [Effect]) a. (HasCallStack, Reader r :> es) => (r -> r) -> Eff es a -> Eff es a
Effect
data Reader r (a :: Type -> Type) b Source #
Provide access to a strict (WHNF), thread local, read only value of type
r
.
Instances
type DispatchOf (Reader r) Source # | |
Defined in Effectful.Reader.Static | |
newtype StaticRep (Reader r) Source # | |
Defined in Effectful.Reader.Static |
Handlers
Arguments
:: forall r (es :: [(Type -> Type) -> Type -> Type]) a. HasCallStack | |
=> r | The initial environment. |
-> Eff (Reader r ': es) a | |
-> Eff es a |
Run a Reader
effect with the given initial environment.
Arguments
:: forall r1 r2 (es :: [(Type -> Type) -> Type -> Type]) a. HasCallStack | |
=> (r1 -> r2) | The function to modify the environment. |
-> Eff (Reader r2 ': es) a | Computation to run in the modified environment. |
-> Eff (Reader r1 ': es) a |
Execute a computation in a modified environment.
Since: 1.1.0.0
Operations
ask :: forall r (es :: [Effect]). (HasCallStack, Reader r :> es) => Eff es r Source #
Fetch the value of the environment.
Arguments
:: forall r (es :: [Effect]) a. (HasCallStack, Reader r :> es) | |
=> (r -> a) | The function to apply to the environment. |
-> Eff es a |