Module Deferred.List

include Async_kernel.Monad_sequence.S with type 'a monad := 'a t with type 'a t := 'a list
val foldi : 'a list -> init:'b -> f:(int -> 'b -> 'a -> 'b t) -> 'b t
val fold : 'a list -> init:'b -> f:('b -> 'a -> 'b t) -> 'b t
val find : 'a list -> f:('a -> bool t) -> 'a option t
val findi : 'a list -> f:(int -> 'a -> bool t) -> (int * 'a) option t
val find_map : 'a list -> f:('a -> 'b option t) -> 'b option t
val find_mapi : 'a list -> f:(int -> 'a -> 'b option t) -> 'b option t
val exists : 'a list -> f:('a -> bool t) -> bool t
val existsi : 'a list -> f:(int -> 'a -> bool t) -> bool t
val for_all : 'a list -> f:('a -> bool t) -> bool t
val for_alli : 'a list -> f:(int -> 'a -> bool t) -> bool t
val all : 'a t list -> 'a list t
val all_unit : unit t list -> unit t

Deferred iterators

val init : how:Async_kernel.Monad_sequence.how -> int -> f:(int -> 'a t) -> 'a list t
val iter : how:Async_kernel.Monad_sequence.how -> 'a list -> f:('a -> unit t) -> unit t
val iteri : how:Async_kernel.Monad_sequence.how -> 'a list -> f:(int -> 'a -> unit t) -> unit t
val map : how:Async_kernel.Monad_sequence.how -> 'a list -> f:('a -> 'b t) -> 'b list t
val mapi : how:Async_kernel.Monad_sequence.how -> 'a list -> f:(int -> 'a -> 'b t) -> 'b list t
val filter : how:Async_kernel.Monad_sequence.how -> 'a list -> f:('a -> bool t) -> 'a list t
val filteri : how:Async_kernel.Monad_sequence.how -> 'a list -> f:(int -> 'a -> bool t) -> 'a list t
val filter_map : how:Async_kernel.Monad_sequence.how -> 'a list -> f:('a -> 'b option t) -> 'b list t
val filter_mapi : how:Async_kernel.Monad_sequence.how -> 'a list -> f:(int -> 'a -> 'b option t) -> 'b list t
val concat_map : how:Async_kernel.Monad_sequence.how -> 'a list -> f:('a -> 'b list t) -> 'b list t
val concat_mapi : how:Async_kernel.Monad_sequence.how -> 'a list -> f:(int -> 'a -> 'b list t) -> 'b list t
val fold_until : 'a list -> init:'acc -> f:('acc -> 'a -> ('acc, 'final) Core.Continue_or_stop.t t) -> finish:('acc -> 'final t) -> 'final t