package ecaml

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type ('a, 'b) t =
  1. | Sync : ('a, 'a) t
  2. | Async : ('a, 'a Async_kernel.Deferred.t) t
val sexp_of_t : ('a -> Sexplib0.Sexp.t) -> ('b -> Sexplib0.Sexp.t) -> ('a, 'b) t -> Sexplib0.Sexp.t
val return : ('a, 'b) t -> 'a -> 'b
val protect : ?allow_in_background:bool -> Core.Source_code_position.t -> (_, 'a) t -> f:(unit -> 'a) -> finally:(unit -> unit) -> 'a

See Background for the invariants that must be maintained when running an async job in the background.