Module Lwt_resultSource
Explicit error handling
This module provides helpers for values of type ('a, 'b) result Lwt.t. The module is experimental and may change in the future.
catch x behaves like return y if x () evaluates to y, and like fail e if x () raises e
Source
val bind_error :
('a, 'e1) Lwt_result.t ->
('e1 -> ('a, 'e2) Lwt_result.t) ->
('a, 'e2) Lwt_result.tSource
val bind_result :
('a, 'e) Lwt_result.t ->
('a -> ('b, 'e) Stdlib.result) ->
('b, 'e) Lwt_result.tLwt.both p_1 p_2 returns a promise that is pending until both promises p_1 and p_2 become resolved. If only p_1 is Error e, the promise is resolved with Error e, If only p_2 is Error e, the promise is resolved with Error e, If both p_1 and p_2 resolve with Error _, the promise is resolved with the error that occurred first.
iter f r is f v if r is a promise resolved with Ok v, and Lwt.return_unit otherwise.
iter_error f r is f v if r is a promise resolved with Error v, and Lwt.return_unit otherwise.