Module type Core_kernel.Stable_int63able

include Core_kernel__.Stable_module_types.S0
include Core_kernel__.Stable_module_types.S0_without_comparator
type t
include Bin_prot.Binable.S with type t := t
type t
include Bin_prot.Binable.S_only_functions with type t := t
type t
val bin_size_t : t Bin_prot.Size.sizer
val bin_write_t : t Bin_prot.Write.writer
val bin_read_t : t Bin_prot.Read.reader
val __bin_read_t__ : (int -> t) Bin_prot.Read.reader

This function only needs implementation if t exposed to be a polymorphic variant. Despite what the type reads, this does *not* produce a function after reading; instead it takes the constructor tag (int) before reading and reads the rest of the variant t afterwards.

val bin_shape_t : Bin_prot.Shape.t
val bin_writer_t : t Bin_prot.Type_class.writer
val bin_reader_t : t Bin_prot.Type_class.reader
val bin_t : t Bin_prot.Type_class.t
val compare : t -> t ->
include Ppx_sexp_conv_lib.Sexpable.S with type t := t
type t
val t_of_sexp : Sexplib0.Sexp.t -> t
val sexp_of_t : t -> Sexplib0.Sexp.t
include Comparator.Stable.V1.S with type t := t
type t
type comparator_witness
val comparator : (tcomparator_witness) Comparator.Stable.V1.comparator
val to_int63 : t -> Int63.t

to_int63 and of_int63_exn encode t for use in wire protocols; they are intended to avoid allocation on 64-bit machines and should be implemented efficiently. of_int63_exn (to_int63 t) = t for all t; of_int63_exn raises for inputs not produced by to_int63.

val of_int63_exn : Int63.t -> t