Module Async_kernel__.Deferred1
module Scheduler = Async_kernel__.Scheduler1include Async_kernel__.Deferred0
type +'a t= 'a Async_kernel__.Types.Deferred.t
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
type 'a deferred= 'a t
include Core_kernel.Invariant.S1 with type 'a t := 'a t
val invariant : 'a Base__.Invariant_intf.inv -> 'a t Base__.Invariant_intf.inv
val of_ivar : 'a Async_kernel__.Ivar0.t -> 'a tval create : ('a Async_kernel__.Ivar0.t -> unit) -> 'a tval peek : 'a t -> 'a optionval value_exn : 'a t -> 'aval is_determined : _ t -> boolval return : 'a -> 'a tval upon : 'a t -> ('a -> unit) -> unitval bind : 'a t -> f:('a -> 'b t) -> 'b t
module Handler = Async_kernel__.Deferred0.Handlerval add_handler : 'a t -> ('a -> unit) -> Async_kernel.Execution_context.t -> 'a Handler.tval remove_handler : 'a t -> 'a Handler.t -> unit
val never : unit -> 'a Async_kernel__.Deferred0.t
module M : sig ... endinclude module type of sig ... end with module Let_syntax := M.Let_syntax
val (>>=) : 'a Async_kernel__.Types.Deferred.t -> ('a -> 'b Async_kernel__.Types.Deferred.t) -> 'b Async_kernel__.Types.Deferred.tval (>>|) : 'a Async_kernel__.Types.Deferred.t -> ('a -> 'b) -> 'b Async_kernel__.Types.Deferred.t
module Monad_infix = M.Monad_infixval bind : 'a Async_kernel__.Types.Deferred.t -> f:('a -> 'b Async_kernel__.Types.Deferred.t) -> 'b Async_kernel__.Types.Deferred.tval return : 'a -> 'a Async_kernel__.Types.Deferred.tval map : 'a Async_kernel__.Types.Deferred.t -> f:('a -> 'b) -> 'b Async_kernel__.Types.Deferred.tval join : 'a Async_kernel__.Types.Deferred.t Async_kernel__.Types.Deferred.t -> 'a Async_kernel__.Types.Deferred.tval ignore_m : 'a Async_kernel__.Types.Deferred.t -> unit Async_kernel__.Types.Deferred.tval all : 'a Async_kernel__.Types.Deferred.t list -> 'a list Async_kernel__.Types.Deferred.tval all_unit : unit Async_kernel__.Types.Deferred.t list -> unit Async_kernel__.Types.Deferred.tval all_ignore : unit Async_kernel__.Types.Deferred.t list -> unit Async_kernel__.Types.Deferred.t
module Let_syntax = M.Let_syntaxval return : 'a -> 'a Async_kernel__.Deferred0.t
module Let_syntax : sig ... endval all : [> `Make_sure_to_define_all_elsewhere ]val unit : unit Async_kernel__.Deferred0.tval ignore : 'a Async_kernel__.Types.Deferred.t -> unit Async_kernel__.Types.Deferred.tval both : 'a t -> 'b t -> ('a * 'b) t
module Infix : sig ... endval don't_wait_for : unit t -> unit
module Choice : sig ... endtype 'a choice= 'a Choice.t
module Unregister : sig ... endval choice : 'a Async_kernel__.Deferred0.t -> ('a -> 'b) -> 'b Choice.tval enabled : 'a Choice.t Core_kernel.List.t -> (unit -> 'a Core_kernel.List.t) Async_kernel__.Deferred0.tval choose_result : 'a Choice.t list -> 'aval choose : 'a Choice.t Core_kernel.List.t -> 'a Async_kernel__.Deferred0.tval any_f : 'a Async_kernel__.Deferred0.t Core_kernel.List.t -> ('a -> 'b) -> 'b Async_kernel__.Deferred0.tval any : 'a Async_kernel__.Deferred0.t Core_kernel.List.t -> 'a Async_kernel__.Deferred0.tval any_unit : unit Async_kernel__.Deferred0.t Core_kernel.List.t -> unit Async_kernel__.Deferred0.tval for_ : int -> to_:int -> do_:(int -> unit Async_kernel__.Types.Deferred.t) -> unit Async_kernel__.Deferred0.tval repeat_until_finished : 'a -> ('a -> [< `Finished of 'b | `Repeat of 'a ] t) -> 'b tval forever : 'a -> ('a -> 'a Async_kernel__.Types.Deferred.t) -> unit
type how= Async_kernel.Monad_sequence.how
val sexp_of_how : how -> Ppx_sexp_conv_lib.Sexp.t
module type Monad_sequence : Async_kernel.Monad_sequence.S with type 'a monad := 'a tval fold : 'a list -> init:'b -> f:('b -> 'a -> 'b t) -> 'b tval seqmap : 'a list -> f:('a -> 'b Async_kernel__.Types.Deferred.t) -> 'b Core_kernel.List.t Async_kernel__.Types.Deferred.tval all : 'a Async_kernel__.Types.Deferred.t list -> 'a Core_kernel.List.t Async_kernel__.Types.Deferred.tval all_unit : unit t list -> unit tval all_ignore : unit t list -> unit tval ok : 'a Async_kernel__.Types.Deferred.t -> ('a, 'b) Core_kernel._result Async_kernel__.Types.Deferred.t