State

newtype State s a Source #

Constructors

Fields

Defined in State

Methods

(>>=) :: State s a -> (a -> State s b) -> State s b Source #

(>>) :: State s a -> State s b -> State s b Source #

return :: a -> State s a Source #

fmap :: (a -> b) -> State s a -> State s b Source #

(<$) :: a -> State s b -> State s a Source #

pure :: a -> State s a Source #

(<*>) :: State s (a -> b) -> State s a -> State s b Source #

liftA2 :: (a -> b -> c) -> State s a -> State s b -> State s c Source #

(*>) :: State s a -> State s b -> State s b Source #

(<*) :: State s a -> State s b -> State s a Source #

get :: State s s Source #

gets :: (s -> a) -> State s a Source #

put :: s -> State s () Source #

modify :: (s -> s) -> State s () Source #

evalState :: State s a -> s -> a Source #

execState :: State s a -> s -> s Source #

runState :: State s a -> s -> (a, s) Source #