extprot

Extensible binary protocols for cross-language communication and long-term serialization
Library extprot
Module Extprot . Conv
exception Wrong_protocol_version of int * int
type (!'a, !'hint, !'path) string_reader = ?hint:'hint -> ?level:int -> ?path:'path -> Reader.String_reader.t -> 'a
type (!'a, !'hint, !'path) io_reader = ?hint:'hint -> ?level:int -> ?path:'path -> Reader.IO_reader.t -> 'a
type !'a writer = Msg_buffer.t -> 'a -> unit
val serialize : ?buf:Msg_buffer.t -> 'a writer -> 'a -> string
val deserialize : ( 'a, 'hint, 'path ) string_reader -> ?hint:'hint -> ?offset:int -> string -> 'a
val read : ( 'a, 'hint, 'path ) io_reader -> ?hint:'hint -> IO.input -> 'a
val dump : 'a writer -> Msg_buffer.t -> 'a -> unit
val write : ?buf:Msg_buffer.t -> 'a writer -> 'b IO.output -> 'a -> unit
val read_versioned : ( 'a, 'hint, 'path ) io_reader array -> ?hint:'hint -> Reader.IO_reader.t -> 'a
val io_read_versioned : ( 'a, 'hint, 'path ) io_reader array -> ?hint:'hint -> IO.input -> 'a
val write_versioned : ?buf:Msg_buffer.t -> 'a writer array -> int -> 'b IO.output -> 'a -> unit
val serialize_versioned : ?buf:Msg_buffer.t -> 'a writer array -> int -> 'a -> string
val deserialize_versioned : ( 'a, 'hint, 'path ) string_reader array -> ?hint:'hint -> string -> 'a
val deserialize_versioned' : ( 'a, 'hint, 'path ) string_reader array -> ?hint:'hint -> int -> string -> 'a
val read_frame : IO.input -> int * string