Up

Module Deferred = Async_kernel.Deferred1

Signature

include Async_kernel.Deferred0
val sexp_of_t : ('a -> Sexplib.Sexp.t) -> 'a t -> Sexplib.Sexp.t
type 'a deferred = 'a t
include Core_kernel.Std.Invariant.S1 with type 'a t := 'a t
type 'a t
val invariant : 'a Invariant_intf.inv -> 'a t Invariant_intf.inv
val of_ivar : 'a Async_kernel.Ivar0.t -> 'a t
val create : ('a Async_kernel.Ivar0.t -> unit) -> 'a t
val peek : 'a t -> 'a option
val value_exn : 'a t -> 'a
val is_determined : _ t -> bool
val return : 'a -> 'a t
val upon : 'a t -> ('a -> unit) -> unit
val bind : 'a t -> ('a -> 'b t) -> 'b t
module Handler : sig .. end
val add_handler : 'a t -> ('a -> unit) -> Async_kernel.Execution_context.t -> 'a Handler.t
val remove_handler : 'a t -> 'a Handler.t -> unit
val never : unit -> 'a Async_kernel.Deferred0.t
module Monad_infix : sig .. end
val return : 'a -> 'a Async_kernel.Types.Deferred.t
module Let_syntax : sig .. end
val all : [>
| `Make_sure_to_define_all_elsewhere
]
val both : 'a t -> 'b t -> ('a * 'b) t
module Infix : sig .. end
val don't_wait_for : unit t -> unit
module Choice : sig .. end
type 'a choice = 'a Choice.t
module Unregister : sig .. end
val choice : 'a Async_kernel.Deferred0.t -> ('a -> 'b) -> 'b Choice.t
val choose_result : 'a Choice.t list -> 'a
val repeat_until_finished : 'a -> ('a -> [<
| `Finished of 'b
| `Repeat of 'a
] t) -> 'b t
val forever : 'a -> ('a -> 'a Async_kernel.Types.Deferred.t) -> unit
val sexp_of_how : how -> Sexplib.Sexp.t
module type Monad_sequence = Async_kernel.Monad_sequence.S with type 'a monad := 'a t
val fold : 'a list -> init:'b -> f:('b -> 'a -> 'b t) -> 'b t
val all_unit : unit t list -> unit Async_kernel.Types.Deferred.t