module Int64 = struct ... end
Simple values | |
zero |
int64 |
one |
int64 |
minus_one |
int64 The 64-bit integers 0, 1, -1. |
max_int |
int64 |
min_int |
int64 |
Functions |
neg
: int64 -> int64 |
add
: int64 -> int64 -> int64 |
sub
: int64 -> int64 -> int64 |
mul
: int64 -> int64 -> int64 |
div
: int64 -> int64 -> int64 |
Division_by_zero
if the second
argument is zero.
rem
: int64 -> int64 -> int64 |
x >= 0
and y > 0
, the result
of Int64.rem x y
satisfies the following properties:
0 <= Int64.rem x y < y
and
x = Int64.add (Int64.mul (Int64.div x y) y) (Int64.rem x y)
.
If y = 0
, Int64.rem x y
raises Division_by_zero
.
If x < 0
or y < 0
, the result of Int64.rem x y
is
not specified and depends on the platform.
succ
: int64 -> int64 |
Int64.succ x
is Int64.add x Int64.one
.
pred
: int64 -> int64 |
Int64.pred x
is Int64.sub x Int64.one
.
abs
: int64 -> int64 |
logand
: int64 -> int64 -> int64 |
logor
: int64 -> int64 -> int64 |
logxor
: int64 -> int64 -> int64 |
lognot
: int64 -> int64 |
shift_left
: int64 -> int -> int64 |
Int64.shift_left x y
shifts x
to the left by y
bits.
The result is unspecified if y < 0
or y >= 64
.
shift_right
: int64 -> int -> int64 |
Int64.shift_right x y
shifts x
to the right by y
bits.
This is an arithmetic shift: the sign bit of x
is replicated
and inserted in the vacated bits.
The result is unspecified if y < 0
or y >= 64
.
shift_right_logical
: int64 -> int -> int64 |
Int64.shift_right_logical x y
shifts x
to the right by y
bits.
This is a logical shift: zeroes are inserted in the vacated bits
regardless of the sign of x
.
The result is unspecified if y < 0
or y >= 64
.
of_int
: int -> int64 |
int
) to a 64-bit integer
(type int64
).
to_int
: int64 -> int |
of_float
: float -> int64 |
Int64.min_int, Int64.max_int
.
to_float
: int64 -> float |
of_int32
: int32 -> int64 |
int32
)
to a 64-bit integer (type int64
).
to_int32
: int64 -> int32 |
of_nativeint
: nativeint -> int64 |
nativeint
)
to a 64-bit integer (type int64
).
to_nativeint
: int64 -> nativeint |
of_string
: string -> int64 |
0x
, 0o
or 0b
respectively.
Raise Failure "int_of_string"
if the given string is not
a valid representation of an integer.
to_string
: int64 -> string |
format
: string -> int64 -> string |
Int64.format fmt n
return the string representation of the
64-bit integer n
in the format specified by fmt
.
fmt
is a Printf
-style format containing exactly
one %d
, %i
, %u
, %x
, %X
or %o
conversion specification.
See the documentation of the Printf
module for more information,
bits_of_float
: float -> int64 |
float_of_bits
: int64 -> float |
int64
.