Module Monad.Option
include Ocaml_utils.Misc_stdlib.Monad.S2
with type ('a, _) t := 'a Ocaml_utils.Misc_stdlib.Monad.Option.t
val bind :
'a Ocaml_utils.Misc_stdlib.Monad.Option.t ->
('a -> 'b Ocaml_utils.Misc_stdlib.Monad.Option.t) ->
'b Ocaml_utils.Misc_stdlib.Monad.Option.tval (>>=) :
'a Ocaml_utils.Misc_stdlib.Monad.Option.t ->
('a -> 'b Ocaml_utils.Misc_stdlib.Monad.Option.t) ->
'b Ocaml_utils.Misc_stdlib.Monad.Option.t>>= is a synonym for bind
val return : 'a -> 'a Ocaml_utils.Misc_stdlib.Monad.Option.treturn v returns the (trivial) computation that returns v.
val map :
('a -> 'b) ->
'a Ocaml_utils.Misc_stdlib.Monad.Option.t ->
'b Ocaml_utils.Misc_stdlib.Monad.Option.tval join :
'a Ocaml_utils.Misc_stdlib.Monad.Option.t
Ocaml_utils.Misc_stdlib.Monad.Option.t ->
'a Ocaml_utils.Misc_stdlib.Monad.Option.tjoin t is t >>= (fun t' -> t').
val both :
'a Ocaml_utils.Misc_stdlib.Monad.Option.t ->
'b Ocaml_utils.Misc_stdlib.Monad.Option.t ->
('a * 'b) Ocaml_utils.Misc_stdlib.Monad.Option.tval ignore_m :
_ Ocaml_utils.Misc_stdlib.Monad.Option.t ->
unit Ocaml_utils.Misc_stdlib.Monad.Option.tignore_m t is map (fun _ -> ()) t.
val all :
'a Ocaml_utils.Misc_stdlib.Monad.Option.t list ->
'a list Ocaml_utils.Misc_stdlib.Monad.Option.tval all_unit :
unit Ocaml_utils.Misc_stdlib.Monad.Option.t list ->
unit Ocaml_utils.Misc_stdlib.Monad.Option.tLike all, but ensures that every monadic value in the list produces a unit value, all of which are discarded rather than being collected into a list.
module Syntax : sig ... endAs described at https://ocaml.org/manual/latest/bindingops.html