extprot

Extensible binary protocols for cross-language communication and long-term serialization
Library extprot
Module Extprot . Error
module PP = Pretty_print
type location =
| Null_location
| Field of string * location
| Message of string * string option * location
type format_error =
| Bad_wire_type of Types.low_level_type option
| Unknown_tag of int
| Conversion_error of exn
type extprot_error =
| Missing_tuple_element of int
| Missing_field
| Bad_format of format_error
| Limit_exceeded of limit
and limit =
| Message_length of int
| Number_of_elements of int
| String_length of int
exception Extprot_error of extprot_error * location
val pp_location : Format.formatter -> location -> unit
val pp_format_error : Format.formatter -> format_error -> unit
val pp_limit : Format.formatter -> limit -> unit
val pp_extprot_error : Format.formatter -> (extprot_error * location) -> unit
val extprot_error : extprot_error -> location -> 'a
val bad_format : format_error -> location -> 'a
val location : message:string option -> constructor:string option -> field:string option -> ?loc:location -> unit -> location
val failwith_location : ?message:string -> ?constructor:string -> ?field:string -> extprot_error -> location -> 'a
val missing_tuple_element : ?message:string -> ?constructor:string -> ?field:string -> int -> 'a
val missing_field : ?message:string -> ?constructor:string -> ?field:string -> unit -> 'a
val bad_wire_type : ?message:string -> ?constructor:string -> ?field:string -> ?ll_type:Types.low_level_type -> unit -> 'a
val unknown_tag : ?message:string -> ?constructor:string -> ?field:string -> int -> 'a
val conversion_error : ?message:string -> ?constructor:string -> ?field:string -> exn -> 'a
val limit_exceeded : ?message:string -> ?constructor:string -> ?field:string -> limit -> 'a