module Conv:Conv: Utility Module for S-expression Conversionssig..end
type'asexp_option ='a option
type'asexp_list ='a list
type'asexp_array ='a array
type'asexp_opaque ='a
typebigstring =(char, Bigarray.int8_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t
typefloat32_vec =(float, Bigarray.float32_elt, Bigarray.fortran_layout) Bigarray.Array1.t
typefloat64_vec =(float, Bigarray.float64_elt, Bigarray.fortran_layout) Bigarray.Array1.t
typevec =float64_vec
typefloat32_mat =(float, Bigarray.float32_elt, Bigarray.fortran_layout) Bigarray.Array2.t
typefloat64_mat =(float, Bigarray.float64_elt, Bigarray.fortran_layout) Bigarray.Array2.t
typemat =float64_mat
val default_string_of_float : (float -> string) Pervasives.refdefault_string_of_float reference to the default function used
to convert floats to strings.
Initially set to fun n -> sprintf "%.20G" n.
val write_old_option_format : bool Pervasives.refwrite_old_option_format reference for the default option format
used to write option values. If set to true, the old-style option
format will be used, the new-style one otherwise.
Initially set to true.
val read_old_option_format : bool Pervasives.refread_old_option_format reference for the default option format
used to read option values. Of_sexp_error will be raised
with old-style option values if this reference is set to false.
Reading new-style option values is always supported. Using a global
reference instead of changing the converter calling conventions is
the only way to avoid breaking old code with the standard macros.
Initially set to true.
val list_map : ('a -> 'b) -> 'a list -> 'b listStdLabels) which
wrecks havoc with the camlp4 extension.val sexp_of_unit : unit -> Sexp.tsexp_of_unit () converts a value of type unit to an S-expression.val sexp_of_bool : bool -> Sexp.tsexp_of_bool b converts the value x of type bool to an
S-expression.val sexp_of_string : string -> Sexp.tsexp_of_bool str converts the value str of type string to an
S-expression.val sexp_of_char : char -> Sexp.tsexp_of_char c converts the value c of type char to an
S-expression.val sexp_of_int : int -> Sexp.tsexp_of_int n converts the value n of type int to an
S-expression.val sexp_of_float : float -> Sexp.tsexp_of_float n converts the value n of type float to an
S-expression.val sexp_of_int32 : int32 -> Sexp.tsexp_of_int32 n converts the value n of type int32 to an
S-expression.val sexp_of_int64 : int64 -> Sexp.tsexp_of_int64 n converts the value n of type int64 to an
S-expression.val sexp_of_nativeint : nativeint -> Sexp.tsexp_of_nativeint n converts the value n of type nativeint to an
S-expression.val sexp_of_big_int : Big_int.big_int -> Sexp.t
val sexp_of_nat : Nat.nat -> Sexp.tsexp_of_nat n converts the value n of type Nat.nat to an
S-expression.val sexp_of_num : Num.num -> Sexp.t
val sexp_of_ratio : Ratio.ratio -> Sexp.tsexp_of_ratio n converts the value n of type Ratio.ratio to an
S-expression.val sexp_of_ref : ('a -> 'b) -> 'a Pervasives.ref -> 'bsexp_of_ref conv r converts the value r of type 'a ref to
an S-expression. Uses conv to convert values of type 'a to an
S-expression.val sexp_of_lazy : ('a -> 'b) -> 'a lazy_t -> 'bsexp_of_ref conv l converts the value l of type 'a lazy_t to
an S-expression. Uses conv to convert values of type 'a to an
S-expression.val sexp_of_option : ('a -> Sexp.t) -> 'a option -> Sexp.tsexp_of_option conv opt converts the value opt of type 'a
option to an S-expression. Uses conv to convert values of type
'a to an S-expression.val sexp_of_pair : ('a -> Sexp.t) -> ('b -> Sexp.t) -> 'a * 'b -> Sexp.tsexp_of_pair conv1 conv2 pair converts a pair to an S-expression.
It uses its first argument to convert the first element of the pair,
and its second argument to convert the second element of the pair.val sexp_of_triple : ('a -> Sexp.t) -> ('b -> Sexp.t) -> ('c -> Sexp.t) -> 'a * 'b * 'c -> Sexp.tsexp_of_triple conv1 conv2 conv3 triple converts a triple to
an S-expression using conv1, conv2, and conv3 to convert its
elements.val sexp_of_list : ('a -> Sexp.t) -> 'a list -> Sexp.tsexp_of_list conv lst converts the value lst of type 'a
list to an S-expression. Uses conv to convert values of type
'a to an S-expression.val sexp_of_array : ('a -> Sexp.t) -> 'a array -> Sexp.tsexp_of_array conv ar converts the value ar of type 'a
array to an S-expression. Uses conv to convert values of type
'a to an S-expression.val sexp_of_hashtbl : ('a -> Sexp.t) -> ('b -> Sexp.t) -> ('a, 'b) Hashtbl.t -> Sexp.tsexp_of_hashtbl conv_key conv_value htbl converts the value htbl
of type ('a, 'b) Hashtbl.t to an S-expression. Uses conv_key
to convert the hashtable keys of type 'a, and conv_value to
convert hashtable values of type 'b to S-expressions.val sexp_of_bigstring : bigstring -> Sexp.tsexp_of_bigstring bstr converts a bigstring (character bigarray
in C-layout) to an S-expression.val sexp_of_float32_vec : float32_vec -> Sexp.tsexp_of_float32_vec vec converts the one-dimensional bigarray
vec of 32-bit floats in Fortran-layout to an S-expression.val sexp_of_float64_vec : float64_vec -> Sexp.tsexp_of_float64_vec vec converts the one-dimensional bigarray
vec of 64-bit floats in Fortran-layout to an S-expression.val sexp_of_vec : vec -> Sexp.t
val sexp_of_float32_mat : float32_mat -> Sexp.tsexp_of_float32_mat mat converts the two-dimensional bigarray
mat of 32-bit floats in Fortran-layout to an S-expression.val sexp_of_float64_mat : float64_mat -> Sexp.tsexp_of_float64_mat mat converts the two-dimensional bigarray
mat of 64-bit floats in Fortran-layout to an S-expression.val sexp_of_mat : mat -> Sexp.t
val sexp_of_opaque : 'a -> Sexp.tsexp_of_opaque x converts the value x of opaque type to an
S-expression. This means the user need not provide converters,
but the result cannot be interpreted.val sexp_of_fun : ('a -> 'b) -> Sexp.tsexp_of_fun f converts the value f of function type to an
S-expression.val string_of__of__sexp_of : ('a -> Sexp.t) -> 'a -> stringstring_of__of__sexp_of conv x converts the OCaml-value x to
an S-expression represented as a string by using conversion function
conv.exception Of_sexp_error of string * Sexp.t
Of_sexp_error (reason, sexp) the exception raised when an
S-expression could not be successfully converted to an OCaml-value.val record_check_extra_fields : bool Pervasives.refrecord_check_extra_fields checks for extra (= unknown) fields
in record S-expressions.val of_sexp_error : string -> Sexp.t -> 'aof_sexp_error reason sexpOf_sexp_error (reason, sexp).val unit_of_sexp : Sexp.t -> unitunit_of_sexp sexp converts S-expression sexp to a value of type
unit.val bool_of_sexp : Sexp.t -> boolbool_of_sexp sexp converts S-expression sexp to a value of type
bool.val string_of_sexp : Sexp.t -> stringstring_of_sexp sexp converts S-expression sexp to a value of type
string.val char_of_sexp : Sexp.t -> charchar_of_sexp sexp converts S-expression sexp to a value of type
char.val int_of_sexp : Sexp.t -> intint_of_sexp sexp converts S-expression sexp to a value of type
int.val float_of_sexp : Sexp.t -> floatfloat_of_sexp sexp converts S-expression sexp to a value of type
float.val int32_of_sexp : Sexp.t -> int32int32_of_sexp sexp converts S-expression sexp to a value of type
int32.val int64_of_sexp : Sexp.t -> int64int64_of_sexp sexp converts S-expression sexp to a value of type
int64.val nativeint_of_sexp : Sexp.t -> nativeintnativeint_of_sexp sexp converts S-expression sexp to a value
of type nativeint.val big_int_of_sexp : Sexp.t -> Big_int.big_int
val nat_of_sexp : Sexp.t -> Nat.natnat_of_sexp sexp converts S-expression sexp to a value
of type Nat.nat.val num_of_sexp : Sexp.t -> Num.numnum_of_sexp sexp converts S-expression sexp to a value
of type Nat.num.val ratio_of_sexp : Sexp.t -> Ratio.ratioratio_of_sexp sexp converts S-expression sexp to a value
of type Nat.ratio.val ref_of_sexp : (Sexp.t -> 'a) -> Sexp.t -> 'a Pervasives.refref_of_sexp conv sexp converts S-expression sexp to a value
of type 'a ref using conversion function conv, which converts
an S-expression to a value of type 'a.val lazy_of_sexp : (Sexp.t -> 'a) -> Sexp.t -> 'a lazy_tlazy_of_sexp conv sexp converts S-expression sexp to a value
of type 'a lazy_t using conversion function conv, which converts
an S-expression to a value of type 'a.val option_of_sexp : (Sexp.t -> 'a) -> Sexp.t -> 'a optionoption_of_sexp conv sexp converts S-expression sexp to a value
of type 'a option using conversion function conv, which converts
an S-expression to a value of type 'a.val pair_of_sexp : (Sexp.t -> 'a) -> (Sexp.t -> 'b) -> Sexp.t -> 'a * 'bpair_of_sexp conv1 conv2 sexp converts S-expression sexp to a pair
of type 'a * 'b using conversion functions conv1 and conv2,
which convert S-expressions to values of type 'a and 'b
respectively.val triple_of_sexp : (Sexp.t -> 'a) -> (Sexp.t -> 'b) -> (Sexp.t -> 'c) -> Sexp.t -> 'a * 'b * 'ctriple_of_sexp conv1 conv2 conv3 sexp converts S-expression sexp
to a triple of type 'a * 'b * 'c using conversion functions conv1,
conv2, and conv3, which convert S-expressions to values of type
'a, 'b, and 'c respectively.val list_of_sexp : (Sexp.t -> 'a) -> Sexp.t -> 'a listlist_of_sexp conv sexp converts S-expression sexp to a value
of type 'a list using conversion function conv, which converts
an S-expression to a value of type 'a.val array_of_sexp : (Sexp.t -> 'a) -> Sexp.t -> 'a arrayarray_of_sexp conv sexp converts S-expression sexp to a value
of type 'a array using conversion function conv, which converts
an S-expression to a value of type 'a.val hashtbl_of_sexp : (Sexp.t -> 'a) -> (Sexp.t -> 'b) -> Sexp.t -> ('a, 'b) Hashtbl.thashtbl_of_sexp conv_key conv_value sexp converts S-expression
sexp to a value of type ('a, 'b) Hashtbl.t using conversion
function conv_key, which converts an S-expression to hashtable
key of type 'a, and function conv_value, which converts an
S-expression to hashtable value of type 'b.val float32_vec_of_sexp : Sexp.t -> float32_vecfloat32_vec_of_sexp sexp converts S-expression sexp to a
one-dimensional bigarray of 32-bit floats in Fortran-layout.val float64_vec_of_sexp : Sexp.t -> float64_vecfloat64_vec_of_sexp sexp converts S-expression sexp to a
one-dimensional bigarray of 64-bit floats in Fortran-layout.val vec_of_sexp : Sexp.t -> vec
val float32_mat_of_sexp : Sexp.t -> float32_matfloat32_mat_of_sexp sexp converts S-expression sexp to a
two-dimensional bigarray of 32-bit floats in Fortran-layout.val float64_mat_of_sexp : Sexp.t -> float64_matfloat64_mat_of_sexp sexp converts S-expression sexp to a
two-dimensional bigarray of 64-bit floats in Fortran-layout.val mat_of_sexp : Sexp.t -> mat
val opaque_of_sexp : Sexp.t -> 'aopaque_of_sexp sexpOf_sexp_error when attempting to
convert an S-expression to an opaque value.val fun_of_sexp : Sexp.t -> 'a -> 'bfun_of_sexp sexpOf_sexp_error when attempting to
convert an S-expression to a function.val of_string__of__of_sexp : (Sexp.t -> 'a) -> string -> 'aof_string__of__of_sexp conv str converts the S-expression str
represented as a string to an OCaml-value by using conversion function
conv.val sexp_of_exn : exn -> Sexp.tsexp_of_exn exc converts exception exc to an S-expression.
If no suitable converter is found, the standard converter in
Printexc will be used to generate an atomic S-expression.type exn_conv_handle
val add_exn_converter : (exn -> Sexp.t option) -> exn_conv_handleadd_exn_converter sexp_of_exn registers exception S-expression
converter sexp_of_exn and returns a handle. NOTE: if you call this
function explicitly, or the "sexp"-macro for exceptions from within
local modules, you will eventually have to unregister it manually
with Conv.del_exn_converter, otherwise there is a space leak!val del_exn_converter : exn_conv_handle -> unitdel_exn_converter handle unregisters exception S-expression
converter with handle handle. In multi-threaded contexts it is
not guaranteed that the unregistered converter will not be called
after this function returns.