Module Monad.MonadReaderStateResult

Parameters

module X : sig ... end

Signature

include MonadReaderStateResult with type 'a m = (X.global * X.local) -> ('a, exn) Stdlib.result * X.global with type global := X.global with type local := X.local
include S with type 'a m = (X.global * X.local) -> ('a, exn) Stdlib.result * X.global
type 'a m = (X.global * X.local) -> ('a, exn) Stdlib.result * X.global
val ret : 'a -> 'a m
val bind : 'a m -> ('a -> 'b m) -> 'b m
val read : X.local m
val scope : (X.local -> X.local) -> 'a m -> 'a m
val get : X.global m
val set : X.global -> unit m
val modify : (X.global -> X.global) -> unit m
val run : X.global -> X.local -> 'a m -> ('a, exn) Stdlib.result
val run_exn : X.global -> X.local -> 'a m -> 'a
val throw : exn -> 'a m
val trap : 'a m -> ('a, exn) Stdlib.result m