Lines.BufferSourceBuffer used to parse strings into lines.
The buffer handle.
The exception thrown by next_line_exn.
Make a new empty buffer. The optional filename is used only for error reporting; it should be set to the name of the file, if any, from which you will feed the buffer.
Tell if the parser's buffers are empty or not. For instance, when there is no more content to feed and next_line returns None, is_empty p = true means that the content did not end with a complete line.
Get the next line, but throw No_next_line if there is no line to return.
Get the current position in the stream.
Return any remaining lines and the unfinished string, without removing them from the buffer.