Module Result.Error

The same as S except the monad type has two arguments. The second is always just passed through.

val (>>=) : ('e, 'a) t -> ('a -> ('e, 'b) t) -> ('e, 'b) t
val (>>|) : ('e, 'a) t -> ('a -> 'b) -> ('e, 'b) t
module Let_syntax : sig ... end
module Monad_infix : sig ... end

Same as Infix, except the monad type has two arguments. The second is always just passed through.

val bind : ('e, 'a) t -> f:('a -> ('e, 'b) t) -> ('e, 'b) t
val return : 'a -> (_, 'a) t
val map : ('e, 'a) t -> f:('a -> 'b) -> ('e, 'b) t
val join : ('e, ('e, 'a) t) t -> ('e, 'a) t
val ignore_m : ('e, _) t -> ('e, unit) t
val all : ('e, 'a) t list -> ('e, 'a list) t
val all_unit : ('e, unit) t list -> ('e, unit) t