module Iterator:sig..end
type'aseq ='a Lazy_sequence.t
type 'a t
val create : 'a seq -> 'a tval close : 'a t -> unitval with_sequence : 'a seq -> f:('a t -> 'b) -> 'bval has_next : 'a t -> boolval peek : 'a t -> 'a optionval get : 'a t -> 'a optionval get_exn : 'a t -> 'aval iter : 'a t -> f:('a -> unit) -> unitval fold : 'a t ->
init:'accum -> f:('accum -> 'a -> 'accum) -> 'accumval copy : 'a t -> 'a t