Streaminclude module type of struct include Stream endtype 'a t = 'a Stream.tThe type of streams holding values of type 'a.
Raised by parsers when none of the first components of the stream patterns is accepted.
Raised by parsers when the first component of a stream pattern is accepted, but one of the following components is rejected.
val from : (int -> 'a option) -> 'a tStream.from f returns a stream built from the function f. To create a new stream element, the function f is called with the current stream count. The user function f must return either Some <value> for a value or None to specify the end of the stream.
Do note that the indices passed to f may not start at 0 in the general case. For example, [< '0; '1; Stream.from f >] would call f the first time with count 2.
val of_list : 'a list -> 'a tReturn the stream holding the elements of the list in the same order.
val of_string : string -> char tReturn the stream of the characters of the string parameter.
val of_bytes : bytes -> char tReturn the stream of the characters of the bytes parameter.
val of_channel : in_channel -> char tReturn the stream of the characters read from the input channel.
val iter : ('a -> unit) -> 'a t -> unitStream.iter f s scans the whole stream s, applying function f in turn to each stream element encountered.
val next : 'a t -> 'aReturn the first element of the stream and remove it from the stream. Raise Stream.Failure if the stream is empty.
val empty : 'a t -> unitReturn () if the stream is empty, else raise Stream.Failure.
val peek : 'a t -> 'a optionReturn Some of "the first element" of the stream, or None if the stream is empty.
val junk : 'a t -> unitRemove the first element of the stream, possibly unfreezing it before.
val count : 'a t -> intReturn the current count of the stream elements, i.e. the number of the stream elements discarded.
val npeek : int -> 'a t -> 'a listnpeek n returns the list of the n first elements of the stream, or all its remaining elements if less than n elements are available.