Iterators for OCaml, both restartable and consumable
Library gen
Module GenClone . IO
val with_in : ?mode:int -> ?flags:open_flag list -> string -> ( char t -> 'a ) -> 'a

read filename f opens filename and calls f g, where g is a clonable generator of characters from the file. It can be cloned by calling g#save (which saves the position in the file), and used with g#next. Distinct clones of g shouldn't be used at the same time (otherwise Failure _ will be raised). Both the generator and save points are only valid within the scope in which f is called.