package grace
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=6948979d6ffb5e596773baead81e9ceef36726d6956261bdd62abb2666a45bfc
sha512=db8b39cc9a77d919ab3123bb4047bb6c672c61db9fc6810951e267b2b113c4ac07266ef57188c6db0c02cb4d43d054204cd66ebc91648dbd1da1228022b0e67b
doc/grace.std/Grace_std/Int/index.html
Module Grace_std.IntSource
include module type of struct include T end
Integers
The type for integer values.
zero is the integer 0.
one is the integer 1.
minus_one is the integer -1.
neg x is ~-x.
add x y is the addition x + y.
sub x y is the subtraction x - y.
mul x y is the multiplication x * y.
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.
succ x is add x 1.
pred x is sub x 1.
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.
max_int is the greatest representable integer, 2Sys.int_size - 1-1.
min_int is the smallest representable integer, -2Sys.int_size - 1.
logand x y is the bitwise logical and of x and y.
logor x y is the bitwise logical or of x and y.
logxor x y is the bitwise logical exclusive or of x and y.
lognot x is the bitwise logical negation of x.
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.
Predicates and comparisons
Converting
to_float x is x as a floating point number.
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.
to_string x is the written representation of x in decimal.
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.