package extlib

  1. Overview
  2. Docs
type t = Buffer.t
val create : int -> t
val contents : t -> string
val to_bytes : t -> ExtBytes.Bytes.t
val sub : t -> int -> int -> string
val blit : t -> int -> ExtBytes.Bytes.t -> int -> int -> unit
val nth : t -> int -> char
val length : t -> int
val clear : t -> unit
val reset : t -> unit
val add_char : t -> char -> unit
val add_string : t -> string -> unit
val add_bytes : t -> ExtBytes.Bytes.t -> unit
val add_substring : t -> string -> int -> int -> unit
val add_subbytes : t -> ExtBytes.Bytes.t -> int -> int -> unit
val add_substitute : t -> (string -> string) -> string -> unit
val add_buffer : t -> t -> unit
val add_channel : t -> in_channel -> int -> unit
val output_buffer : out_channel -> t -> unit
val truncate : t -> int -> unit
val add_utf_8_uchar : t -> Uchar.t -> unit
val add_utf_16le_uchar : t -> Uchar.t -> unit
val add_utf_16be_uchar : t -> Uchar.t -> unit
val to_seq : t -> char Seq.t

*_seq functions were introduced in OCaml 4.07.0, and are _not_ implemented in extlib for older OCaml versions

val to_seqi : t -> (int * char) Seq.t
val add_seq : t -> char Seq.t -> unit
val of_seq : char Seq.t -> t
val add_uint8 : t -> int -> unit

add_*int* functions were introduced in OCaml 4.08.0, and are _not_ implemented in extlib for older OCaml versions

val add_int8 : t -> int -> unit
val add_uint16_ne : t -> int -> unit
val add_uint16_be : t -> int -> unit
val add_uint16_le : t -> int -> unit
val add_int16_ne : t -> int -> unit
val add_int16_be : t -> int -> unit
val add_int16_le : t -> int -> unit
val add_int32_ne : t -> int32 -> unit
val add_int32_be : t -> int32 -> unit
val add_int32_le : t -> int32 -> unit
val add_int64_ne : t -> int64 -> unit
val add_int64_be : t -> int64 -> unit
val add_int64_le : t -> int64 -> unit