sig
  type 'a lazy_list = 'Lazy_list.t
  type 'a t
  val create : 'Lazy_list.Iterator.lazy_list -> 'Lazy_list.Iterator.t
  val next : 'Lazy_list.Iterator.t -> 'a option
  val iter : 'Lazy_list.Iterator.t -> f:('-> unit) -> unit
end