Import Upstream version 20180207
[hcoop/debian/mlton.git] / basis-library / libs / basis-1997 / real / real.sig
CommitLineData
7f918cf1
CE
1signature REAL_1997 =
2 sig
3 type real
4 structure Math: MATH where type real = real
5
6 val ceil: real -> Int.int
7 val floor: real -> Int.int
8 val round: real -> Int.int
9 val trunc: real -> Int.int
10
11 val radix: int
12 val precision: int
13 val maxFinite: real
14 val minPos: real
15 val minNormalPos: real
16 val posInf: real
17 val negInf: real
18 val + : real * real -> real
19 val - : real * real -> real
20 val * : real * real -> real
21 val / : real * real -> real
22 val rem: real * real -> real
23 val *+ : real * real * real -> real
24 val *- : real * real * real -> real
25 val ~ : real -> real
26 val abs: real -> real
27 val min: real * real -> real
28 val max: real * real -> real
29 val sign: real -> int
30 val signBit: real -> bool
31 val sameSign: real * real -> bool
32 val copySign: real * real -> real
33 val compare: real * real -> order
34 val compareReal: real * real -> IEEEReal1997.real_order
35 val < : real * real -> bool
36 val <= : real * real -> bool
37 val > : real * real -> bool
38 val >= : real * real -> bool
39 val == : real * real -> bool
40 val != : real * real -> bool
41 val ?= : real * real -> bool
42 val unordered: real * real -> bool
43 val isFinite: real -> bool
44 val isNan: real -> bool
45 val isNormal: real -> bool
46 val class: real -> IEEEReal1997.float_class
47 val fmt: StringCvt.realfmt -> real -> string
48 val toString: real -> string
49 val scan: (char, 'a) StringCvt.reader -> (real, 'a) StringCvt.reader
50 val fromString: string -> real option
51 val toManExp: real -> {man: real, exp: int}
52 val fromManExp: {man: real, exp: int} -> real
53 val split: real -> {whole: real, frac: real}
54 val realMod: real -> real
55 val nextAfter: real * real -> real
56 val checkFloat: real -> real
57 val realFloor: real -> real
58 val realCeil: real -> real
59 val realTrunc: real -> real
60 val toInt: IEEEReal1997.rounding_mode -> real -> int
61 val toLargeInt: IEEEReal1997.rounding_mode -> real -> LargeInt.int
62 val fromInt: int -> real
63 val fromLargeInt: LargeInt.int -> real
64 val toLarge: real -> LargeReal.real
65 val fromLarge: IEEEReal1997.rounding_mode -> LargeReal.real -> real
66 val toDecimal: real -> IEEEReal1997.decimal_approx
67 val fromDecimal: IEEEReal1997.decimal_approx -> real option
68 end