Plasma GitLab Archive
Projects Blog Knowledge

Class type Netstream.in_obj_stream

class type in_obj_stream = object .. end

An in_obj_stream extends in_obj_channel by look-ahead methods

  • Netchannels.in_obj_channel The normal input operations work as usual. The window is moved after every read sequence of bytes by exactly the number of bytes, and if the window length becomes smaller than the block size, it will be ensured that the window will be enlarged to the block size (or to the rest of the stream until EOF, whatever is smaller).

method block_size : int

The block size of the stream

method window : Netbuffer.t

The look-ahead window. The first byte of the window is the byte that would be read next by input_char. The length of the window is returned by the method window_length. This length may be smaller than the current length of the netbuffer, i.e. the netbuffer may contain additional data that must be ignored.

method want : int -> unit

Increases the length of the window such that the length is at least the passed number of bytes or that the window reaches EOF (whatever happens first).

method want_another_block : unit -> unit

The same as: want block_size

method window_length : int

Returns the length of the window

method window_at_eof : bool

Whether the window is at eof

method skip : int -> unit

Skip the n bytes of the stream. It is not an error to skip more bytes than available in the remaining stream.

This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml