sig
type 'a t
val from : (int -> 'a option) -> 'a Fstream.t
val of_list : 'a list -> 'a Fstream.t
val of_string : string -> char Fstream.t
val of_channel : Pervasives.in_channel -> char Fstream.t
val iter : ('a -> unit) -> 'a Fstream.t -> unit
val next : 'a Fstream.t -> ('a * 'a Fstream.t) option
val empty : 'a Fstream.t -> (unit * 'a Fstream.t) option
val count : 'a Fstream.t -> int
val count_unfrozen : 'a Fstream.t -> int
type ('a, 'b) kont =
K of (unit -> ('b * 'a Fstream.t * ('a, 'b) Fstream.kont) option)
type ('a, 'b) bp =
'a Fstream.t -> ('b * 'a Fstream.t * ('a, 'b) Fstream.kont) option
val bcontinue :
('a, 'b) Fstream.kont ->
('b * 'a Fstream.t * ('a, 'b) Fstream.kont) option
val bparse_all : ('a, 'b) Fstream.bp -> 'a Fstream.t -> 'b list
val nil : 'a Fstream.t
type 'a data
val cons : 'a -> 'a Fstream.t -> 'a Fstream.data
val app : 'a Fstream.t -> 'a Fstream.t -> 'a Fstream.data
val flazy : (unit -> 'a Fstream.data) -> 'a Fstream.t
val b_seq :
('a, 'b) Fstream.bp -> ('b -> ('a, 'c) Fstream.bp) -> ('a, 'c) Fstream.bp
val b_or :
('a, 'b) Fstream.bp -> ('a, 'b) Fstream.bp -> ('a, 'b) Fstream.bp
val b_term : ('a -> 'b option) -> ('a, 'b) Fstream.bp
val b_act : 'a -> ('b, 'a) Fstream.bp
end