extprot

Extensible binary protocols for cross-language communication and long-term serialization
Library extprot
Module Extprot . Msg_buffer
type t = {
mutable buffer : Bytes.t;
mutable position : int;
mutable length : int;
mutable release : unit -> unit;
}
val dummy_get_bytes : int -> bytes * ( unit -> unit )
val if_not_disabled : 'a -> 'a -> 'a
val get_bytes : int -> bytes * ( unit -> unit )
val make : int -> t
val create : unit -> t
val contents : t -> string
val sub : t -> int -> int -> string
val nth : t -> int -> char
val length : t -> int
val clear : t -> unit
val reset : t -> unit
val discard : t -> unit
val round_to_pow2 : int -> int
val resize : t -> int -> unit
val add_char : t -> char -> unit
val add_substring : t -> string -> int -> int -> unit
val add_string : t -> string -> unit
val add_buffer : t -> t -> unit
val add_channel : t -> in_channel -> int -> unit
val output_buffer : out_channel -> t -> unit
val output_buffer_to_io : 'a IO.output -> t -> unit
val add_byte : t -> int -> unit
val add_vint : t -> int -> unit
val add_tuple_prefix : t -> int -> unit
val add_htuple_prefix : t -> int -> unit
val add_const_prefix : t -> int -> unit
val write_bool : t -> bool -> unit
val write_int8 : t -> int -> unit
val write_relative_int : t -> int -> unit
val (&!) : int32 -> int32 -> int32
val (&!!) : int64 -> int64 -> int64
val (>!) : int32 -> int -> int32
val (>!!) : int64 -> int -> int64
val write_int32 : t -> int32 -> unit
val write_int64_bits : t -> int64 -> unit
val write_int64 : t -> int64 -> unit
val write_float : t -> float -> unit
val write_string : t -> string -> unit
val with_buffer : ( Bytes.t -> int -> int -> 'a ) -> t -> 'a
val unsafe_contents : t -> Bytes.t