Up

Module Binable

Module types and utilities for dealing with types that support the bin-io binary encoding.

Signature

type bigstring = (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
module type S = Bin_prot.Binable.S
New code should use @@deriving bin_io.
module type S1 = Bin_prot.Binable.S1
module type S2 = Bin_prot.Binable.S2

Of_binable* functors are for when you want the binary representation of one type to be the same as that for some other isomorphic type.

module Of_binable (Binable : S) (M : sig .. end) : S with type t := M.t
module Of_binable1 (Binable : S1) (M : sig .. end) : S1 with type 'a t := 'a M.t
module Of_binable2 (Binable : S2) (M : sig .. end) : S2 with type ('a, 'b) t := ('a, 'b) M.t
module Of_sexpable (M : Sexpable.S) : S with type t := M.t
Of_sexpable serializes a value using the bin-io of the sexp serialization of the value.
module Of_stringable (M : Stringable.S) : S with type t := M.t
type 'a m = (module S with type t = 'a)
val of_bigstring : 'a m -> bigstring -> 'a
val to_bigstring : ?prefix_with_length:bool -> 'a m -> 'a -> bigstring
val of_string : 'a m -> string -> 'a
val to_string : 'a m -> 'a -> string
module Stable : sig .. end
The following functors preserve stability: if applied to stable types with stable (de)serializations, they will produce stable types with stable (de)serializations.