module Iter: sig
.. end
Astract iterators.
type 'a
t
val next : 'a t -> 'a option
get the next element of the iterator
val next_exn : 'a t -> 'a
val progress : 'a t -> float option
val progress_string : float option -> string
val i : 'a t -> f:('a -> unit) -> unit
val concat : 'a t list -> 'a t
val reduce : 'a t -> init:'b -> f:('b -> 'a -> 'b) -> 'b
val map : 'a t -> f:('a -> 'b) -> 'b t
val fold : 'a t -> init:'b -> f:('b -> 'a -> 'b) -> 'b
val unfold : init:'a -> f:('a -> 'b * 'a) -> stop:'a -> 'b t
val find : 'a t -> f:('a -> bool) -> 'a
val filter : 'a t -> f:('a -> bool) -> 'a t
val for_all : 'a t -> f:('a -> bool) -> bool
val exists : 'a t -> f:('a -> bool) -> bool
val t : ?progress:(unit -> float option) -> (unit -> 'a option) -> 'a t
val empty : 'a t
val of_opt : 'a option -> 'a t
val of_list : 'a list -> 'a t
val to_list : 'a t -> f:('a -> 'b) -> 'b list
val to_list_opt : 'a t -> f:('a -> 'b option) -> 'b list
val of_array : 'a array -> 'a t
val to_array : 'a t -> f:('a -> 'b) -> 'b array
val to_array_opt : 'a t -> f:('a -> 'b option) -> 'b array
val channel_progress : ?total:int64 -> Pervasives.in_channel -> unit -> float option
val of_channel : ?total:int64 ->
Pervasives.in_channel -> f:(Pervasives.in_channel -> 'a) -> 'a t
val channel : Pervasives.in_channel -> f:(Pervasives.in_channel -> unit) -> unit