@grain/stdlib 0.5.13 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -0
- package/LICENSE +1 -1
- package/README.md +25 -2
- package/array.gr +1512 -199
- package/array.md +2032 -94
- package/bigint.gr +239 -140
- package/bigint.md +450 -106
- package/buffer.gr +595 -102
- package/buffer.md +903 -145
- package/bytes.gr +401 -110
- package/bytes.md +551 -63
- package/char.gr +228 -49
- package/char.md +373 -7
- package/exception.gr +26 -12
- package/exception.md +29 -5
- package/float32.gr +130 -109
- package/float32.md +185 -57
- package/float64.gr +112 -99
- package/float64.md +185 -57
- package/hash.gr +47 -37
- package/hash.md +21 -3
- package/int16.gr +430 -0
- package/int16.md +618 -0
- package/int32.gr +200 -269
- package/int32.md +254 -289
- package/int64.gr +142 -225
- package/int64.md +254 -289
- package/int8.gr +511 -0
- package/int8.md +786 -0
- package/json.gr +2084 -0
- package/json.md +608 -0
- package/list.gr +120 -68
- package/list.md +125 -80
- package/map.gr +560 -57
- package/map.md +672 -56
- package/marshal.gr +239 -227
- package/marshal.md +36 -4
- package/number.gr +626 -676
- package/number.md +738 -153
- package/option.gr +33 -35
- package/option.md +58 -42
- package/package.json +2 -2
- package/path.gr +148 -187
- package/path.md +47 -96
- package/pervasives.gr +75 -416
- package/pervasives.md +85 -180
- package/priorityqueue.gr +433 -74
- package/priorityqueue.md +422 -54
- package/queue.gr +362 -80
- package/queue.md +433 -38
- package/random.gr +67 -75
- package/random.md +68 -40
- package/range.gr +135 -63
- package/range.md +198 -43
- package/rational.gr +284 -0
- package/rational.md +545 -0
- package/regex.gr +933 -1066
- package/regex.md +59 -60
- package/result.gr +23 -25
- package/result.md +54 -39
- package/runtime/atof/common.gr +78 -82
- package/runtime/atof/common.md +22 -10
- package/runtime/atof/decimal.gr +102 -127
- package/runtime/atof/decimal.md +28 -7
- package/runtime/atof/lemire.gr +56 -71
- package/runtime/atof/lemire.md +9 -1
- package/runtime/atof/parse.gr +83 -110
- package/runtime/atof/parse.md +12 -2
- package/runtime/atof/slow.gr +28 -35
- package/runtime/atof/slow.md +9 -1
- package/runtime/atof/table.gr +19 -18
- package/runtime/atof/table.md +10 -2
- package/runtime/atoi/parse.gr +153 -136
- package/runtime/atoi/parse.md +50 -1
- package/runtime/bigint.gr +410 -517
- package/runtime/bigint.md +71 -57
- package/runtime/compare.gr +176 -85
- package/runtime/compare.md +31 -1
- package/runtime/dataStructures.gr +144 -32
- package/runtime/dataStructures.md +267 -31
- package/runtime/debugPrint.gr +34 -15
- package/runtime/debugPrint.md +37 -5
- package/runtime/equal.gr +53 -52
- package/runtime/equal.md +30 -1
- package/runtime/exception.gr +38 -47
- package/runtime/exception.md +10 -8
- package/runtime/gc.gr +23 -152
- package/runtime/gc.md +13 -17
- package/runtime/malloc.gr +31 -31
- package/runtime/malloc.md +11 -3
- package/runtime/numberUtils.gr +191 -172
- package/runtime/numberUtils.md +17 -9
- package/runtime/numbers.gr +1695 -1021
- package/runtime/numbers.md +1098 -134
- package/runtime/string.gr +540 -242
- package/runtime/string.md +76 -6
- package/runtime/unsafe/constants.gr +30 -13
- package/runtime/unsafe/constants.md +80 -0
- package/runtime/unsafe/conv.gr +55 -28
- package/runtime/unsafe/conv.md +41 -9
- package/runtime/unsafe/memory.gr +10 -30
- package/runtime/unsafe/memory.md +15 -19
- package/runtime/unsafe/tags.gr +37 -21
- package/runtime/unsafe/tags.md +88 -8
- package/runtime/unsafe/wasmf32.gr +30 -36
- package/runtime/unsafe/wasmf32.md +64 -56
- package/runtime/unsafe/wasmf64.gr +30 -36
- package/runtime/unsafe/wasmf64.md +64 -56
- package/runtime/unsafe/wasmi32.gr +49 -66
- package/runtime/unsafe/wasmi32.md +102 -94
- package/runtime/unsafe/wasmi64.gr +52 -79
- package/runtime/unsafe/wasmi64.md +108 -100
- package/runtime/utils/printing.gr +13 -15
- package/runtime/utils/printing.md +11 -3
- package/runtime/wasi.gr +294 -295
- package/runtime/wasi.md +62 -42
- package/set.gr +574 -64
- package/set.md +634 -54
- package/stack.gr +181 -64
- package/stack.md +271 -42
- package/string.gr +453 -533
- package/string.md +241 -151
- package/uint16.gr +369 -0
- package/uint16.md +585 -0
- package/uint32.gr +470 -0
- package/uint32.md +737 -0
- package/uint64.gr +471 -0
- package/uint64.md +737 -0
- package/uint8.gr +369 -0
- package/uint8.md +585 -0
- package/uri.gr +1093 -0
- package/uri.md +477 -0
- package/{sys → wasi}/file.gr +914 -500
- package/{sys → wasi}/file.md +454 -50
- package/wasi/process.gr +292 -0
- package/{sys → wasi}/process.md +164 -6
- package/wasi/random.gr +77 -0
- package/wasi/random.md +80 -0
- package/{sys → wasi}/time.gr +15 -22
- package/{sys → wasi}/time.md +5 -5
- package/immutablearray.gr +0 -929
- package/immutablearray.md +0 -1038
- package/immutablemap.gr +0 -493
- package/immutablemap.md +0 -479
- package/immutablepriorityqueue.gr +0 -360
- package/immutablepriorityqueue.md +0 -291
- package/immutableset.gr +0 -498
- package/immutableset.md +0 -449
- package/runtime/debug.gr +0 -2
- package/runtime/debug.md +0 -6
- package/runtime/unsafe/errors.gr +0 -36
- package/runtime/unsafe/errors.md +0 -204
- package/sys/process.gr +0 -254
- package/sys/random.gr +0 -79
- package/sys/random.md +0 -66
package/runtime/bigint.md
CHANGED
|
@@ -1,67 +1,69 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
title: Bigint
|
|
3
|
+
---
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
## Values
|
|
6
|
+
|
|
7
|
+
Functions and constants included in the Bigint module.
|
|
6
8
|
|
|
7
9
|
### Bigint.**debugDumpNumber**
|
|
8
10
|
|
|
9
11
|
```grain
|
|
10
|
-
debugDumpNumber : WasmI32
|
|
12
|
+
debugDumpNumber : (num: WasmI32) => Void
|
|
11
13
|
```
|
|
12
14
|
|
|
13
15
|
### Bigint.**getSize**
|
|
14
16
|
|
|
15
17
|
```grain
|
|
16
|
-
getSize : WasmI32
|
|
18
|
+
getSize : (ptr: WasmI32) => WasmI32
|
|
17
19
|
```
|
|
18
20
|
|
|
19
21
|
### Bigint.**getFlags**
|
|
20
22
|
|
|
21
23
|
```grain
|
|
22
|
-
getFlags : WasmI32
|
|
24
|
+
getFlags : (ptr: WasmI32) => WasmI32
|
|
23
25
|
```
|
|
24
26
|
|
|
25
27
|
### Bigint.**getLimb**
|
|
26
28
|
|
|
27
29
|
```grain
|
|
28
|
-
getLimb : (WasmI32, WasmI32)
|
|
30
|
+
getLimb : (ptr: WasmI32, i: WasmI32) => WasmI64
|
|
29
31
|
```
|
|
30
32
|
|
|
31
33
|
### Bigint.**makeWrappedInt32**
|
|
32
34
|
|
|
33
35
|
```grain
|
|
34
|
-
makeWrappedInt32 : WasmI32
|
|
36
|
+
makeWrappedInt32 : (value: WasmI32) => WasmI32
|
|
35
37
|
```
|
|
36
38
|
|
|
37
39
|
### Bigint.**makeWrappedUint32**
|
|
38
40
|
|
|
39
41
|
```grain
|
|
40
|
-
makeWrappedUint32 : WasmI32
|
|
42
|
+
makeWrappedUint32 : (value: WasmI32) => WasmI32
|
|
41
43
|
```
|
|
42
44
|
|
|
43
45
|
### Bigint.**makeWrappedInt64**
|
|
44
46
|
|
|
45
47
|
```grain
|
|
46
|
-
makeWrappedInt64 : WasmI64
|
|
48
|
+
makeWrappedInt64 : (value: WasmI64) => WasmI32
|
|
47
49
|
```
|
|
48
50
|
|
|
49
51
|
### Bigint.**makeWrappedUint64**
|
|
50
52
|
|
|
51
53
|
```grain
|
|
52
|
-
makeWrappedUint64 : WasmI64
|
|
54
|
+
makeWrappedUint64 : (value: WasmI64) => WasmI32
|
|
53
55
|
```
|
|
54
56
|
|
|
55
57
|
### Bigint.**isNegative**
|
|
56
58
|
|
|
57
59
|
```grain
|
|
58
|
-
isNegative : WasmI32
|
|
60
|
+
isNegative : (num: WasmI32) => Bool
|
|
59
61
|
```
|
|
60
62
|
|
|
61
63
|
### Bigint.**eqz**
|
|
62
64
|
|
|
63
65
|
```grain
|
|
64
|
-
eqz : WasmI32
|
|
66
|
+
eqz : (num: WasmI32) => Bool
|
|
65
67
|
```
|
|
66
68
|
|
|
67
69
|
Returns true if the given bigint is equal to zero
|
|
@@ -69,258 +71,270 @@ Returns true if the given bigint is equal to zero
|
|
|
69
71
|
### Bigint.**negate**
|
|
70
72
|
|
|
71
73
|
```grain
|
|
72
|
-
negate : WasmI32
|
|
74
|
+
negate : (num: WasmI32) => WasmI32
|
|
73
75
|
```
|
|
74
76
|
|
|
75
77
|
### Bigint.**abs**
|
|
76
78
|
|
|
77
79
|
```grain
|
|
78
|
-
abs : WasmI32
|
|
80
|
+
abs : (num: WasmI32) => WasmI32
|
|
79
81
|
```
|
|
80
82
|
|
|
81
83
|
### Bigint.**canConvertToInt32**
|
|
82
84
|
|
|
83
85
|
```grain
|
|
84
|
-
canConvertToInt32 : WasmI32
|
|
86
|
+
canConvertToInt32 : (num: WasmI32) => Bool
|
|
85
87
|
```
|
|
86
88
|
|
|
87
89
|
### Bigint.**toInt32**
|
|
88
90
|
|
|
89
91
|
```grain
|
|
90
|
-
toInt32 : WasmI32
|
|
92
|
+
toInt32 : (num: WasmI32) => WasmI32
|
|
91
93
|
```
|
|
92
94
|
|
|
93
95
|
### Bigint.**canConvertToInt64**
|
|
94
96
|
|
|
95
97
|
```grain
|
|
96
|
-
canConvertToInt64 : WasmI32
|
|
98
|
+
canConvertToInt64 : (num: WasmI32) => Bool
|
|
97
99
|
```
|
|
98
100
|
|
|
99
101
|
### Bigint.**toInt64**
|
|
100
102
|
|
|
101
103
|
```grain
|
|
102
|
-
toInt64 : WasmI32
|
|
104
|
+
toInt64 : (num: WasmI32) => WasmI64
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Bigint.**toUnsignedInt64**
|
|
108
|
+
|
|
109
|
+
```grain
|
|
110
|
+
toUnsignedInt64 : (num: WasmI32) => WasmI64
|
|
103
111
|
```
|
|
104
112
|
|
|
105
113
|
### Bigint.**toFloat64**
|
|
106
114
|
|
|
107
115
|
```grain
|
|
108
|
-
toFloat64 : WasmI32
|
|
116
|
+
toFloat64 : (num: WasmI32) => WasmF64
|
|
109
117
|
```
|
|
110
118
|
|
|
111
119
|
### Bigint.**toFloat32**
|
|
112
120
|
|
|
113
121
|
```grain
|
|
114
|
-
toFloat32 : WasmI32
|
|
122
|
+
toFloat32 : (num: WasmI32) => WasmF32
|
|
115
123
|
```
|
|
116
124
|
|
|
117
125
|
### Bigint.**cmpI64**
|
|
118
126
|
|
|
119
127
|
```grain
|
|
120
|
-
cmpI64 : (WasmI32, WasmI64)
|
|
128
|
+
cmpI64 : (num1: WasmI32, num2: WasmI64) => WasmI32
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
### Bigint.**cmpU64**
|
|
132
|
+
|
|
133
|
+
```grain
|
|
134
|
+
cmpU64 : (num1: WasmI32, num2: WasmI64) => WasmI32
|
|
121
135
|
```
|
|
122
136
|
|
|
123
137
|
### Bigint.**cmpF64**
|
|
124
138
|
|
|
125
139
|
```grain
|
|
126
|
-
cmpF64 : (WasmI32, WasmF64)
|
|
140
|
+
cmpF64 : (num1: WasmI32, num2: WasmF64) => WasmI32
|
|
127
141
|
```
|
|
128
142
|
|
|
129
143
|
### Bigint.**cmpF32**
|
|
130
144
|
|
|
131
145
|
```grain
|
|
132
|
-
cmpF32 : (WasmI32, WasmF32)
|
|
146
|
+
cmpF32 : (num1: WasmI32, num2: WasmF32) => WasmI32
|
|
133
147
|
```
|
|
134
148
|
|
|
135
149
|
### Bigint.**cmp**
|
|
136
150
|
|
|
137
151
|
```grain
|
|
138
|
-
cmp : (WasmI32, WasmI32)
|
|
152
|
+
cmp : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
139
153
|
```
|
|
140
154
|
|
|
141
155
|
### Bigint.**eq**
|
|
142
156
|
|
|
143
157
|
```grain
|
|
144
|
-
eq : (WasmI32, WasmI32)
|
|
158
|
+
eq : (num1: WasmI32, num2: WasmI32) => Bool
|
|
145
159
|
```
|
|
146
160
|
|
|
147
161
|
### Bigint.**ne**
|
|
148
162
|
|
|
149
163
|
```grain
|
|
150
|
-
ne : (WasmI32, WasmI32)
|
|
164
|
+
ne : (num1: WasmI32, num2: WasmI32) => Bool
|
|
151
165
|
```
|
|
152
166
|
|
|
153
167
|
### Bigint.**lt**
|
|
154
168
|
|
|
155
169
|
```grain
|
|
156
|
-
lt : (WasmI32, WasmI32)
|
|
170
|
+
lt : (num1: WasmI32, num2: WasmI32) => Bool
|
|
157
171
|
```
|
|
158
172
|
|
|
159
173
|
### Bigint.**lte**
|
|
160
174
|
|
|
161
175
|
```grain
|
|
162
|
-
lte : (WasmI32, WasmI32)
|
|
176
|
+
lte : (num1: WasmI32, num2: WasmI32) => Bool
|
|
163
177
|
```
|
|
164
178
|
|
|
165
179
|
### Bigint.**gt**
|
|
166
180
|
|
|
167
181
|
```grain
|
|
168
|
-
gt : (WasmI32, WasmI32)
|
|
182
|
+
gt : (num1: WasmI32, num2: WasmI32) => Bool
|
|
169
183
|
```
|
|
170
184
|
|
|
171
185
|
### Bigint.**gte**
|
|
172
186
|
|
|
173
187
|
```grain
|
|
174
|
-
gte : (WasmI32, WasmI32)
|
|
188
|
+
gte : (num1: WasmI32, num2: WasmI32) => Bool
|
|
175
189
|
```
|
|
176
190
|
|
|
177
191
|
### Bigint.**bigIntToString**
|
|
178
192
|
|
|
179
193
|
```grain
|
|
180
|
-
bigIntToString : (WasmI32, WasmI32)
|
|
194
|
+
bigIntToString : (num: WasmI32, base: WasmI32) => String
|
|
181
195
|
```
|
|
182
196
|
|
|
183
197
|
### Bigint.**bigIntToString10**
|
|
184
198
|
|
|
185
199
|
```grain
|
|
186
|
-
bigIntToString10 : WasmI32
|
|
200
|
+
bigIntToString10 : (num: WasmI32) => String
|
|
187
201
|
```
|
|
188
202
|
|
|
189
203
|
### Bigint.**add**
|
|
190
204
|
|
|
191
205
|
```grain
|
|
192
|
-
add : (WasmI32, WasmI32)
|
|
206
|
+
add : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
193
207
|
```
|
|
194
208
|
|
|
195
209
|
### Bigint.**addInt**
|
|
196
210
|
|
|
197
211
|
```grain
|
|
198
|
-
addInt : (WasmI32, WasmI64)
|
|
212
|
+
addInt : (num1: WasmI32, int: WasmI64) => WasmI32
|
|
199
213
|
```
|
|
200
214
|
|
|
201
215
|
### Bigint.**sub**
|
|
202
216
|
|
|
203
217
|
```grain
|
|
204
|
-
sub : (WasmI32, WasmI32)
|
|
218
|
+
sub : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
205
219
|
```
|
|
206
220
|
|
|
207
221
|
### Bigint.**subInt**
|
|
208
222
|
|
|
209
223
|
```grain
|
|
210
|
-
subInt : (WasmI32, WasmI64)
|
|
224
|
+
subInt : (num1: WasmI32, int: WasmI64) => WasmI32
|
|
211
225
|
```
|
|
212
226
|
|
|
213
227
|
### Bigint.**incr**
|
|
214
228
|
|
|
215
229
|
```grain
|
|
216
|
-
incr : WasmI32
|
|
230
|
+
incr : (num: WasmI32) => WasmI32
|
|
217
231
|
```
|
|
218
232
|
|
|
219
233
|
### Bigint.**decr**
|
|
220
234
|
|
|
221
235
|
```grain
|
|
222
|
-
decr : WasmI32
|
|
236
|
+
decr : (num: WasmI32) => WasmI32
|
|
223
237
|
```
|
|
224
238
|
|
|
225
239
|
### Bigint.**mul**
|
|
226
240
|
|
|
227
241
|
```grain
|
|
228
|
-
mul : (WasmI32, WasmI32)
|
|
242
|
+
mul : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
229
243
|
```
|
|
230
244
|
|
|
231
245
|
### Bigint.**shl**
|
|
232
246
|
|
|
233
247
|
```grain
|
|
234
|
-
shl : (WasmI32, WasmI32)
|
|
248
|
+
shl : (num: WasmI32, places: WasmI32) => WasmI32
|
|
235
249
|
```
|
|
236
250
|
|
|
237
251
|
### Bigint.**shrS**
|
|
238
252
|
|
|
239
253
|
```grain
|
|
240
|
-
shrS : (WasmI32, WasmI32)
|
|
254
|
+
shrS : (num: WasmI32, places: WasmI32) => WasmI32
|
|
241
255
|
```
|
|
242
256
|
|
|
243
257
|
### Bigint.**bitwiseNot**
|
|
244
258
|
|
|
245
259
|
```grain
|
|
246
|
-
bitwiseNot : WasmI32
|
|
260
|
+
bitwiseNot : (num: WasmI32) => WasmI32
|
|
247
261
|
```
|
|
248
262
|
|
|
249
263
|
### Bigint.**bitwiseAnd**
|
|
250
264
|
|
|
251
265
|
```grain
|
|
252
|
-
bitwiseAnd : (WasmI32, WasmI32)
|
|
266
|
+
bitwiseAnd : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
253
267
|
```
|
|
254
268
|
|
|
255
269
|
### Bigint.**bitwiseOr**
|
|
256
270
|
|
|
257
271
|
```grain
|
|
258
|
-
bitwiseOr : (WasmI32, WasmI32)
|
|
272
|
+
bitwiseOr : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
259
273
|
```
|
|
260
274
|
|
|
261
275
|
### Bigint.**bitwiseXor**
|
|
262
276
|
|
|
263
277
|
```grain
|
|
264
|
-
bitwiseXor : (WasmI32, WasmI32)
|
|
278
|
+
bitwiseXor : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
265
279
|
```
|
|
266
280
|
|
|
267
281
|
### Bigint.**countLeadingZeros**
|
|
268
282
|
|
|
269
283
|
```grain
|
|
270
|
-
countLeadingZeros : WasmI32
|
|
284
|
+
countLeadingZeros : (num: WasmI32) => WasmI32
|
|
271
285
|
```
|
|
272
286
|
|
|
273
287
|
### Bigint.**countTrailingZeros**
|
|
274
288
|
|
|
275
289
|
```grain
|
|
276
|
-
countTrailingZeros : WasmI32
|
|
290
|
+
countTrailingZeros : (num: WasmI32) => WasmI64
|
|
277
291
|
```
|
|
278
292
|
|
|
279
293
|
### Bigint.**popcnt**
|
|
280
294
|
|
|
281
295
|
```grain
|
|
282
|
-
popcnt : (WasmI32, WasmI32)
|
|
296
|
+
popcnt : (num: WasmI32, flagDest: WasmI32) => WasmI64
|
|
283
297
|
```
|
|
284
298
|
|
|
285
299
|
### Bigint.**gcd**
|
|
286
300
|
|
|
287
301
|
```grain
|
|
288
|
-
gcd : (WasmI32, WasmI32)
|
|
302
|
+
gcd : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
289
303
|
```
|
|
290
304
|
|
|
291
305
|
### Bigint.**quotRem**
|
|
292
306
|
|
|
293
307
|
```grain
|
|
294
|
-
quotRem : (WasmI32, WasmI32, WasmI32)
|
|
308
|
+
quotRem : (num1: WasmI32, num2: WasmI32, dest: WasmI32) => Void
|
|
295
309
|
```
|
|
296
310
|
|
|
297
311
|
### Bigint.**divMod**
|
|
298
312
|
|
|
299
313
|
```grain
|
|
300
|
-
divMod : (WasmI32, WasmI32, WasmI32)
|
|
314
|
+
divMod : (num1: WasmI32, num2: WasmI32, dest: WasmI32) => Void
|
|
301
315
|
```
|
|
302
316
|
|
|
303
317
|
### Bigint.**quot**
|
|
304
318
|
|
|
305
319
|
```grain
|
|
306
|
-
quot : (WasmI32, WasmI32)
|
|
320
|
+
quot : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
307
321
|
```
|
|
308
322
|
|
|
309
323
|
### Bigint.**div**
|
|
310
324
|
|
|
311
325
|
```grain
|
|
312
|
-
div : (WasmI32, WasmI32)
|
|
326
|
+
div : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
313
327
|
```
|
|
314
328
|
|
|
315
329
|
### Bigint.**rem**
|
|
316
330
|
|
|
317
331
|
```grain
|
|
318
|
-
rem : (WasmI32, WasmI32)
|
|
332
|
+
rem : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
319
333
|
```
|
|
320
334
|
|
|
321
335
|
### Bigint.**mod**
|
|
322
336
|
|
|
323
337
|
```grain
|
|
324
|
-
mod : (WasmI32, WasmI32)
|
|
338
|
+
mod : (num1: WasmI32, num2: WasmI32) => WasmI32
|
|
325
339
|
```
|
|
326
340
|
|