sig
type ('a, 'b) t = ('a, 'b) Result.result Lwt.t
val return : 'a -> ('a, 'b) Lwt_result.t
val fail : 'b -> ('a, 'b) Lwt_result.t
val lift : ('a, 'b) Result.result -> ('a, 'b) Lwt_result.t
val ok : 'a Lwt.t -> ('a, 'b) Lwt_result.t
val catch : 'a Lwt.t -> ('a, exn) Lwt_result.t
val get_exn : ('a, exn) Lwt_result.t -> 'a Lwt.t
val map : ('a -> 'b) -> ('a, 'e) Lwt_result.t -> ('b, 'e) Lwt_result.t
val map_err :
('e1 -> 'e2) -> ('a, 'e1) Lwt_result.t -> ('a, 'e2) Lwt_result.t
val bind :
('a, 'e) Lwt_result.t ->
('a -> ('b, 'e) Lwt_result.t) -> ('b, 'e) Lwt_result.t
val bind_lwt :
('a, 'e) Lwt_result.t -> ('a -> 'b Lwt.t) -> ('b, 'e) Lwt_result.t
val bind_lwt_err :
('a, 'e1) Lwt_result.t -> ('e1 -> 'e2 Lwt.t) -> ('a, 'e2) Lwt_result.t
val bind_result :
('a, 'e) Lwt_result.t ->
('a -> ('b, 'e) Result.result) -> ('b, 'e) Lwt_result.t
module Infix :
sig
val ( >|= ) :
('a, 'e) Lwt_result.t -> ('a -> 'b) -> ('b, 'e) Lwt_result.t
val ( >>= ) :
('a, 'e) Lwt_result.t ->
('a -> ('b, 'e) Lwt_result.t) -> ('b, 'e) Lwt_result.t
end
val ( >|= ) : ('a, 'e) t -> ('a -> 'b) -> ('b, 'e) t
val ( >>= ) : ('a, 'e) t -> ('a -> ('b, 'e) t) -> ('b, 'e) t
end