module Set : Core_set
module Map : Core_map
module Array : Core_array
include Array.Infix
module Hashtbl : Core_hashtbl
module String : Core_string
module List : sig .. end
include Core_list
val stable_dedup : 'a list -> 'a list
stable_dedup Same as dedup but maintains the order of the list and doesn't allow compare function to be specified (otherwise, the implementation in terms of Set.t would hide a heavyweight functor instantiation at each call).
val stable_dedup_staged : compare:('a -> 'a -> int) -> ('a list -> 'a list) Staged.t
include List.Infix
module Queue : Core_queue
module Linked_queue : Linked_queue
module Random : Core_random
module Char : Core_char
module Ordering : Ordering
module Bool : Bool
module Int : Core_int
include Int.Infix
module Int32 : Core_int32
module Int64 : Core_int64
module Nativeint : Core_nativeint
module Lazy : Core_lazy
module Field : Core_field
module Ref : Ref
include Common
include Interfaces.Robustly_comparable with type t := float
include String.Infix
val round : ?dir:[ `Down | `Nearest | `Up | `Zero ] -> Float.t -> Float.t
include Interfaces
module Sexp : Core_sexp
include sig .. end
type bigstring = Sexplib.Conv.bigstring
type mat = Sexplib.Conv.mat
type vec = Sexplib.Conv.vec
val sexp_of_opaque : 'a -> Sexp.t
val opaque_of_sexp : Sexp.t -> 'a
val sexp_of_pair : ('a -> Sexp.t) -> ('b -> Sexp.t) -> 'a * 'b -> Sexp.t
val pair_of_sexp : (Sexp.t -> 'a) -> (Sexp.t -> 'b) -> Sexp.t -> 'a * 'b
exception Of_sexp_error of exn * Sexp.t
val of_sexp_error : string -> Sexp.t -> 'a
val of_sexp_error_exn : exn -> Sexp.t -> 'a
val bigstring_of_sexp : Sexplib.Sexp.t -> bigstring
val sexp_of_bigstring : bigstring -> Sexplib.Sexp.t
val mat_of_sexp : Sexplib.Sexp.t -> mat
val sexp_of_mat : mat -> Sexplib.Sexp.t
val vec_of_sexp : Sexplib.Sexp.t -> vec
val sexp_of_vec : vec -> Sexplib.Sexp.t
val printf : ('a, out_channel, unit) format -> 'a
val bprintf : Buffer.t -> ('a, Buffer.t, unit) format -> 'a
val eprintf : ('a, out_channel, unit) format -> 'a
val fprintf : out_channel -> ('a, out_channel, unit) format -> 'a
val sprintf : ('a, unit, string) format -> 'a
val ksprintf : (string -> 'a) -> ('b, unit, string, 'a) format4 -> 'b
include Result.Export
include Typerep_kernel.Std_internal
include sig .. end with type array := 'a array with type bool := bool with type char := char with type float := float with type int := int with type int32 := int32 with type int64 := int64 with type list := 'a list with type nativeint := nativeint with type option := 'a option with type string := string with type lazy_t := 'a lazy_t with type ref := 'a ref with type unit := unit
type 'a array
val typerep_of_array : 'a Typerep_kernel.Std.Typerep.t -> 'a array Typerep_kernel.Std.Typerep.t
val typename_of_array : 'a Typerep_kernel.Std.Typename.t -> 'a array Typerep_kernel.Std.Typename.t
type bool
val typerep_of_bool : bool Typerep_kernel.Std.Typerep.t
val typename_of_bool : bool Typerep_kernel.Std.Typename.t
type char
val typerep_of_char : char Typerep_kernel.Std.Typerep.t
val typename_of_char : char Typerep_kernel.Std.Typename.t
type float
val typerep_of_float : float Typerep_kernel.Std.Typerep.t
val typename_of_float : float Typerep_kernel.Std.Typename.t
type int
val typerep_of_int : int Typerep_kernel.Std.Typerep.t
val typename_of_int : int Typerep_kernel.Std.Typename.t
type int32
val typerep_of_int32 : int32 Typerep_kernel.Std.Typerep.t
val typename_of_int32 : int32 Typerep_kernel.Std.Typename.t
type int64
val typerep_of_int64 : int64 Typerep_kernel.Std.Typerep.t
val typename_of_int64 : int64 Typerep_kernel.Std.Typename.t
type 'a lazy_t
val typerep_of_lazy_t : 'a Typerep_kernel.Std.Typerep.t -> 'a lazy_t Typerep_kernel.Std.Typerep.t
val typename_of_lazy_t : 'a Typerep_kernel.Std.Typename.t -> 'a lazy_t Typerep_kernel.Std.Typename.t
type 'a list
val typerep_of_list : 'a Typerep_kernel.Std.Typerep.t -> 'a list Typerep_kernel.Std.Typerep.t
val typename_of_list : 'a Typerep_kernel.Std.Typename.t -> 'a list Typerep_kernel.Std.Typename.t
type nativeint
val typerep_of_nativeint : nativeint Typerep_kernel.Std.Typerep.t
val typename_of_nativeint : nativeint Typerep_kernel.Std.Typename.t
type 'a option
val typerep_of_option : 'a Typerep_kernel.Std.Typerep.t -> 'a option Typerep_kernel.Std.Typerep.t
val typename_of_option : 'a Typerep_kernel.Std.Typename.t -> 'a option Typerep_kernel.Std.Typename.t
type string
val typerep_of_string : string Typerep_kernel.Std.Typerep.t
val typename_of_string : string Typerep_kernel.Std.Typename.t
type 'a ref
val typerep_of_ref : 'a Typerep_kernel.Std.Typerep.t -> 'a ref Typerep_kernel.Std.Typerep.t
val typename_of_ref : 'a Typerep_kernel.Std.Typename.t -> 'a ref Typerep_kernel.Std.Typename.t
type unit
val typerep_of_unit : unit Typerep_kernel.Std.Typerep.t
val typename_of_unit : unit Typerep_kernel.Std.Typename.t
val array_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a array
val sexp_of_array : ('a -> Sexplib.Sexp.t) -> 'a array -> Sexplib.Sexp.t
val bin_array : 'a Bin_prot.Type_class.t -> 'a array Bin_prot.Type_class.t
val bin_read_array : 'a Bin_prot.Read.reader -> 'a array Bin_prot.Read.reader
val __bin_read_array__ : 'a Bin_prot.Read.reader -> (int -> 'a array) Bin_prot.Read.reader
val bin_reader_array : 'a Bin_prot.Type_class.reader -> 'a array Bin_prot.Type_class.reader
val bin_size_array : 'a Bin_prot.Size.sizer -> 'a array Bin_prot.Size.sizer
val bin_write_array : 'a Bin_prot.Write.writer -> 'a array Bin_prot.Write.writer
val bin_writer_array : 'a Bin_prot.Type_class.writer -> 'a array Bin_prot.Type_class.writer
val bool_of_sexp : Sexplib.Sexp.t -> bool
val sexp_of_bool : bool -> Sexplib.Sexp.t
val compare_bool : bool -> bool -> int
val bin_bool : bool Bin_prot.Type_class.t
val bin_read_bool : bool Bin_prot.Read.reader
val __bin_read_bool__ : (int -> bool) Bin_prot.Read.reader
val bin_reader_bool : bool Bin_prot.Type_class.reader
val bin_size_bool : bool Bin_prot.Size.sizer
val bin_write_bool : bool Bin_prot.Write.writer
val bin_writer_bool : bool Bin_prot.Type_class.writer
val char_of_sexp : Sexplib.Sexp.t -> char
val sexp_of_char : char -> Sexplib.Sexp.t
val compare_char : char -> char -> int
val bin_char : char Bin_prot.Type_class.t
val bin_read_char : char Bin_prot.Read.reader
val __bin_read_char__ : (int -> char) Bin_prot.Read.reader
val bin_reader_char : char Bin_prot.Type_class.reader
val bin_size_char : char Bin_prot.Size.sizer
val bin_write_char : char Bin_prot.Write.writer
val bin_writer_char : char Bin_prot.Type_class.writer
val float_of_sexp : Sexplib.Sexp.t -> float
val sexp_of_float : float -> Sexplib.Sexp.t
val compare_float : float -> float -> int
val bin_float : float Bin_prot.Type_class.t
val bin_read_float : float Bin_prot.Read.reader
val __bin_read_float__ : (int -> float) Bin_prot.Read.reader
val bin_reader_float : float Bin_prot.Type_class.reader
val bin_size_float : float Bin_prot.Size.sizer
val bin_write_float : float Bin_prot.Write.writer
val bin_writer_float : float Bin_prot.Type_class.writer
val int_of_sexp : Sexplib.Sexp.t -> int
val sexp_of_int : int -> Sexplib.Sexp.t
val compare_int : int -> int -> int
val bin_int : int Bin_prot.Type_class.t
val bin_read_int : int Bin_prot.Read.reader
val __bin_read_int__ : (int -> int) Bin_prot.Read.reader
val bin_reader_int : int Bin_prot.Type_class.reader
val bin_size_int : int Bin_prot.Size.sizer
val bin_write_int : int Bin_prot.Write.writer
val bin_writer_int : int Bin_prot.Type_class.writer
val int32_of_sexp : Sexplib.Sexp.t -> int32
val sexp_of_int32 : int32 -> Sexplib.Sexp.t
val compare_int32 : int32 -> int32 -> int
val bin_int32 : int32 Bin_prot.Type_class.t
val bin_read_int32 : int32 Bin_prot.Read.reader
val __bin_read_int32__ : (int -> int32) Bin_prot.Read.reader
val bin_reader_int32 : int32 Bin_prot.Type_class.reader
val bin_size_int32 : int32 Bin_prot.Size.sizer
val bin_write_int32 : int32 Bin_prot.Write.writer
val bin_writer_int32 : int32 Bin_prot.Type_class.writer
val int64_of_sexp : Sexplib.Sexp.t -> int64
val sexp_of_int64 : int64 -> Sexplib.Sexp.t
val compare_int64 : int64 -> int64 -> int
val bin_int64 : int64 Bin_prot.Type_class.t
val bin_read_int64 : int64 Bin_prot.Read.reader
val __bin_read_int64__ : (int -> int64) Bin_prot.Read.reader
val bin_reader_int64 : int64 Bin_prot.Type_class.reader
val bin_size_int64 : int64 Bin_prot.Size.sizer
val bin_write_int64 : int64 Bin_prot.Write.writer
val bin_writer_int64 : int64 Bin_prot.Type_class.writer
val lazy_t_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a lazy_t
val sexp_of_lazy_t : ('a -> Sexplib.Sexp.t) -> 'a lazy_t -> Sexplib.Sexp.t
val bin_lazy_t : 'a Bin_prot.Type_class.t -> 'a lazy_t Bin_prot.Type_class.t
val bin_read_lazy_t : 'a Bin_prot.Read.reader -> 'a lazy_t Bin_prot.Read.reader
val __bin_read_lazy_t__ : 'a Bin_prot.Read.reader -> (int -> 'a lazy_t) Bin_prot.Read.reader
val bin_reader_lazy_t : 'a Bin_prot.Type_class.reader -> 'a lazy_t Bin_prot.Type_class.reader
val bin_size_lazy_t : 'a Bin_prot.Size.sizer -> 'a lazy_t Bin_prot.Size.sizer
val bin_write_lazy_t : 'a Bin_prot.Write.writer -> 'a lazy_t Bin_prot.Write.writer
val bin_writer_lazy_t : 'a Bin_prot.Type_class.writer -> 'a lazy_t Bin_prot.Type_class.writer
val list_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a list
val sexp_of_list : ('a -> Sexplib.Sexp.t) -> 'a list -> Sexplib.Sexp.t
val bin_list : 'a Bin_prot.Type_class.t -> 'a list Bin_prot.Type_class.t
val bin_read_list : 'a Bin_prot.Read.reader -> 'a list Bin_prot.Read.reader
val __bin_read_list__ : 'a Bin_prot.Read.reader -> (int -> 'a list) Bin_prot.Read.reader
val bin_reader_list : 'a Bin_prot.Type_class.reader -> 'a list Bin_prot.Type_class.reader
val bin_size_list : 'a Bin_prot.Size.sizer -> 'a list Bin_prot.Size.sizer
val bin_write_list : 'a Bin_prot.Write.writer -> 'a list Bin_prot.Write.writer
val bin_writer_list : 'a Bin_prot.Type_class.writer -> 'a list Bin_prot.Type_class.writer
val nativeint_of_sexp : Sexplib.Sexp.t -> nativeint
val sexp_of_nativeint : nativeint -> Sexplib.Sexp.t
val compare_nativeint : nativeint -> nativeint -> int
val bin_nativeint : nativeint Bin_prot.Type_class.t
val bin_read_nativeint : nativeint Bin_prot.Read.reader
val __bin_read_nativeint__ : (int -> nativeint) Bin_prot.Read.reader
val bin_reader_nativeint : nativeint Bin_prot.Type_class.reader
val bin_size_nativeint : nativeint Bin_prot.Size.sizer
val bin_write_nativeint : nativeint Bin_prot.Write.writer
val bin_writer_nativeint : nativeint Bin_prot.Type_class.writer
val option_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a option
val sexp_of_option : ('a -> Sexplib.Sexp.t) -> 'a option -> Sexplib.Sexp.t
val bin_option : 'a Bin_prot.Type_class.t -> 'a option Bin_prot.Type_class.t
val bin_read_option : 'a Bin_prot.Read.reader -> 'a option Bin_prot.Read.reader
val __bin_read_option__ : 'a Bin_prot.Read.reader -> (int -> 'a option) Bin_prot.Read.reader
val bin_reader_option : 'a Bin_prot.Type_class.reader -> 'a option Bin_prot.Type_class.reader
val bin_size_option : 'a Bin_prot.Size.sizer -> 'a option Bin_prot.Size.sizer
val bin_write_option : 'a Bin_prot.Write.writer -> 'a option Bin_prot.Write.writer
val bin_writer_option : 'a Bin_prot.Type_class.writer -> 'a option Bin_prot.Type_class.writer
val string_of_sexp : Sexplib.Sexp.t -> string
val sexp_of_string : string -> Sexplib.Sexp.t
val compare_string : string -> string -> int
val bin_string : string Bin_prot.Type_class.t
val bin_read_string : string Bin_prot.Read.reader
val __bin_read_string__ : (int -> string) Bin_prot.Read.reader
val bin_reader_string : string Bin_prot.Type_class.reader
val bin_size_string : string Bin_prot.Size.sizer
val bin_write_string : string Bin_prot.Write.writer
val bin_writer_string : string Bin_prot.Type_class.writer
val ref_of_sexp : (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'a ref
val sexp_of_ref : ('a -> Sexplib.Sexp.t) -> 'a ref -> Sexplib.Sexp.t
val bin_ref : 'a Bin_prot.Type_class.t -> 'a ref Bin_prot.Type_class.t
val bin_read_ref : 'a Bin_prot.Read.reader -> 'a ref Bin_prot.Read.reader
val __bin_read_ref__ : 'a Bin_prot.Read.reader -> (int -> 'a ref) Bin_prot.Read.reader
val bin_reader_ref : 'a Bin_prot.Type_class.reader -> 'a ref Bin_prot.Type_class.reader
val bin_size_ref : 'a Bin_prot.Size.sizer -> 'a ref Bin_prot.Size.sizer
val bin_write_ref : 'a Bin_prot.Write.writer -> 'a ref Bin_prot.Write.writer
val bin_writer_ref : 'a Bin_prot.Type_class.writer -> 'a ref Bin_prot.Type_class.writer
val unit_of_sexp : Sexplib.Sexp.t -> unit
val sexp_of_unit : unit -> Sexplib.Sexp.t
val compare_unit : unit -> unit -> int
val bin_unit : unit Bin_prot.Type_class.t
val bin_read_unit : unit Bin_prot.Read.reader
val __bin_read_unit__ : (int -> unit) Bin_prot.Read.reader
val bin_reader_unit : unit Bin_prot.Type_class.reader
val bin_size_unit : unit Bin_prot.Size.sizer
val bin_write_unit : unit Bin_prot.Write.writer
val bin_writer_unit : unit Bin_prot.Type_class.writer
val sexp_of_exn : Exn.t -> Sexplib.Sexp.t
type 'a sexp_array = 'a array
module Typename_of_sexp_array : Typerep_kernel.Std.Make_typename.Make1(sig .. end)
val typename_of_sexp_array : 'a Typerep_kernel.Typename.t -> 'a sexp_array Typerep_kernel.Typename.t
val typerep_of_sexp_array : 'a.
  'a Typerep_kernel.Std.Typerep.t ->
  'a sexp_array Typerep_kernel.Std.Typerep.t
val compare_sexp_array : 'a. ('a -> 'a -> int) -> 'a sexp_array -> 'a sexp_array -> int
val bin_size_sexp_array : 'a Bin_prot.Size.sizer -> 'a array -> int
val bin_write_sexp_array : 'a Bin_prot.Write.writer ->
Bin_prot.Common.buf ->
pos:Bin_prot.Common.pos -> 'a array -> Bin_prot.Common.pos
val bin_writer_sexp_array : 'a Bin_prot.Type_class.writer -> 'a array Bin_prot.Type_class.writer
val __bin_read_sexp_array__ : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> int -> 'a array
val bin_read_sexp_array : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> 'a array
val bin_reader_sexp_array : 'a Bin_prot.Type_class.reader -> 'a array Bin_prot.Type_class.reader
val bin_sexp_array : 'a Bin_prot.Type_class.t -> 'a array Bin_prot.Type_class.t
type sexp_bool = bool
module Typename_of_sexp_bool : Typerep_kernel.Std.Make_typename.Make0(sig .. end)
val typename_of_sexp_bool : sexp_bool Typerep_kernel.Typename.t
val typerep_of_sexp_bool : sexp_bool Typerep_kernel.Std.Typerep.t
val compare_sexp_bool : sexp_bool -> sexp_bool -> int
val bin_size_sexp_bool : bool -> int
val bin_write_sexp_bool : Bin_prot.Common.buf -> pos:Bin_prot.Common.pos -> bool -> Bin_prot.Common.pos
val bin_writer_sexp_bool : bool Bin_prot.Type_class.writer
val __bin_read_sexp_bool__ : Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> int -> bool
val bin_read_sexp_bool : Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> bool
val bin_reader_sexp_bool : bool Bin_prot.Type_class.reader
val bin_sexp_bool : bool Bin_prot.Type_class.t
type 'a sexp_list = 'a list
module Typename_of_sexp_list : Typerep_kernel.Std.Make_typename.Make1(sig .. end)
val typename_of_sexp_list : 'a Typerep_kernel.Typename.t -> 'a sexp_list Typerep_kernel.Typename.t
val typerep_of_sexp_list : 'a.
  'a Typerep_kernel.Std.Typerep.t ->
  'a sexp_list Typerep_kernel.Std.Typerep.t
val compare_sexp_list : 'a. ('a -> 'a -> int) -> 'a sexp_list -> 'a sexp_list -> int
val bin_size_sexp_list : 'a Bin_prot.Size.sizer -> 'a list -> int
val bin_write_sexp_list : 'a Bin_prot.Write.writer ->
Bin_prot.Common.buf ->
pos:Bin_prot.Common.pos -> 'a list -> Bin_prot.Common.pos
val bin_writer_sexp_list : 'a Bin_prot.Type_class.writer -> 'a list Bin_prot.Type_class.writer
val __bin_read_sexp_list__ : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> int -> 'a list
val bin_read_sexp_list : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> 'a list
val bin_reader_sexp_list : 'a Bin_prot.Type_class.reader -> 'a list Bin_prot.Type_class.reader
val bin_sexp_list : 'a Bin_prot.Type_class.t -> 'a list Bin_prot.Type_class.t
type 'a sexp_option = 'a option
module Typename_of_sexp_option : Typerep_kernel.Std.Make_typename.Make1(sig .. end)
val typename_of_sexp_option : 'a Typerep_kernel.Typename.t -> 'a sexp_option Typerep_kernel.Typename.t
val typerep_of_sexp_option : 'a.
  'a Typerep_kernel.Std.Typerep.t ->
  'a sexp_option Typerep_kernel.Std.Typerep.t
val compare_sexp_option : 'a. ('a -> 'a -> int) -> 'a sexp_option -> 'a sexp_option -> int
val bin_size_sexp_option : 'a Bin_prot.Size.sizer -> 'a option -> int
val bin_write_sexp_option : 'a Bin_prot.Write.writer ->
Bin_prot.Common.buf ->
pos:Bin_prot.Common.pos -> 'a option -> Bin_prot.Common.pos
val bin_writer_sexp_option : 'a Bin_prot.Type_class.writer -> 'a option Bin_prot.Type_class.writer
val __bin_read_sexp_option__ : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> int -> 'a option
val bin_read_sexp_option : 'a Bin_prot.Read.reader ->
Bin_prot.Common.buf -> pos_ref:Bin_prot.Common.pos_ref -> 'a option
val bin_reader_sexp_option : 'a Bin_prot.Type_class.reader -> 'a option Bin_prot.Type_class.reader
val bin_sexp_option : 'a Bin_prot.Type_class.t -> 'a option Bin_prot.Type_class.t
type 'a sexp_opaque = 'a
module Typename_of_sexp_opaque : Typerep_kernel.Std.Make_typename.Make1(sig .. end)
val typename_of_sexp_opaque : 'a Typerep_kernel.Typename.t -> 'a sexp_opaque Typerep_kernel.Typename.t
val typerep_of_sexp_opaque : 'a.
  'a Typerep_kernel.Std.Typerep.t ->
  'a sexp_opaque Typerep_kernel.Std.Typerep.t
val compare_sexp_opaque : 'a. ('a -> 'a -> int) -> 'a sexp_opaque -> 'a sexp_opaque -> int
val bin_size_sexp_opaque : ('a -> 'b) -> 'a -> 'b
val bin_write_sexp_opaque : ('a -> pos:'b -> 'c -> 'd) -> 'a -> pos:'b -> 'c -> 'd
val bin_writer_sexp_opaque : 'a Bin_prot.Type_class.writer -> 'a Bin_prot.Type_class.writer
val __bin_read_sexp_opaque__ : 'a -> 'b -> pos_ref:Bin_prot.Common.pos ref -> 'c -> 'd
val bin_read_sexp_opaque : ('a -> pos_ref:'b -> 'c) -> 'a -> pos_ref:'b -> 'c
val bin_reader_sexp_opaque : 'a Bin_prot.Type_class.reader -> 'a Bin_prot.Type_class.reader
val bin_sexp_opaque : 'a Bin_prot.Type_class.t -> 'a Bin_prot.Type_class.t