`sig
type 'a seq = 'a Lazy_sequence.t
type 'a t
val create : 'a Lazy_sequence.Iterator.seq -> 'a Lazy_sequence.Iterator.t
val close : 'a Lazy_sequence.Iterator.t -> unit
val with_sequence :
'a Lazy_sequence.Iterator.seq ->
f:('a Lazy_sequence.Iterator.t -> 'b) -> 'b
val has_next : 'a Lazy_sequence.Iterator.t -> bool
val peek : 'a Lazy_sequence.Iterator.t -> 'a option
val get : 'a Lazy_sequence.Iterator.t -> 'a option
val get_exn : 'a Lazy_sequence.Iterator.t -> 'a
val iter : 'a Lazy_sequence.Iterator.t -> f:('a -> unit) -> unit
val fold :
'a Lazy_sequence.Iterator.t ->
init:'accum -> f:('accum -> 'a -> 'accum) -> 'accum
val copy : 'a Lazy_sequence.Iterator.t -> 'a Lazy_sequence.Iterator.t
end`