Module Bigint
gen produces integers representable within Quickcheck.size bytes, with a random sign.
include Core_kernel.Int_intf.S_unbounded with type t := t
include Core_kernel.Int_intf.Extension
include Bin_prot.Binable.S with type t := t
include Bin_prot.Binable.S_only_functions with type t := t
val bin_size_t : t Bin_prot.Size.sizerval bin_write_t : t Bin_prot.Write.writerval bin_read_t : t Bin_prot.Read.readerval __bin_read_t__ : (int -> t) Bin_prot.Read.readerThis function only needs implementation if
texposed 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 varianttafterwards.
val bin_shape_t : Bin_prot.Shape.tval bin_writer_t : t Bin_prot.Type_class.writerval bin_reader_t : t Bin_prot.Type_class.readerval bin_t : t Bin_prot.Type_class.t
include Typerep_lib.Typerepable.S with type t := t
val typerep_of_t : t Typerep_lib.Std_internal.Typerep.tval typename_of_t : t Typerep_lib.Typename.t
include Core_kernel.Identifiable.S with type t := t
include Bin_prot.Binable.S with type t := t
include Bin_prot.Binable.S_only_functions with type t := t
val bin_size_t : t Bin_prot.Size.sizerval bin_write_t : t Bin_prot.Write.writerval bin_read_t : t Bin_prot.Read.readerval __bin_read_t__ : (int -> t) Bin_prot.Read.readerThis function only needs implementation if
texposed 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 varianttafterwards.
val bin_shape_t : Bin_prot.Shape.tval bin_writer_t : t Bin_prot.Type_class.writerval bin_reader_t : t Bin_prot.Type_class.readerval bin_t : t Bin_prot.Type_class.t
val hash_fold_t : Base.Hash.state -> t -> Base.Hash.stateval hash : t -> Base.Hash.hash_value
include Ppx_sexp_conv_lib.Sexpable.S with type t := t
val t_of_sexp : Sexplib0.Sexp.t -> tval sexp_of_t : t -> Sexplib0.Sexp.t
include Core_kernel.Identifiable.S_common with type t := t
val compare : t -> t -> Core_kernel__.Import.intval hash_fold_t : Base.Hash.state -> t -> Base.Hash.stateval hash : t -> Base.Hash.hash_valueval sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
include Core_kernel__.Import.Stringable.S with type t := t
include Core_kernel__.Import.Pretty_printer.S with type t := t
val pp : Base.Formatter.t -> t -> unit
include Core_kernel.Comparable.S_binable with type t := t
include Core_kernel__.Comparable_intf.S_common
include Base.Comparable.S
include Base__.Comparable_intf.Polymorphic_compare
val ascending : t -> t -> intascendingis identical tocompare.descending x y = ascending y x. These are intended to be mnemonic when used likeList.sort ~compare:ascendingandList.sort ~cmp:descending, since they cause the list to be sorted in ascending or descending order, respectively.
val descending : t -> t -> intval between : t -> low:t -> high:t -> boolbetween t ~low ~highmeanslow <= t <= high
val clamp_exn : t -> min:t -> max:t -> tclamp_exn t ~min ~maxreturnst', the closest value totsuch thatbetween t' ~low:min ~high:maxis true.Raises if
not (min <= max).
val clamp : t -> min:t -> max:t -> t Base.Or_error.t
include Base.Comparator.S with type t := t
val comparator : (t, comparator_witness) Base.Comparator.comparator
include Base__.Comparable_intf.Validate with type t := t
val validate_lbound : min:t Base.Maybe_bound.t -> t Base.Validate.checkval validate_ubound : max:t Base.Maybe_bound.t -> t Base.Validate.checkval validate_bound : min:t Base.Maybe_bound.t -> max:t Base.Maybe_bound.t -> t Base.Validate.check
module Replace_polymorphic_compare : Core_kernel__.Comparable_intf.Polymorphic_compare with type t := tinclude Core_kernel__.Comparable_intf.Map_and_set_binable with type t := t with type comparator_witness := comparator_witness
include Core_kernel.Comparator.S with type t := t
val comparator : (t, comparator_witness) Core_kernel.Comparator.comparator
module Map : Core_kernel.Map.S_binable with type Key.t = t with type Key.comparator_witness = comparator_witnessmodule Set : Core_kernel.Set.S_binable with type Elt.t = t with type Elt.comparator_witness = comparator_witnessinclude Core_kernel.Hashable.S_binable with type t := t
val hash_fold_t : Base.Hash.state -> t -> Base.Hash.stateval hash : t -> Base.Hash.hash_value
val hashable : t Core_kernel.Hashtbl.Hashable.t
module Table : Core_kernel.Hashtbl.S_binable with type key = tmodule Hash_set : Core_kernel.Hash_set.S_binable with type elt = tmodule Hash_queue : Core_kernel.Hash_queue.S with type Key.t = tinclude Core_kernel.Quickcheckable.S_int with type t := t
include Core_kernel.Quickcheck_intf.S
val quickcheck_generator : t Base_quickcheck.Generator.tval quickcheck_observer : t Base_quickcheck.Observer.tval quickcheck_shrinker : t Base_quickcheck.Shrinker.t
val gen_incl : t -> t -> t Base_quickcheck.Generator.tgen_incl lower_bound upper_boundproduces values betweenlower_boundandupper_bound, inclusive. It uses an ad hoc distribution that stresses boundary conditions more often than a uniform distribution, while still able to produce any value in the range. Raises iflower_bound > upper_bound.
val gen_uniform_incl : t -> t -> t Base_quickcheck.Generator.tgen_uniform_incl lower_bound upper_boundproduces a generator for values uniformly distributed betweenlower_boundandupper_bound, inclusive. Raises iflower_bound > upper_bound.
val gen_log_uniform_incl : t -> t -> t Base_quickcheck.Generator.tgen_log_uniform_incl lower_bound upper_boundproduces a generator for values betweenlower_boundandupper_bound, inclusive, where the number of bits used to represent the value is uniformly distributed. Raises if(lower_bound < 0) || (lower_bound > upper_bound).
val gen_log_incl : t -> t -> t Base_quickcheck.Generator.tgen_log_incl lower_bound upper_boundis likegen_log_uniform_incl, but weighted slightly more in favor of generatinglower_boundandupper_boundspecifically.
include Base.Int.S_unbounded with type t := t with type comparator_witness := comparator_witness with module Hex := Hex
val hash_fold_t : Base.Hash.state -> t -> Base.Hash.stateval hash : t -> Base.Hash.hash_value
include Base.Sexpable.S with type t := t
val t_of_sexp : Base.Sexp.t -> tval sexp_of_t : t -> Base.Sexp.t
include Base.Identifiable.S with type t := t
val hash_fold_t : Base.Hash.state -> t -> Base.Hash.stateval hash : t -> Base.Hash.hash_value
include Base.Sexpable.S with type t := t
val t_of_sexp : Base.Sexp.t -> tval sexp_of_t : t -> Base.Sexp.t
include Base.Stringable.S with type t := t
include Base.Comparable.S with type t := t
include Base__.Comparable_intf.Polymorphic_compare
val ascending : t -> t -> intascendingis identical tocompare.descending x y = ascending y x. These are intended to be mnemonic when used likeList.sort ~compare:ascendingandList.sort ~cmp:descending, since they cause the list to be sorted in ascending or descending order, respectively.
val descending : t -> t -> intval between : t -> low:t -> high:t -> boolbetween t ~low ~highmeanslow <= t <= high
val clamp_exn : t -> min:t -> max:t -> tclamp_exn t ~min ~maxreturnst', the closest value totsuch thatbetween t' ~low:min ~high:maxis true.Raises if
not (min <= max).
val clamp : t -> min:t -> max:t -> t Base.Or_error.t
include Base.Comparator.S with type t := t
val comparator : (t, comparator_witness) Base.Comparator.comparator
include Base__.Comparable_intf.Validate with type t := t
val validate_lbound : min:t Base.Maybe_bound.t -> t Base.Validate.checkval validate_ubound : max:t Base.Maybe_bound.t -> t Base.Validate.checkval validate_bound : min:t Base.Maybe_bound.t -> max:t Base.Maybe_bound.t -> t Base.Validate.check
include Base.Comparable.With_zero with type t := t
val validate_positive : t Base.Validate.checkval validate_non_negative : t Base.Validate.checkval validate_negative : t Base.Validate.checkval validate_non_positive : t Base.Validate.checkval is_positive : t -> boolval is_non_negative : t -> boolval is_negative : t -> boolval is_non_positive : t -> boolval sign : t -> Base__.Sign0.tReturns
Neg,Zero, orPosin a way consistent with the above functions.
val to_string_hum : ?delimiter:char -> t -> stringdelimiteris an underscore by default.
Infix operators and constants
val zero : tval one : tval minus_one : tval (+) : t -> t -> tval (-) : t -> t -> tval (*) : t -> t -> tval (**) : t -> t -> tInteger exponentiation
Other common functions
include Base__.Int_intf.Round with type t := t
Successor and predecessor functions
Exponentiation
Bit-wise logical operations
Bit-shifting operations
The results are unspecified for negative shifts and shifts >= num_bits.
Increment and decrement functions for integer references
val decr : t Base__.Import.ref -> unitval incr : t Base__.Import.ref -> unit
Conversion functions to related integer types
val of_int32_exn : int32 -> tval to_int32_exn : t -> int32val of_int64_exn : int64 -> tval to_int64 : t -> int64val of_nativeint_exn : nativeint -> tval to_nativeint_exn : t -> nativeintval of_float_unchecked : float -> tof_float_uncheckedtruncates the given floating point number to an integer, rounding towards zero. The result is unspecified if the argument is nan or falls outside the range of representable integers.
module O : Base__.Int_intf.Operators_unbounded with type t := tA sub-module designed to be opened to make working with ints more convenient.
val to_int64_exn : t -> Core_kernel.Int64.tval to_int : t -> int optionval to_int32 : t -> Core_kernel.Int32.t optionval to_int64 : t -> Core_kernel.Int64.t optionval to_nativeint : t -> nativeint optionval of_int : int -> tval of_int32 : Core_kernel.Int32.t -> tval of_int64 : Core_kernel.Int64.t -> tval of_nativeint : nativeint -> tval to_zarith_bigint : t -> Bigint__.Zarith.Z.tval of_zarith_bigint : Bigint__.Zarith.Z.t -> tval random : ?state:Core_kernel.Random.State.t -> t -> trandom tproduces a value uniformly distributed betweenzero(inclusive) andt(exclusive), or raises ift <= zero.
val gen_positive : t Core_kernel.Quickcheck.Generator.tval gen_negative : t Core_kernel.Quickcheck.Generator.t
module Stable : sig ... end