package lwt

  1. Overview
  2. Docs
Promises and event-driven I/O

Install

Dune Dependency

Authors

Maintainers

Sources

4.2.1.tar.gz
sha256=6663be42156c7224c4d2c57842e669d99895dbeb87ebeb46deb90c5a0f0830c1
md5=9d648386ca0a9978eb9487de36b781cc

doc/lwt/Lwt_result/index.html

Module Lwt_result

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.

type (+'a, +'b) t = ('a, 'b) Result.result Lwt.t
val return : 'a -> ('a, _) t
val fail : 'b -> (_, 'b) t
val lift : ('a, 'b) Result.result -> ('a, 'b) t
val ok : 'a Lwt.t -> ('a, _) t
val catch : 'a Lwt.t -> ('a, exn) t

catch x behaves like return y if x evaluates to y, and like fail e if x raises e

val get_exn : ('a, exn) t -> 'a Lwt.t

get_exn is the opposite of catch: it unwraps the result type, returning the value in case of success, calls Lwt.fail in case of error.

val map : ('a -> 'b) -> ('a, 'e) t -> ('b, 'e) t
val map_err : ('e1 -> 'e2) -> ('a, 'e1) t -> ('a, 'e2) t
val bind : ('a, 'e) t -> ('a -> ('b, 'e) t) -> ('b, 'e) t
val bind_lwt : ('a, 'e) t -> ('a -> 'b Lwt.t) -> ('b, 'e) t
val bind_lwt_err : ('a, 'e1) t -> ('e1 -> 'e2 Lwt.t) -> ('a, 'e2) t
val bind_result : ('a, 'e) t -> ('a -> ('b, 'e) Result.result) -> ('b, 'e) t
module Infix : sig ... end
include module type of Infix
val (>|=) : ('a, 'e) t -> ('a -> 'b) -> ('b, 'e) t
val (>>=) : ('a, 'e) t -> ('a -> ('b, 'e) t) -> ('b, 'e) t
OCaml

Innovation. Community. Security.