module MakeStateMonad: functor (T : sig type s end) -> StateMonad with type 'a t = T.s -> 'a * T.s
functor (
T
:
sig
type s
end) -> StateMonad with type 'a t = T.s -> 'a * T.s
end
) ->
StateMonad
with type 'a t = T.s -> 'a * T.s
sig type s end
include GapiMonad.Monad
val get : 'a -> 'a * 'a
'a -> 'a * 'a
val put : 'a -> 'b -> unit * 'a
'a -> 'b -> unit * 'a