ppx_protocol_conv_jsonm

Jsonm driver for Ppx_protocol_conv
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library ppx_protocol_conv_jsonm

Parameters

Signature

type t = Ezjsonm.value

Serialized type. This type should not be opaque, so it is recommended that drivers implement the signature as Runtime.Driver with type t = ...

type error

Opaque error type

exception Protocol_error of error

Exception for protocol errors. The driver should make sure that this is the only exception raised when deserializing

val make_error : ?value:t -> string -> error

Construct an error to be raised from a custom parser.

val error_to_string_hum : error -> string

Convert an error type to a human readable string

val to_string_hum : t -> string

Convert t to a string

val try_with : ( t -> 'v ) -> t -> ( 'v, error ) Protocol_conv.Runtime.result

Wrap deserialization function to convert exceptions into an result type

val to_variant : ( t, 'a ) Protocol_conv.Runtime.Variant_in.t list -> t -> 'a
val of_variant : string -> ( t, 'a, t ) Protocol_conv.Runtime.Tuple_out.t -> 'a
val to_record : ( t, 'constr, 'b ) Protocol_conv.Runtime.Record_in.t -> 'constr -> t -> 'b
val of_record : ( t, 'a, t ) Protocol_conv.Runtime.Record_out.t -> 'a
val to_tuple : ( t, 'constr, 'b ) Protocol_conv.Runtime.Tuple_in.t -> 'constr -> t -> 'b
val of_tuple : ( t, 'a, t ) Protocol_conv.Runtime.Tuple_out.t -> 'a
val to_option : ( t -> 'a ) -> t -> 'a option
val of_option : ( 'a -> t ) -> 'a option -> t
val to_ref : ( t -> 'a ) -> t -> 'a ref
val of_ref : ( 'a -> t ) -> 'a ref -> t
val to_list : ( t -> 'a ) -> t -> 'a list
val of_list : ( 'a -> t ) -> 'a list -> t
val to_array : ( t -> 'a ) -> t -> 'a array
val of_array : ( 'a -> t ) -> 'a array -> t
val to_lazy_t : ( t -> 'a ) -> t -> 'a lazy_t
val of_lazy_t : ( 'a -> t ) -> 'a lazy_t -> t
val to_result : ( t -> 'a ) -> ( t -> 'b ) -> t -> ( 'a, 'b ) Protocol_conv.Runtime.result
val of_result : ( 'a -> t ) -> ( 'b -> t ) -> ( 'a, 'b ) Protocol_conv.Runtime.result -> t
val to_int : t -> int
val of_int : int -> t
val to_int32 : t -> int32
val of_int32 : int32 -> t
val to_int64 : t -> int64
val of_int64 : int64 -> t
val to_nativeint : t -> nativeint
val of_nativeint : nativeint -> t
val to_char : t -> char
val of_char : char -> t
val to_string : t -> string
val of_string : string -> t
val to_float : t -> float
val of_float : float -> t
val to_bool : t -> bool
val of_bool : bool -> t
val to_bytes : t -> bytes
val of_bytes : bytes -> t
val to_unit : t -> unit
val of_unit : unit -> t