| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Bluefin.Capability.Modify
Synopsis
- data Modify s (e :: Effects)
- evalModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) a) -> Eff es a
- runModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) a) -> Eff es (a, s)
- withModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) (s -> a)) -> Eff es a
- get :: forall (e :: Effects) (es :: Effects) s. e <: es => Modify s e -> Eff es s
- put :: forall (e :: Effects) (es :: Effects) s. e <: es => Modify s e -> s -> Eff es ()
- modify :: forall (e :: Effects) (es :: Effects) s. e <: es => Modify s e -> (s -> s) -> Eff es ()
Capability
data Modify s (e :: Effects) #
Instances
| e <: es => OneWayCoercible (Modify s e :: Type) (Modify s es :: Type) | |
Defined in Bluefin.Internal Methods oneWayCoercibleImpl :: OneWayCoercibleD (Modify s e) (Modify s es) # | |
| Handle (Modify s) | |
Defined in Bluefin.Internal Methods handleImpl :: HandleD (Modify s) # | |
| CloneableHandle (Modify s) | |
Defined in Bluefin.Internal.CloneableHandle Methods cloneableHandleImpl :: CloneableHandleD (Modify s) | |
Handlers
evalModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) a) -> Eff es a #
runModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) a) -> Eff es (a, s) #
withModify :: forall s (es :: Effects) a. s -> (forall (e :: Effects). Modify s e -> Eff (e :& es) (s -> a)) -> Eff es a #