Module Stream
: sigend
Streams and parsers.
type'at
The type of streams holding values of type 'a .
exceptionFailure
Raised by parsers when none of the first components of the stream patterns is accepted.
exceptionErrorofstring
Raised by parsers when the first component of a stream pattern is accepted, but one of the following
components is rejected.
Streambuildersvalfrom : (int->'aoption)->'atStream.fromf 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.fromf>] would call f the first time with count 2 .
valof_list : 'alist->'at
Return the stream holding the elements of the list in the same order.
valof_string : string->chart
Return the stream of the characters of the string parameter.
valof_bytes : bytes->chart
Return the stream of the characters of the bytes parameter.
Since 4.02.0
valof_channel : in_channel->chart
Return the stream of the characters read from the input channel.
Streamiteratorvaliter : ('a->unit)->'at->unitStream.iterfs scans the whole stream s, applying function f in turn to each stream element encountered.
Predefinedparsersvalnext : 'at->'a
Return the first element of the stream and remove it from the stream.
RaisesStream.Failure if the stream is empty.
valempty : 'at->unit
Return () if the stream is empty, else raise Stream.Failure .
Usefulfunctionsvalpeek : 'at->'aoption
Return Some of "the first element" of the stream, or None if the stream is empty.
valjunk : 'at->unit
Remove the first element of the stream, possibly unfreezing it before.
valcount : 'at->int
Return the current count of the stream elements, i.e. the number of the stream elements discarded.
valnpeek : int->'at->'alistnpeekn returns the list of the n first elements of the stream, or all its remaining elements if less
than n elements are available.
OCamldoc 2022-01-24 Stream(3o)