Stdlib.IntInteger values.
Integers are Sys.int_size bits wide and use two's complement representation. All operations are taken modulo 2Sys.int_size. They do not fail on overflow.
div x y is the division x / y. See Stdlib.(/) for details.
rem x y is the remainder x mod y. See Stdlib.(mod) for details.
abs x is the absolute value of x. That is x if x is positive and neg x if x is negative. Warning. This may be negative if the argument is min_int.
shift_left x n shifts x to the left by n bits. The result is unspecified if n < 0 or n > Sys.int_size.
shift_right x n shifts x to the right by n bits. This is an arithmetic shift: the sign bit of x is replicated and inserted in the vacated bits. The result is unspecified if n < 0 or n > Sys.int_size.
shift_right x n shifts x to the right by n bits. This is a logical shift: zeroes are inserted in the vacated bits regardless of the sign of x. The result is unspecified if n < 0 or n > Sys.int_size.
compare x y is Stdlib.compare x y but more efficient.
of_float x truncates x to an integer. The result is unspecified if the argument is nan or falls outside the range of representable integers.
A seeded hash function for ints, with the same output value as Hashtbl.seeded_hash. This function allows this module to be passed as argument to the functor Hashtbl.MakeSeeded.
An unseeded hash function for ints, with the same output value as Hashtbl.hash. This function allows this module to be passed as argument to the functor Hashtbl.Make.