sanctuary-int
A collection of functions which operate on 32-bit signed integers.
API
Int :: Type
The Int type represents integers in the range [-2^31 .. 2^31).
NonZeroInt :: Type
The NonZeroInt type represents non-zero integers in the range [-2^31 .. 2^31).
add :: Int -> Int -> Int
Returns the sum of its two arguments.
> 23
sub :: Int -> Int -> Int
Returns the result of subtracting its first argument from its second argument.
> 10099
mul :: Int -> Int -> Int
Returns the product of its two arguments.
> 742
quot :: NonZeroInt -> Int -> Int
Returns the result of dividing its second argument by its first argument, truncating towards zero.
Throws if the divisor is zero.
See also div
.
> 428 > 42-8 > -42-8 > -428
rem :: NonZeroInt -> Int -> Int
Integer remainder, satisfying:
quot (y) (x) * y + rem (y) (x) === x
Throws if the divisor is zero.
See also mod
.
> 422 > 422 > -42-2 > -42-2
div :: NonZeroInt -> Int -> Int
Returns the result of dividing its second argument by its first argument, truncating towards negative infinity.
Throws if the divisor is zero.
See also quot
.
> 428 > 42-9 > -42-9 > -428
mod :: NonZeroInt -> Int -> Int
Integer modulus, satisfying:
div (y) (x) * y + mod (y) (x) === x
Throws if the divisor is zero.
See also rem
.
> 422 > 42-3 > -423 > -42-2
and :: Int -> Int -> Int
Bitwise AND. Returns an Int with a one at each bit position at which both arguments have a one.
> 0b10100b1000
or :: Int -> Int -> Int
Bitwise OR. Returns an Int with a one at each bit position at which at least one argument has a one.
> 0b10100b1110
xor :: Int -> Int -> Int
Bitwise XOR. Returns an Int with a one at each bit position at which exactly one argument has a one.
> 0b10100b0110
not :: Int -> Int
Bitwise NOT, satisfying:
not (x) === -(x + 1)
> -43
even :: Int -> Boolean
Returns true
if its argument is even; false
if it is odd.
> true
odd :: Int -> Boolean
Returns true
if its argument is odd; false
if it is even.
> false