summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--stdlib/int32.ml34
-rw-r--r--stdlib/int32.mli50
-rw-r--r--stdlib/int64.ml44
-rw-r--r--stdlib/int64.mli59
4 files changed, 94 insertions, 93 deletions
diff --git a/stdlib/int32.ml b/stdlib/int32.ml
index ab407aa8a1..40beb146c4 100644
--- a/stdlib/int32.ml
+++ b/stdlib/int32.ml
@@ -14,20 +14,20 @@
(* Module [Int32]: 32-bit integers *)
-external neg: int32 -> int32 = "%int32_neg"
-external add: int32 -> int32 -> int32 = "%int32_add"
-external sub: int32 -> int32 -> int32 = "%int32_sub"
-external mul: int32 -> int32 -> int32 = "%int32_mul"
-external div: int32 -> int32 -> int32 = "%int32_div"
-external rem: int32 -> int32 -> int32 = "%int32_mod"
-external logand: int32 -> int32 -> int32 = "%int32_and"
-external logor: int32 -> int32 -> int32 = "%int32_or"
-external logxor: int32 -> int32 -> int32 = "%int32_xor"
-external shift_left: int32 -> int -> int32 = "%int32_lsl"
-external shift_right: int32 -> int -> int32 = "%int32_asr"
-external shift_right_logical: int32 -> int -> int32 = "%int32_lsr"
-external of_int: int -> int32 = "%int32_of_int"
-external to_int: int32 -> int = "%int32_to_int"
+external neg : int32 -> int32 = "%int32_neg"
+external add : int32 -> int32 -> int32 = "%int32_add"
+external sub : int32 -> int32 -> int32 = "%int32_sub"
+external mul : int32 -> int32 -> int32 = "%int32_mul"
+external div : int32 -> int32 -> int32 = "%int32_div"
+external rem : int32 -> int32 -> int32 = "%int32_mod"
+external logand : int32 -> int32 -> int32 = "%int32_and"
+external logor : int32 -> int32 -> int32 = "%int32_or"
+external logxor : int32 -> int32 -> int32 = "%int32_xor"
+external shift_left : int32 -> int -> int32 = "%int32_lsl"
+external shift_right : int32 -> int -> int32 = "%int32_asr"
+external shift_right_logical : int32 -> int -> int32 = "%int32_lsr"
+external of_int : int -> int32 = "%int32_of_int"
+external to_int : int32 -> int = "%int32_to_int"
let zero = of_int 0
let one = of_int 1
@@ -35,11 +35,11 @@ let minus_one = of_int (-1)
let succ n = add n one
let pred n = sub n one
let abs n = if n >= zero then n else neg n
-let min = shift_left one 31
-let max = sub min one
+let min_int = shift_left one 31
+let max_int = sub min_int one
let lognot n = logxor n minus_one
external format : string -> int32 -> string = "int32_format"
let to_string n = format "%d" n
-external of_string: string -> int32 = "int32_of_string"
+external of_string : string -> int32 = "int32_of_string"
diff --git a/stdlib/int32.mli b/stdlib/int32.mli
index 50345fcd32..d5bb3cd2d0 100644
--- a/stdlib/int32.mli
+++ b/stdlib/int32.mli
@@ -20,23 +20,23 @@
platforms. All arithmetic operations over [int32] are taken
modulo $2^{32}$. *)
-val zero: int32
-val one: int32
-val minus_one: int32
+val zero : int32
+val one : int32
+val minus_one : int32
(* The 32-bit integers 0, 1, -1. *)
-external neg: int32 -> int32 = "%int32_neg"
+external neg : int32 -> int32 = "%int32_neg"
(* Unary negation. *)
-external add: int32 -> int32 -> int32 = "%int32_add"
+external add : int32 -> int32 -> int32 = "%int32_add"
(* Addition. *)
-external sub: int32 -> int32 -> int32 = "%int32_sub"
+external sub : int32 -> int32 -> int32 = "%int32_sub"
(* Subtraction. *)
-external mul: int32 -> int32 -> int32 = "%int32_mul"
+external mul : int32 -> int32 -> int32 = "%int32_mul"
(* Multiplication. *)
-external div: int32 -> int32 -> int32 = "%int32_div"
+external div : int32 -> int32 -> int32 = "%int32_div"
(* Integer division. Raise [Division_by_zero] if the second
argument is zero. *)
-external rem: int32 -> int32 -> int32 = "%int32_mod"
+external rem : int32 -> int32 -> int32 = "%int32_mod"
(* Integer remainder. If [x >= 0] and [y > 0], the result
of [Int32.rem x y] satisfies the following properties:
[0 <= Int32.rem x y < y] and
@@ -44,54 +44,54 @@ external rem: int32 -> int32 -> int32 = "%int32_mod"
If [y = 0], [Int32.rem x y] raises [Division_by_zero].
If [x < 0] or [y < 0], the result of [Int32.rem x y] is
not specified and depends on the platform. *)
-val succ: int32 -> int32
+val succ : int32 -> int32
(* Successor. [Int32.succ x] is [Int32.add x 1i]. *)
-val pred: int32 -> int32
+val pred : int32 -> int32
(* Predecessor. [Int32.pred x] is [Int32.sub x 1i]. *)
-val abs: int32 -> int32
+val abs : int32 -> int32
(* Return the absolute value of its argument. *)
-val max: int32
+val max_int : int32
(* The greatest representable 32-bit integer, $2^{31} - 1$. *)
-val min: int32
+val min_int : int32
(* The smallest representable 32-bit integer, $-2^{31}$. *)
-external logand: int32 -> int32 -> int32 = "%int32_and"
+external logand : int32 -> int32 -> int32 = "%int32_and"
(* Bitwise logical and. *)
-external logor: int32 -> int32 -> int32 = "%int32_or"
+external logor : int32 -> int32 -> int32 = "%int32_or"
(* Bitwise logical or. *)
-external logxor: int32 -> int32 -> int32 = "%int32_xor"
+external logxor : int32 -> int32 -> int32 = "%int32_xor"
(* Bitwise logical exclusive or. *)
-val lognot: int32 -> int32
+val lognot : int32 -> int32
(* Bitwise logical negation *)
-external shift_left: int32 -> int -> int32 = "%int32_lsl"
+external shift_left : int32 -> int -> int32 = "%int32_lsl"
(* [Int32.shift_left x y] shifts [x] to the left by [y] bits. *)
-external shift_right: int32 -> int -> int32 = "%int32_asr"
+external shift_right : int32 -> int -> int32 = "%int32_asr"
(* [Int32.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. *)
-external shift_right_logical: int32 -> int -> int32 = "%int32_lsr"
+external shift_right_logical : int32 -> int -> int32 = "%int32_lsr"
(* [Int32.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]. *)
-external of_int: int -> int32 = "%int32_of_int"
+external of_int : int -> int32 = "%int32_of_int"
(* Convert the given integer (type [int]) to a 32-bit integer
(type [Int32.int32]). *)
-external to_int: int32 -> int = "%int32_to_int"
+external to_int : int32 -> int = "%int32_to_int"
(* Convert the given 32-bit integer (type [Int32.int32]) to an
integer (type [int]). On 32-bit platforms, the 32-bit integer
is taken modulo $2^{31}$, i.e. the high-order bit is lost
during the conversion. On 64-bit platforms, the conversion
is exact. *)
-external of_string: string -> int32 = "int32_of_string"
+external of_string : string -> int32 = "int32_of_string"
(* Convert the given string to a 32-bit integer.
The string is read in decimal (by default) or in hexadecimal,
octal or binary if the string begins with [0x], [0o] or [0b]
respectively.
Raise [Failure "int_of_string"] if the given string is not
a valid representation of an integer. *)
-val to_string: int32 -> string
+val to_string : int32 -> string
(* Return the string representation of its argument,
in signed decimal. *)
external format : string -> int32 -> string = "int32_format"
diff --git a/stdlib/int64.ml b/stdlib/int64.ml
index 7dd5193041..84d4d02a01 100644
--- a/stdlib/int64.ml
+++ b/stdlib/int64.ml
@@ -14,24 +14,24 @@
(* Module [Int64]: 64-bit integers *)
-external neg: int64 -> int64 = "%int64_neg"
-external add: int64 -> int64 -> int64 = "%int64_add"
-external sub: int64 -> int64 -> int64 = "%int64_sub"
-external mul: int64 -> int64 -> int64 = "%int64_mul"
-external div: int64 -> int64 -> int64 = "%int64_div"
-external rem: int64 -> int64 -> int64 = "%int64_mod"
-external logand: int64 -> int64 -> int64 = "%int64_and"
-external logor: int64 -> int64 -> int64 = "%int64_or"
-external logxor: int64 -> int64 -> int64 = "%int64_xor"
-external shift_left: int64 -> int -> int64 = "%int64_lsl"
-external shift_right: int64 -> int -> int64 = "%int64_asr"
-external shift_right_logical: int64 -> int -> int64 = "%int64_lsr"
-external of_int: int -> int64 = "%int64_of_int"
-external to_int: int64 -> int = "%int64_to_int"
-external of_int32: int32 -> int64 = "%int64_of_int32"
-external to_int32: int64 -> int32 = "%int64_to_int32"
-external of_nativeint: nativeint -> int64 = "%int64_of_nativeint"
-external to_nativeint: int64 -> nativeint = "%int64_to_nativeint"
+external neg : int64 -> int64 = "%int64_neg"
+external add : int64 -> int64 -> int64 = "%int64_add"
+external sub : int64 -> int64 -> int64 = "%int64_sub"
+external mul : int64 -> int64 -> int64 = "%int64_mul"
+external div : int64 -> int64 -> int64 = "%int64_div"
+external rem : int64 -> int64 -> int64 = "%int64_mod"
+external logand : int64 -> int64 -> int64 = "%int64_and"
+external logor : int64 -> int64 -> int64 = "%int64_or"
+external logxor : int64 -> int64 -> int64 = "%int64_xor"
+external shift_left : int64 -> int -> int64 = "%int64_lsl"
+external shift_right : int64 -> int -> int64 = "%int64_asr"
+external shift_right_logical : int64 -> int -> int64 = "%int64_lsr"
+external of_int : int -> int64 = "%int64_of_int"
+external to_int : int64 -> int = "%int64_to_int"
+external of_int32 : int32 -> int64 = "%int64_of_int32"
+external to_int32 : int64 -> int32 = "%int64_to_int32"
+external of_nativeint : nativeint -> int64 = "%int64_of_nativeint"
+external to_nativeint : int64 -> nativeint = "%int64_to_nativeint"
let zero = try of_int 0 with Invalid_argument _ -> Obj.magic Int32.zero
let one = try of_int 1 with Invalid_argument _ -> Obj.magic Int32.one
@@ -39,11 +39,13 @@ let minus_one = try of_int (-1) with Invalid_argument _ -> Obj.magic Int32.minus
let succ n = add n one
let pred n = sub n one
let abs n = if n >= zero then n else neg n
-let min = try shift_left one 63 with Invalid_argument _ -> Obj.magic Int32.min
-let max = try sub min one with Invalid_argument _ -> Obj.magic Int32.max
+let min_int =
+ try shift_left one 63 with Invalid_argument _ -> Obj.magic Int32.min_int
+let max_int =
+ try sub min_int one with Invalid_argument _ -> Obj.magic Int32.max_int
let lognot n = logxor n minus_one
external format : string -> int64 -> string = "int64_format"
let to_string n = format "%d" n
-external of_string: string -> int64 = "int64_of_string"
+external of_string : string -> int64 = "int64_of_string"
diff --git a/stdlib/int64.mli b/stdlib/int64.mli
index fd05d8913f..cf034016ee 100644
--- a/stdlib/int64.mli
+++ b/stdlib/int64.mli
@@ -26,23 +26,23 @@
all functions in this module raise an [Invalid_argument] exception.
*)
-val zero: int64
-val one: int64
-val minus_one: int64
+val zero : int64
+val one : int64
+val minus_one : int64
(* The 64-bit integers 0, 1, -1. *)
-external neg: int64 -> int64 = "%int64_neg"
+external neg : int64 -> int64 = "%int64_neg"
(* Unary negation. *)
-external add: int64 -> int64 -> int64 = "%int64_add"
+external add : int64 -> int64 -> int64 = "%int64_add"
(* Addition. *)
-external sub: int64 -> int64 -> int64 = "%int64_sub"
+external sub : int64 -> int64 -> int64 = "%int64_sub"
(* Subtraction. *)
-external mul: int64 -> int64 -> int64 = "%int64_mul"
+external mul : int64 -> int64 -> int64 = "%int64_mul"
(* Multiplication. *)
-external div: int64 -> int64 -> int64 = "%int64_div"
+external div : int64 -> int64 -> int64 = "%int64_div"
(* Integer division. Raise [Division_by_zero] if the second
argument is zero. *)
-external rem: int64 -> int64 -> int64 = "%int64_mod"
+external rem : int64 -> int64 -> int64 = "%int64_mod"
(* Integer remainder. If [x >= 0] and [y > 0], the result
of [Int64.rem x y] satisfies the following properties:
[0 <= Int64.rem x y < y] and
@@ -50,40 +50,40 @@ external rem: int64 -> int64 -> int64 = "%int64_mod"
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. *)
-val succ: int64 -> int64
+val succ : int64 -> int64
(* Successor. [Int64.succ x] is [Int64.add x 1i]. *)
-val pred: int64 -> int64
+val pred : int64 -> int64
(* Predecessor. [Int64.pred x] is [Int64.sub x 1i]. *)
-val abs: int64 -> int64
+val abs : int64 -> int64
(* Return the absolute value of its argument. *)
-val max: int64
+val max_int : int64
(* The greatest representable 64-bit integer, $2^{63} - 1$. *)
-val min: int64
+val min_int : int64
(* The smallest representable 64-bit integer, $-2^{63}$. *)
-external logand: int64 -> int64 -> int64 = "%int64_and"
+external logand : int64 -> int64 -> int64 = "%int64_and"
(* Bitwise logical and. *)
-external logor: int64 -> int64 -> int64 = "%int64_or"
+external logor : int64 -> int64 -> int64 = "%int64_or"
(* Bitwise logical or. *)
-external logxor: int64 -> int64 -> int64 = "%int64_xor"
+external logxor : int64 -> int64 -> int64 = "%int64_xor"
(* Bitwise logical exclusive or. *)
-val lognot: int64 -> int64
+val lognot : int64 -> int64
(* Bitwise logical negation *)
-external shift_left: int64 -> int -> int64 = "%int64_lsl"
+external shift_left : int64 -> int -> int64 = "%int64_lsl"
(* [Int64.shift_left x y] shifts [x] to the left by [y] bits. *)
-external shift_right: int64 -> int -> int64 = "%int64_asr"
+external shift_right : int64 -> int -> int64 = "%int64_asr"
(* [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. *)
-external shift_right_logical: int64 -> int -> int64 = "%int64_lsr"
+external shift_right_logical : int64 -> int -> int64 = "%int64_lsr"
(* [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]. *)
-external of_int: int -> int64 = "%int64_of_int"
+external of_int : int -> int64 = "%int64_of_int"
(* Convert the given integer (type [int]) to a 64-bit integer
(type [Int64.int64]). *)
-external to_int: int64 -> int = "%int64_to_int"
+external to_int : int64 -> int = "%int64_to_int"
(* Convert the given 64-bit integer (type [Int64.int64]) to an
integer (type [int]). On 64-bit platforms, the 64-bit integer
is taken modulo $2^{63}$, i.e. the high-order bit is lost
@@ -91,32 +91,32 @@ external to_int: int64 -> int = "%int64_to_int"
is taken modulo $2^{31}$, i.e. the top 33 bits are lost
during the conversion. *)
-external of_int32: int32 -> int64 = "%int64_of_int32"
+external of_int32 : int32 -> int64 = "%int64_of_int32"
(* Convert the given 32-bit integer (type [int32])
to a 64-bit integer (type [int64]). *)
-external to_int32: int64 -> int32 = "%int64_to_int32"
+external to_int32 : int64 -> int32 = "%int64_to_int32"
(* Convert the given 64-bit integer (type [int64]) to a
32-bit integer (type [int32]). The 64-bit integer
is taken modulo $2^{32}$, i.e. the top 32 bits are lost
during the conversion. *)
-external of_nativeint: nativeint -> int64 = "%int64_of_nativeint"
+external of_nativeint : nativeint -> int64 = "%int64_of_nativeint"
(* Convert the given native integer (type [nativeint])
to a 64-bit integer (type [int64]). *)
-external to_nativeint: int64 -> nativeint = "%int64_to_nativeint"
+external to_nativeint : int64 -> nativeint = "%int64_to_nativeint"
(* Convert the given 64-bit integer (type [int64]) to a
native integer. On 32-bit platforms, the 64-bit integer
is taken modulo $2^{32}$. On 64-bit platforms,
the conversion is exact. *)
-external of_string: string -> int64 = "int64_of_string"
+external of_string : string -> int64 = "int64_of_string"
(* Convert the given string to a 64-bit integer.
The string is read in decimal (by default) or in hexadecimal,
octal or binary if the string begins with [0x], [0o] or [0b]
respectively.
Raise [Failure "int_of_string"] if the given string is not
a valid representation of an integer. *)
-val to_string: int64 -> string
+val to_string : int64 -> string
(* Return the string representation of its argument, in decimal. *)
external format : string -> int64 -> string = "int64_format"
(* [Int64.format fmt n] return the string representation of the
@@ -124,4 +124,3 @@ external format : string -> int64 -> string = "int64_format"
[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, *)
-