Module Base__.Import
include Base__.Import0
include module type of sig ... end with type 'a ref := 'a Stdlib.ref with type ('a, 'b, 'c) format := ('a, 'b, 'c) Stdlib.format with type ('a, 'b, 'c, 'd) format4 := ('a, 'b, 'c, 'd) Stdlib.format4 with type ('a, 'b, 'c, 'd, 'e, 'f) format6 := ('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 with module Array := Shadow_stdlib.Array with module Bool := Shadow_stdlib.Bool with module Buffer := Shadow_stdlib.Buffer with module Bytes := Shadow_stdlib.Bytes with module Char := Shadow_stdlib.Char with module Float := Shadow_stdlib.Float with module Hashtbl := Shadow_stdlib.Hashtbl with module Int := Shadow_stdlib.Int with module Int32 := Shadow_stdlib.Int32 with module Int64 := Shadow_stdlib.Int64 with module Lazy := Shadow_stdlib.Lazy with module List := Shadow_stdlib.List with module Map := Shadow_stdlib.Map with module Nativeint := Shadow_stdlib.Nativeint with module Option := Shadow_stdlib.Option with module Printf := Shadow_stdlib.Printf with module Queue := Shadow_stdlib.Queue with module Random := Shadow_stdlib.Random with module Result := Shadow_stdlib.Result with module Set := Shadow_stdlib.Set with module Stack := Shadow_stdlib.Stack with module String := Shadow_stdlib.String with module Sys := Shadow_stdlib.Sys with module Uchar := Shadow_stdlib.Uchar with module Unit := Shadow_stdlib.Unit
val (=) : 'a -> 'a -> bool
val (<>) : 'a -> 'a -> bool
val (<) : 'a -> 'a -> bool
val (>) : 'a -> 'a -> bool
val (<=) : 'a -> 'a -> bool
val (>=) : 'a -> 'a -> bool
val compare : 'a -> 'a -> int
val (==) : 'a -> 'a -> bool
val (!=) : 'a -> 'a -> bool
val not : bool -> bool
val (&&) : bool -> bool -> bool
val (&) : bool -> bool -> bool
val (||) : bool -> bool -> bool
val or : bool -> bool -> bool
val __LOC__ : string
val __FILE__ : string
val __LINE__ : int
val __MODULE__ : string
val __POS__ : string * int * int * int
val __LOC_OF__ : 'a -> string * 'a
val __LINE_OF__ : 'a -> int * 'a
val __POS_OF__ : 'a -> (string * int * int * int) * 'a
val (|>) : 'a -> ('a -> 'b) -> 'b
val (@@) : ('a -> 'b) -> 'a -> 'b
val (~-) : int -> int
val (~+) : int -> int
val succ : int -> int
val pred : int -> int
val (+) : int -> int -> int
val (-) : int -> int -> int
val (*) : int -> int -> int
val (/) : int -> int -> int
val (mod) : int -> int -> int
val (lsl) : int -> int -> int
val (lsr) : int -> int -> int
val (asr) : int -> int -> int
val (~-.) : float -> float
val (~+.) : float -> float
val (+.) : float -> float -> float
val (-.) : float -> float -> float
val (*.) : float -> float -> float
val (/.) : float -> float -> float
val (**) : float -> float -> float
val sqrt : float -> float
val exp : float -> float
val log : float -> float
val log10 : float -> float
val expm1 : float -> float
val log1p : float -> float
val cos : float -> float
val sin : float -> float
val tan : float -> float
val acos : float -> float
val asin : float -> float
val atan : float -> float
val atan2 : float -> float -> float
val hypot : float -> float -> float
val cosh : float -> float
val sinh : float -> float
val tanh : float -> float
val ceil : float -> float
val floor : float -> float
val abs_float : float -> float
val copysign : float -> float -> float
val mod_float : float -> float -> float
val frexp : float -> float * int
val ldexp : float -> int -> float
val modf : float -> float * float
val float : int -> float
val float_of_int : int -> float
val truncate : float -> int
val int_of_float : float -> int
val infinity : float
val neg_infinity : float
val nan : float
val max_float : float
val min_float : float
val epsilon_float : float
val classify_float : float -> fpclass
val string_of_bool : bool -> string
val bool_of_string_opt : string -> bool option
val bool_of_string : string -> bool
val string_of_int : int -> string
val int_of_string_opt : string -> int option
val stdin : in_channel
val stdout : out_channel
val stderr : out_channel
val print_char : char -> unit
val print_string : string -> unit
val print_bytes : bytes -> unit
val print_int : int -> unit
val print_float : float -> unit
val print_endline : string -> unit
val print_newline : unit -> unit
val prerr_char : char -> unit
val prerr_string : string -> unit
val prerr_bytes : bytes -> unit
val prerr_int : int -> unit
val prerr_float : float -> unit
val prerr_endline : string -> unit
val prerr_newline : unit -> unit
val read_line : unit -> string
val read_int_opt : unit -> int option
val read_int : unit -> int
val read_float_opt : unit -> float option
val read_float : unit -> float
type nonrec open_flag
= Stdlib.open_flag
=
|
Open_rdonly
|
Open_wronly
|
Open_append
|
Open_creat
|
Open_trunc
|
Open_excl
|
Open_binary
|
Open_text
|
Open_nonblock
val open_out : string -> out_channel
val open_out_bin : string -> out_channel
val open_out_gen : open_flag list -> int -> string -> out_channel
val flush : out_channel -> unit
val flush_all : unit -> unit
val output_char : out_channel -> char -> unit
val output_string : out_channel -> string -> unit
val output_bytes : out_channel -> bytes -> unit
val output : out_channel -> bytes -> int -> int -> unit
val output_substring : out_channel -> string -> int -> int -> unit
val output_byte : out_channel -> int -> unit
val output_binary_int : out_channel -> int -> unit
val output_value : out_channel -> 'a -> unit
val seek_out : out_channel -> int -> unit
val pos_out : out_channel -> int
val out_channel_length : out_channel -> int
val close_out : out_channel -> unit
val close_out_noerr : out_channel -> unit
val set_binary_mode_out : out_channel -> bool -> unit
val open_in : string -> in_channel
val open_in_bin : string -> in_channel
val open_in_gen : open_flag list -> int -> string -> in_channel
val input_char : in_channel -> char
val input_line : in_channel -> string
val input : in_channel -> bytes -> int -> int -> int
val really_input : in_channel -> bytes -> int -> int -> unit
val really_input_string : in_channel -> int -> string
val input_byte : in_channel -> int
val input_binary_int : in_channel -> int
val input_value : in_channel -> 'a
val seek_in : in_channel -> int -> unit
val pos_in : in_channel -> int
val in_channel_length : in_channel -> int
val close_in : in_channel -> unit
val close_in_noerr : in_channel -> unit
val set_binary_mode_in : in_channel -> bool -> unit
val ref : 'a -> 'a ref
val (!) : 'a ref -> 'a
val (:=) : 'a ref -> 'a -> unit
val incr : int ref -> unit
val decr : int ref -> unit
type nonrec ('a, 'b) result
= ('a, 'b) Stdlib.result
=
|
Ok of 'a
|
Error of 'b
type nonrec ('a, 'b, 'c, 'd, 'e, 'f) format6
= ('a, 'b, 'c, 'd, 'e, 'f) CamlinternalFormatBasics.format6
type nonrec ('a, 'b, 'c, 'd) format4
= ('a, 'b, 'c, 'c, 'c, 'd) format6
type nonrec ('a, 'b, 'c) format
= ('a, 'b, 'c, 'c) format4
val string_of_format : ('a, 'b, 'c, 'd, 'e, 'f) format6 -> string
val (^^) : ('a, 'b, 'c, 'd, 'e, 'f) format6 -> ('f, 'b, 'c, 'e, 'g, 'h) format6 -> ('a, 'b, 'c, 'd, 'g, 'h) format6
val exit : int -> 'a
val at_exit : (unit -> unit) -> unit
val valid_float_lexem : string -> string
val unsafe_really_input : in_channel -> bytes -> int -> int -> unit
val do_at_exit : unit -> unit
type 'a ref
= 'a Caml.ref
=
{
mutable contents : 'a;
}
module Caml = Base__.Import0.Caml
val (|>) : 'a -> ('a -> 'b) -> 'b
val (&&) : bool -> bool -> bool
val (||) : bool -> bool -> bool
val not : bool -> bool
val (!=) : 'a -> 'a -> bool
val (*) : int -> int -> int
val (**) : float -> float -> float
val (*.) : float -> float -> float
val (+) : int -> int -> int
val (+.) : float -> float -> float
val (-) : int -> int -> int
val (-.) : float -> float -> float
val (/) : int -> int -> int
val (/.) : float -> float -> float
module Poly = Base__.Poly0
module Int_replace_polymorphic_compare = Base__.Import0.Int_replace_polymorphic_compare
include Int_replace_polymorphic_compare
val (<) : int -> int -> bool
val (<=) : int -> int -> bool
val (<>) : int -> int -> bool
val (=) : int -> int -> bool
val (>) : int -> int -> bool
val (>=) : int -> int -> bool
val compare : int -> int -> int
val ascending : int -> int -> int
val descending : int -> int -> int
val equal : int -> int -> bool
val max : int -> int -> int
val min : int -> int -> int
module Int32_replace_polymorphic_compare = Base__.Import0.Int32_replace_polymorphic_compare
module Int64_replace_polymorphic_compare = Base__.Import0.Int64_replace_polymorphic_compare
module Nativeint_replace_polymorphic_compare = Base__.Import0.Nativeint_replace_polymorphic_compare
module Bool_replace_polymorphic_compare = Base__.Import0.Bool_replace_polymorphic_compare
module Char_replace_polymorphic_compare = Base__.Import0.Char_replace_polymorphic_compare
module Uchar_replace_polymorphic_compare = Base__.Import0.Uchar_replace_polymorphic_compare
module Float_replace_polymorphic_compare = Base__.Import0.Float_replace_polymorphic_compare
module String_replace_polymorphic_compare = Base__.Import0.String_replace_polymorphic_compare
module Bytes_replace_polymorphic_compare = Base__.Import0.Bytes_replace_polymorphic_compare
val (@) : 'a list -> 'a list -> 'a list
val (^) : string -> string -> string
val (~-) : int -> int
val (~-.) : float -> float
val (asr) : int -> int -> int
val (land) : int -> int -> int
val (lnot) : int -> int
val (lor) : int -> int -> int
val (lsl) : int -> int -> int
val (lsr) : int -> int -> int
val (lxor) : int -> int -> int
val (mod) : int -> int -> int
val abs : int -> int
val failwith : string -> 'a
val fst : ('a * 'b) -> 'a
val invalid_arg : string -> 'a
val snd : ('a * 'b) -> 'b
include Sexplib0.Sexp_conv
type 'a sexp_option
= 'a option
type 'a sexp_list
= 'a list
type 'a sexp_array
= 'a array
type 'a sexp_opaque
= 'a
Conversion of OCaml-values to S-expressions
val default_string_of_float : (float -> string) Stdlib.ref
default_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 Stdlib.ref
write_old_option_format
reference for the default option format used to write option values. If set totrue
, the old-style option format will be used, the new-style one otherwise.Initially set to
true
.
val read_old_option_format : bool Stdlib.ref
read_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 tofalse
. 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 list
We re-export a tail recursive map function, because some modules override the standard library functions (e.g.
StdLabels
) which wrecks havoc with the camlp4 extension.
val sexp_of_unit : unit -> Sexplib0.Sexp.t
sexp_of_unit ()
converts a value of typeunit
to an S-expression.
val sexp_of_bool : bool -> Sexplib0.Sexp.t
sexp_of_bool b
converts the valuex
of typebool
to an S-expression.
val sexp_of_string : string -> Sexplib0.Sexp.t
sexp_of_bool str
converts the valuestr
of typestring
to an S-expression.
val sexp_of_bytes : bytes -> Sexplib0.Sexp.t
sexp_of_bool str
converts the valuestr
of typebytes
to an S-expression.
val sexp_of_char : char -> Sexplib0.Sexp.t
sexp_of_char c
converts the valuec
of typechar
to an S-expression.
val sexp_of_int : int -> Sexplib0.Sexp.t
sexp_of_int n
converts the valuen
of typeint
to an S-expression.
val sexp_of_float : float -> Sexplib0.Sexp.t
sexp_of_float n
converts the valuen
of typefloat
to an S-expression.
val sexp_of_int32 : int32 -> Sexplib0.Sexp.t
sexp_of_int32 n
converts the valuen
of typeint32
to an S-expression.
val sexp_of_int64 : int64 -> Sexplib0.Sexp.t
sexp_of_int64 n
converts the valuen
of typeint64
to an S-expression.
val sexp_of_nativeint : nativeint -> Sexplib0.Sexp.t
sexp_of_nativeint n
converts the valuen
of typenativeint
to an S-expression.
val sexp_of_ref : ('a -> Sexplib0.Sexp.t) -> 'a Stdlib.ref -> Sexplib0.Sexp.t
sexp_of_ref conv r
converts the valuer
of type'a ref
to an S-expression. Usesconv
to convert values of type'a
to an S-expression.
val sexp_of_lazy_t : ('a -> Sexplib0.Sexp.t) -> 'a lazy_t -> Sexplib0.Sexp.t
sexp_of_lazy_t conv l
converts the valuel
of type'a lazy_t
to an S-expression. Usesconv
to convert values of type'a
to an S-expression.
val sexp_of_option : ('a -> Sexplib0.Sexp.t) -> 'a option -> Sexplib0.Sexp.t
sexp_of_option conv opt
converts the valueopt
of type'a option
to an S-expression. Usesconv
to convert values of type'a
to an S-expression.
val sexp_of_pair : ('a -> Sexplib0.Sexp.t) -> ('b -> Sexplib0.Sexp.t) -> ('a * 'b) -> Sexplib0.Sexp.t
sexp_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 -> Sexplib0.Sexp.t) -> ('b -> Sexplib0.Sexp.t) -> ('c -> Sexplib0.Sexp.t) -> ('a * 'b * 'c) -> Sexplib0.Sexp.t
sexp_of_triple conv1 conv2 conv3 triple
converts a triple to an S-expression usingconv1
,conv2
, andconv3
to convert its elements.
val sexp_of_list : ('a -> Sexplib0.Sexp.t) -> 'a list -> Sexplib0.Sexp.t
sexp_of_list conv lst
converts the valuelst
of type'a list
to an S-expression. Usesconv
to convert values of type'a
to an S-expression.
val sexp_of_array : ('a -> Sexplib0.Sexp.t) -> 'a array -> Sexplib0.Sexp.t
sexp_of_array conv ar
converts the valuear
of type'a array
to an S-expression. Usesconv
to convert values of type'a
to an S-expression.
val sexp_of_hashtbl : ('a -> Sexplib0.Sexp.t) -> ('b -> Sexplib0.Sexp.t) -> ('a, 'b) Stdlib.Hashtbl.t -> Sexplib0.Sexp.t
sexp_of_hashtbl conv_key conv_value htbl
converts the valuehtbl
of type('a, 'b) Hashtbl.t
to an S-expression. Usesconv_key
to convert the hashtable keys of type'a
, andconv_value
to convert hashtable values of type'b
to S-expressions.
val sexp_of_opaque : 'a -> Sexplib0.Sexp.t
sexp_of_opaque x
converts the valuex
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) -> Sexplib0.Sexp.t
sexp_of_fun f
converts the valuef
of function type to a dummy S-expression. Functions cannot be serialized as S-expressions, but at least a placeholder can be generated for pretty-printing.
Conversion of S-expressions to OCaml-values
exception
Of_sexp_error of exn * Sexplib0.Sexp.t
Of_sexp_error (exn, sexp)
the exception raised when an S-expression could not be successfully converted to an OCaml-value.
val record_check_extra_fields : bool Stdlib.ref
record_check_extra_fields
checks for extra (= unknown) fields in record S-expressions.
val of_sexp_error : string -> Sexplib0.Sexp.t -> 'a
of_sexp_error reason sexp
- raises Of_sexp_error
(Failure reason, sexp).
val of_sexp_error_exn : exn -> Sexplib0.Sexp.t -> 'a
of_sexp_error exc sexp
- raises Of_sexp_error
(exc, sexp).
val unit_of_sexp : Sexplib0.Sexp.t -> unit
unit_of_sexp sexp
converts S-expressionsexp
to a value of typeunit
.
val bool_of_sexp : Sexplib0.Sexp.t -> bool
bool_of_sexp sexp
converts S-expressionsexp
to a value of typebool
.
val string_of_sexp : Sexplib0.Sexp.t -> string
string_of_sexp sexp
converts S-expressionsexp
to a value of typestring
.
val bytes_of_sexp : Sexplib0.Sexp.t -> bytes
bytes_of_sexp sexp
converts S-expressionsexp
to a value of typebytes
.
val char_of_sexp : Sexplib0.Sexp.t -> char
char_of_sexp sexp
converts S-expressionsexp
to a value of typechar
.
val int_of_sexp : Sexplib0.Sexp.t -> int
int_of_sexp sexp
converts S-expressionsexp
to a value of typeint
.
val float_of_sexp : Sexplib0.Sexp.t -> float
float_of_sexp sexp
converts S-expressionsexp
to a value of typefloat
.
val int32_of_sexp : Sexplib0.Sexp.t -> int32
int32_of_sexp sexp
converts S-expressionsexp
to a value of typeint32
.
val int64_of_sexp : Sexplib0.Sexp.t -> int64
int64_of_sexp sexp
converts S-expressionsexp
to a value of typeint64
.
val nativeint_of_sexp : Sexplib0.Sexp.t -> nativeint
nativeint_of_sexp sexp
converts S-expressionsexp
to a value of typenativeint
.
val ref_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a Stdlib.ref
ref_of_sexp conv sexp
converts S-expressionsexp
to a value of type'a ref
using conversion functionconv
, which converts an S-expression to a value of type'a
.
val lazy_t_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a lazy_t
lazy_t_of_sexp conv sexp
converts S-expressionsexp
to a value of type'a lazy_t
using conversion functionconv
, which converts an S-expression to a value of type'a
.
val option_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a option
option_of_sexp conv sexp
converts S-expressionsexp
to a value of type'a option
using conversion functionconv
, which converts an S-expression to a value of type'a
.
val pair_of_sexp : (Sexplib0.Sexp.t -> 'a) -> (Sexplib0.Sexp.t -> 'b) -> Sexplib0.Sexp.t -> 'a * 'b
pair_of_sexp conv1 conv2 sexp
converts S-expressionsexp
to a pair of type'a * 'b
using conversion functionsconv1
andconv2
, which convert S-expressions to values of type'a
and'b
respectively.
val triple_of_sexp : (Sexplib0.Sexp.t -> 'a) -> (Sexplib0.Sexp.t -> 'b) -> (Sexplib0.Sexp.t -> 'c) -> Sexplib0.Sexp.t -> 'a * 'b * 'c
triple_of_sexp conv1 conv2 conv3 sexp
converts S-expressionsexp
to a triple of type'a * 'b * 'c
using conversion functionsconv1
,conv2
, andconv3
, which convert S-expressions to values of type'a
,'b
, and'c
respectively.
val list_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a list
list_of_sexp conv sexp
converts S-expressionsexp
to a value of type'a list
using conversion functionconv
, which converts an S-expression to a value of type'a
.
val array_of_sexp : (Sexplib0.Sexp.t -> 'a) -> Sexplib0.Sexp.t -> 'a array
array_of_sexp conv sexp
converts S-expressionsexp
to a value of type'a array
using conversion functionconv
, which converts an S-expression to a value of type'a
.
val hashtbl_of_sexp : (Sexplib0.Sexp.t -> 'a) -> (Sexplib0.Sexp.t -> 'b) -> Sexplib0.Sexp.t -> ('a, 'b) Stdlib.Hashtbl.t
hashtbl_of_sexp conv_key conv_value sexp
converts S-expressionsexp
to a value of type('a, 'b) Hashtbl.t
using conversion functionconv_key
, which converts an S-expression to hashtable key of type'a
, and functionconv_value
, which converts an S-expression to hashtable value of type'b
.
val opaque_of_sexp : Sexplib0.Sexp.t -> 'a
opaque_of_sexp sexp
- raises Of_sexp_error
when attempting to convert an S-expression to an opaque value.
val fun_of_sexp : Sexplib0.Sexp.t -> 'a
fun_of_sexp sexp
- raises Of_sexp_error
when attempting to convert an S-expression to a function.
val sexp_of_exn : exn -> Sexplib0.Sexp.t
sexp_of_exn exc
converts exceptionexc
to an S-expression. If no suitable converter is found, the standard converter inPrintexc
will be used to generate an atomic S-expression.
val sexp_of_exn_opt : exn -> Sexplib0.Sexp.t option
sexp_of_exn_opt exc
converts exceptionexc
toSome sexp
. If no suitable converter is found,None
is returned instead.
module Exn_converter = Sexplib0.Sexp_conv.Exn_converter
include Base.Sexp.Private.Raw_grammar.Builtin
val unit_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val bool_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val string_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val bytes_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val char_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val int_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val float_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val int32_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val int64_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val nativeint_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val ref_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val lazy_t_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val option_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val list_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
val array_sexp_grammar : Sexplib0.Sexp.Private.Raw_grammar.t
include Base.Hash.Builtin
val hash_fold_nativeint : nativeint Base.Hash.folder
val hash_fold_int64 : int64 Base.Hash.folder
val hash_fold_int32 : int32 Base.Hash.folder
val hash_fold_char : char Base.Hash.folder
val hash_fold_int : int Base.Hash.folder
val hash_fold_bool : bool Base.Hash.folder
val hash_fold_string : string Base.Hash.folder
val hash_fold_float : float Base.Hash.folder
val hash_fold_unit : unit Base.Hash.folder
val hash_fold_option : 'a Base.Hash.folder -> 'a option Base.Hash.folder
val hash_fold_list : 'a Base.Hash.folder -> 'a list Base.Hash.folder
val hash_fold_lazy_t : 'a Base.Hash.folder -> 'a lazy_t Base.Hash.folder
val hash_fold_ref_frozen : 'a Base.Hash.folder -> 'a Base__.Import0.ref Base.Hash.folder
Hash support for
array
andref
is provided, but is potentially DANGEROUS, since it incorporates the current contents of the array/ref into the hash value. Because of this we add a_frozen
suffix to the function name.Hash support for
string
is also potentially DANGEROUS, but strings are mutated less often, so we don't append_frozen
to it.Also note that we don't support
bytes
.
val hash_fold_array_frozen : 'a Base.Hash.folder -> 'a array Base.Hash.folder
val hash_nativeint : nativeint -> Base.Hash.hash_value
val hash_int64 : int64 -> Base.Hash.hash_value
val hash_int32 : int32 -> Base.Hash.hash_value
val hash_char : char -> Base.Hash.hash_value
val hash_int : int -> Base.Hash.hash_value
val hash_bool : bool -> Base.Hash.hash_value
val hash_string : string -> Base.Hash.hash_value
val hash_float : float -> Base.Hash.hash_value
val hash_unit : unit -> Base.Hash.hash_value
include Base__.Ppx_compare_lib.Builtin
val compare_bool : bool Base__.Ppx_compare_lib.compare
val compare_char : char Base__.Ppx_compare_lib.compare
val compare_float : float Base__.Ppx_compare_lib.compare
val compare_int : int Base__.Ppx_compare_lib.compare
val compare_int32 : int32 Base__.Ppx_compare_lib.compare
val compare_int64 : int64 Base__.Ppx_compare_lib.compare
val compare_nativeint : nativeint Base__.Ppx_compare_lib.compare
val compare_string : string Base__.Ppx_compare_lib.compare
val compare_unit : unit Base__.Ppx_compare_lib.compare
val compare_array : 'a Base__.Ppx_compare_lib.compare -> 'a array Base__.Ppx_compare_lib.compare
val compare_list : 'a Base__.Ppx_compare_lib.compare -> 'a list Base__.Ppx_compare_lib.compare
val compare_option : 'a Base__.Ppx_compare_lib.compare -> 'a option Base__.Ppx_compare_lib.compare
val compare_ref : 'a Base__.Ppx_compare_lib.compare -> 'a Stdlib.ref Base__.Ppx_compare_lib.compare
val equal_bool : bool Base__.Ppx_compare_lib.equal
val equal_char : char Base__.Ppx_compare_lib.equal
val equal_float : float Base__.Ppx_compare_lib.equal
val equal_int : int Base__.Ppx_compare_lib.equal
val equal_int32 : int32 Base__.Ppx_compare_lib.equal
val equal_int64 : int64 Base__.Ppx_compare_lib.equal
val equal_nativeint : nativeint Base__.Ppx_compare_lib.equal
val equal_string : string Base__.Ppx_compare_lib.equal
val equal_unit : unit Base__.Ppx_compare_lib.equal
val equal_array : 'a Base__.Ppx_compare_lib.equal -> 'a array Base__.Ppx_compare_lib.equal
val equal_list : 'a Base__.Ppx_compare_lib.equal -> 'a list Base__.Ppx_compare_lib.equal
val equal_option : 'a Base__.Ppx_compare_lib.equal -> 'a option Base__.Ppx_compare_lib.equal
val equal_ref : 'a Base__.Ppx_compare_lib.equal -> 'a Stdlib.ref Base__.Ppx_compare_lib.equal
exception
Not_found_s of Sexplib0.Sexp.t