Iostream.In_bufBuffered input stream.
class type t = object ... endThe implementation of buffered input streams.
class virtual t_from_refill : ?bytes:bytes -> unit -> object ... endA mixin to implement a buffered input by only providing a refill method. Add a close method and it's good to go.
val create :
?bytes:bytes ->
?close:(unit -> unit) ->
refill:(bytes -> int) ->
unit ->
tCreate a new buffered input stream.
val of_bytes : ?off:int -> ?len:int -> bytes -> tval of_string : ?off:int -> ?len:int -> string -> tclass bufferized : ?bytes:bytes -> In.t -> tRead from the given buffer.
class of_in_channel : ?bytes:bytes -> in_channel -> tval of_in_channel : ?bytes:bytes -> in_channel -> tWrap a standard input channel.
fill_buffer bic returns a slice into bic's internal buffer, and ensures it's empty only if bic.ic is empty.
val input : t -> bytes -> int -> int -> intRead into the given slice of bytes.
val consume : t -> int -> unitconsume bic n consumes n bytes from bic. Precondition: n <= get_len bic, ie. one cannot consume bytes that have not yet been obtained via fill_buffer or fill_and_get.
val close : t -> unitClose the input stream.
val input_all_into_buffer : t -> Stdlib.Buffer.t -> unitRead the whole content into the given buffer.
val input_all : ?buf:bytes -> t -> stringinput_all ic reads the whole content of ic into a string.
val skip : t -> int -> unitskip ic n reads and dicards the next n bytes in ic.
val input_line : ?buffer:Stdlib.Buffer.t -> t -> string optionRead a line from the input. Return None if the stream is empty.
val input_lines : ?buffer:Stdlib.Buffer.t -> t -> string listRead all lines from the input.
val to_iter : t -> (char -> unit) -> unitval to_seq : t -> char Stdlib.Seq.tval of_seq : ?bytes:bytes -> char Stdlib.Seq.t -> t