Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | signature PRE_REAL_GLOBAL = |
2 | sig | |
3 | type real | |
4 | structure Math: MATH where type real = real | |
5 | end | |
6 | ||
7 | signature PRE_REAL = | |
8 | sig | |
9 | include PRE_REAL_GLOBAL | |
10 | ||
11 | val * : real * real -> real | |
12 | val *+ : real * real * real -> real | |
13 | val *- : real * real * real -> real | |
14 | val + : real * real -> real | |
15 | val - : real * real -> real | |
16 | val / : real * real -> real | |
17 | val < : real * real -> bool | |
18 | val <= : real * real -> bool | |
19 | val == : real * real -> bool | |
20 | val > : real * real -> bool | |
21 | val >= : real * real -> bool | |
22 | val ?= : real * real -> bool | |
23 | val ~ : real -> real | |
24 | val abs: real -> real | |
25 | ||
26 | val realSize: Primitive.Int32.int | |
27 | val exponentBias: Primitive.Int32.int | |
28 | val precision: Primitive.Int32.int | |
29 | val radix: Primitive.Int32.int | |
30 | ||
31 | val frexp: real * C_Int.int ref -> real | |
32 | val ldexp: real * C_Int.int -> real | |
33 | val modf: real * real ref -> real | |
34 | ||
35 | val round: real -> real | |
36 | val realCeil: real -> real | |
37 | val realFloor: real -> real | |
38 | val realTrunc: real -> real | |
39 | ||
40 | val gdtoa: real * C_Int.t * C_Int.t * C_Int.t * C_Int.t ref -> C_String.t | |
41 | val strtor: Primitive.NullString8.t * C_Int.t -> real | |
42 | ||
43 | val fromInt8Unsafe: Primitive.Int8.int -> real | |
44 | val fromInt16Unsafe: Primitive.Int16.int -> real | |
45 | val fromInt32Unsafe: Primitive.Int32.int -> real | |
46 | val fromInt64Unsafe: Primitive.Int64.int -> real | |
47 | ||
48 | val fromReal32Unsafe: Primitive.Real32.real -> real | |
49 | val fromReal64Unsafe: Primitive.Real64.real -> real | |
50 | ||
51 | val fromWord8Unsafe: Primitive.Word8.word -> real | |
52 | val fromWord16Unsafe: Primitive.Word16.word -> real | |
53 | val fromWord32Unsafe: Primitive.Word32.word -> real | |
54 | val fromWord64Unsafe: Primitive.Word64.word -> real | |
55 | ||
56 | val toInt8Unsafe: real -> Primitive.Int8.int | |
57 | val toInt16Unsafe: real -> Primitive.Int16.int | |
58 | val toInt32Unsafe: real -> Primitive.Int32.int | |
59 | val toInt64Unsafe: real -> Primitive.Int64.int | |
60 | ||
61 | val toReal32Unsafe: real -> Primitive.Real32.real | |
62 | val toReal64Unsafe: real -> Primitive.Real64.real | |
63 | ||
64 | val toWord8Unsafe: real -> Primitive.Word8.word | |
65 | val toWord16Unsafe: real -> Primitive.Word16.word | |
66 | val toWord32Unsafe: real -> Primitive.Word32.word | |
67 | val toWord64Unsafe: real -> Primitive.Word64.word | |
68 | end | |
69 | ||
70 | signature REAL_GLOBAL = | |
71 | sig | |
72 | include PRE_REAL_GLOBAL | |
73 | ||
74 | val round: real -> Int.int | |
75 | val trunc: real -> Int.int | |
76 | val ceil: real -> Int.int | |
77 | val floor: real -> Int.int | |
78 | end | |
79 | ||
80 | signature REAL = | |
81 | sig | |
82 | include REAL_GLOBAL | |
83 | ||
84 | val != : real * real -> bool | |
85 | val * : real * real -> real | |
86 | val *+ : real * real * real -> real | |
87 | val *- : real * real * real -> real | |
88 | val + : real * real -> real | |
89 | val - : real * real -> real | |
90 | val / : real * real -> real | |
91 | val < : real * real -> bool | |
92 | val <= : real * real -> bool | |
93 | val == : real * real -> bool | |
94 | val > : real * real -> bool | |
95 | val >= : real * real -> bool | |
96 | val ?= : real * real -> bool | |
97 | val ~ : real -> real | |
98 | val abs: real -> real | |
99 | val checkFloat: real -> real | |
100 | val class: real -> IEEEReal.float_class | |
101 | val compare: real * real -> order | |
102 | val compareReal: real * real -> IEEEReal.real_order | |
103 | val copySign: real * real -> real | |
104 | val fmt: StringCvt.realfmt -> real -> string | |
105 | val fromDecimal: IEEEReal.decimal_approx -> real option | |
106 | val fromInt: int -> real | |
107 | val fromLarge: IEEEReal.rounding_mode -> LargeReal.real -> real | |
108 | val fromLargeInt: LargeInt.int -> real | |
109 | val fromManExp: {man: real, exp: int} -> real | |
110 | val fromString: string -> real option | |
111 | val isFinite: real -> bool | |
112 | val isNan: real -> bool | |
113 | val isNormal: real -> bool | |
114 | val max: real * real -> real | |
115 | val maxFinite: real | |
116 | val min: real * real -> real | |
117 | val minNormalPos: real | |
118 | val minPos: real | |
119 | val negInf: real | |
120 | val nextAfter: real * real -> real | |
121 | val posInf: real | |
122 | val precision: int | |
123 | val radix: int | |
124 | val realCeil: real -> real | |
125 | val realFloor: real -> real | |
126 | val realMod: real -> real | |
127 | val realRound: real -> real | |
128 | val realTrunc: real -> real | |
129 | val rem: real * real -> real | |
130 | val sameSign: real * real -> bool | |
131 | val scan: (char, 'a) StringCvt.reader -> (real, 'a) StringCvt.reader | |
132 | val sign: real -> int | |
133 | val signBit: real -> bool | |
134 | val split: real -> {whole: real, frac: real} | |
135 | val toDecimal: real -> IEEEReal.decimal_approx | |
136 | val toInt: IEEEReal.rounding_mode -> real -> int | |
137 | val toLarge: real -> LargeReal.real | |
138 | val toLargeInt: IEEEReal.rounding_mode -> real -> LargeInt.int | |
139 | val toManExp: real -> {man: real, exp: int} | |
140 | val toString: real -> string | |
141 | val unordered: real * real -> bool | |
142 | end | |
143 | ||
144 | signature REAL_EXTRA = | |
145 | sig | |
146 | include REAL | |
147 | val realSize: Int.int | |
148 | ||
149 | val fromWord: word -> real | |
150 | val fromLargeWord: LargeWord.word -> real | |
151 | val toWord: IEEEReal.rounding_mode -> real -> word | |
152 | val toLargeWord: IEEEReal.rounding_mode -> real -> LargeWord.word | |
153 | end |