Module

Run.State

#State

data State s a

Constructors

Instances

#STATE

type STATE s r = (state :: State s | r)

#_state

_state :: Proxy "state"

#liftState

liftState :: forall s a r. State s a -> Run ((STATE s) + r) a

#liftStateAt

liftStateAt :: forall proxy q sym s a r. IsSymbol sym => Cons sym (State s) q r => proxy sym -> State s a -> Run r a

#modify

modify :: forall s r. (s -> s) -> Run ((STATE s) + r) Unit

#modifyAt

modifyAt :: forall proxy q sym s r. IsSymbol sym => Cons sym (State s) q r => proxy sym -> (s -> s) -> Run r Unit

#put

put :: forall s r. s -> Run ((STATE s) + r) Unit

#putAt

putAt :: forall proxy q sym s r. IsSymbol sym => Cons sym (State s) q r => proxy sym -> s -> Run r Unit

#get

get :: forall s r. Run ((STATE s) + r) s

#getAt

getAt :: forall proxy q sym s r. IsSymbol sym => Cons sym (State s) q r => proxy sym -> Run r s

#gets

gets :: forall s t r. (s -> t) -> Run ((STATE s) + r) t

#getsAt

getsAt :: forall proxy q sym s t r. IsSymbol sym => Cons sym (State s) q r => proxy sym -> (s -> t) -> Run r t

#runState

runState :: forall s r a. s -> Run ((STATE s) + r) a -> Run r (Tuple s a)

#runStateAt

runStateAt :: forall proxy q sym s r a. IsSymbol sym => Cons sym (State s) q r => proxy sym -> s -> Run r a -> Run q (Tuple s a)

#evalState

evalState :: forall s r a. s -> Run ((STATE s) + r) a -> Run r a

#evalStateAt

evalStateAt :: forall proxy q sym s r a. IsSymbol sym => Cons sym (State s) q r => proxy sym -> s -> Run r a -> Run q a

#execState

execState :: forall s r a. s -> Run ((STATE s) + r) a -> Run r s

#execStateAt

execStateAt :: forall proxy q sym s r a. IsSymbol sym => Cons sym (State s) q r => proxy sym -> s -> Run r a -> Run q s

Modules