| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Bluefin.State
Description
This is an old interface and will be deprecated in the future. You are encouraged to use Bluefin.Capability.Modify instead.
Synopsis
- data State s (e :: Effects)
- evalState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) a) -> Eff es a
- runState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) a) -> Eff es (a, s)
- withState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) (s -> a)) -> Eff es a
- get :: forall (e :: Effects) (es :: Effects) s. e <: es => State s e -> Eff es s
- put :: forall (e :: Effects) (es :: Effects) s. e <: es => State s e -> s -> Eff es ()
- modify :: forall (e :: Effects) (es :: Effects) s. e <: es => State s e -> (s -> s) -> Eff es ()
Handle
Instances
| e <: es => OneWayCoercible (State s e :: Type) (State s es :: Type) | |
Defined in Bluefin.Internal Methods oneWayCoercibleImpl :: OneWayCoercibleD (State s e) (State s es) # | |
| Handle (State s) | |
Defined in Bluefin.Internal Methods handleImpl :: HandleD (State s) # | |
| CloneableHandle (State s) | |
Defined in Bluefin.Internal.CloneableHandle Methods cloneableHandleImpl :: CloneableHandleD (State s) | |
Handlers
evalState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) a) -> Eff es a #
runState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) a) -> Eff es (a, s) #
withState :: forall s (es :: Effects) a. s -> (forall (e :: Effects). State s e -> Eff (e :& es) (s -> a)) -> Eff es a #