val (>>=) : ('a, 'e) t -> ('a0 -> ('b, 'e0) t) -> ('b0, 'e1) tval (>>|) : ('a, 'e) t -> ('a0 -> 'b) -> ('b0, 'e0) tval bind : ('a, 'e) t -> f:('a0 -> ('b, 'e0) t) -> ('b0, 'e1) tval return : 'a -> ('a0, 'b) tval map : ('a, 'e) t -> f:('a0 -> 'b) -> ('b0, 'e0) tval join : (('a, 'e) t, 'e0) t -> ('a0, 'e1) tval ignore_m : ('a, 'e) t -> (unit, 'e0) tval all : ('a, 'e) t list -> ('a0 list, 'e0) tval all_unit : (unit, 'e) t list -> (unit, 'e0) t