-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathstdcompat__int.ml.in
32 lines (32 loc) · 1.02 KB
/
stdcompat__int.ml.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@BEGIN_FROM_4_08_0@
include Int
@END_FROM_4_08_0@
@BEGIN_BEFORE_4_08_0@
type t = int
let zero = 0
let one = 1
let minus_one = -1
external neg : int -> int = "%negint"
external add : int -> int -> int = "%addint"
external sub : int -> int -> int = "%subint"
external mul : int -> int -> int = "%mulint"
external div : int -> int -> int = "%divint"
external rem : int -> int -> int = "%modint"
external succ : int -> int = "%succint"
external pred : int -> int = "%predint"
let abs = abs
let max_int = max_int
let min_int = min_int
external logand : int -> int -> int = "%andint"
external logor : int -> int -> int = "%orint"
external logxor : int -> int -> int = "%xorint"
let lognot = lnot
external shift_left : int -> int -> int = "%lslint"
external shift_right : int -> int -> int = "%asrint"
external shift_right_logical : int -> int -> int = "%lsrint"
let equal = ( = )
let compare = compare
external to_float : int -> float = "%floatofint"
external of_float : float -> int = "%intoffloat"
let to_string = string_of_int
@END_BEFORE_4_08_0@