module type DEFERRED_RESULT =sig
..end
With_deferred(Deferred)
.type 'a
deferred
include Pvem.ERROR_MONAD
val of_result : ('a, 'b) Result.t -> ('a, 'b) t
val catch_deferred : (unit -> 'a deferred) -> ('a, exn) t
val wrap_deferred : on_exn:(exn -> 'a) ->
(unit -> 'b deferred) -> ('b, 'a) t
val map_option : 'a option -> f:('a -> ('r, 'b) t) -> ('r option, 'b) t
val some : or_fail:'error -> 'a option -> ('a, 'error) t