@grain/stdlib 0.4.1 → 0.4.5
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 +63 -0
- package/LICENSE +21 -0
- package/README.md +34 -0
- package/array.gr +200 -89
- package/array.md +81 -5
- package/buffer.gr +93 -36
- package/bytes.gr +512 -407
- package/bytes.md +621 -0
- package/char.gr +119 -55
- package/char.md +200 -0
- package/hash.gr +42 -15
- package/hash.md +44 -0
- package/list.gr +121 -50
- package/map.gr +106 -110
- package/number.gr +37 -1
- package/number.md +66 -0
- package/option.gr +260 -53
- package/option.md +579 -0
- package/package.json +33 -29
- package/pervasives.gr +32 -20
- package/queue.gr +102 -30
- package/queue.md +191 -0
- package/range.gr +26 -26
- package/range.md +1 -1
- package/regex.gr +3055 -0
- package/regex.md +449 -0
- package/result.gr +216 -70
- package/result.md +446 -0
- package/runtime/dataStructures.gr +28 -29
- package/runtime/debug.gr +0 -1
- package/runtime/equal.gr +37 -16
- package/runtime/exception.gr +28 -15
- package/runtime/gc.gr +33 -20
- package/runtime/malloc.gr +19 -11
- package/runtime/numberUtils.gr +208 -105
- package/runtime/numbers.gr +217 -118
- package/runtime/string.gr +150 -59
- package/runtime/stringUtils.gr +176 -0
- package/runtime/unsafe/conv.gr +51 -8
- package/runtime/unsafe/memory.gr +14 -3
- package/runtime/unsafe/printWasm.gr +4 -4
- package/runtime/unsafe/tags.gr +2 -2
- package/runtime/unsafe/wasmf32.gr +9 -2
- package/runtime/unsafe/wasmf64.gr +9 -2
- package/runtime/unsafe/wasmi32.gr +65 -47
- package/runtime/unsafe/wasmi64.gr +78 -50
- package/runtime/wasi.gr +199 -45
- package/set.gr +281 -119
- package/set.md +502 -0
- package/stack.gr +26 -26
- package/stack.md +143 -0
- package/string.gr +697 -329
- package/string.md +815 -0
- package/sys/file.gr +356 -177
- package/sys/process.gr +10 -6
- package/sys/random.gr +3 -6
- package/sys/time.gr +3 -3
package/sys/process.gr
CHANGED
|
@@ -15,11 +15,15 @@ import WasmI32, {
|
|
|
15
15
|
and as (&),
|
|
16
16
|
eq as (==),
|
|
17
17
|
ne as (!=),
|
|
18
|
-
ltS as (<)
|
|
18
|
+
ltS as (<),
|
|
19
19
|
} from "runtime/unsafe/wasmi32"
|
|
20
20
|
import Memory from "runtime/unsafe/memory"
|
|
21
21
|
import Wasi from "runtime/wasi"
|
|
22
|
-
import {
|
|
22
|
+
import {
|
|
23
|
+
tagSimpleNumber,
|
|
24
|
+
allocateArray,
|
|
25
|
+
allocateString,
|
|
26
|
+
} from "runtime/dataStructures"
|
|
23
27
|
|
|
24
28
|
/**
|
|
25
29
|
* @section Types: Type declarations included in the Sys/Process module.
|
|
@@ -91,13 +95,13 @@ export enum Signal {
|
|
|
91
95
|
* @section Values: Functions and constants included in the Sys/Process module.
|
|
92
96
|
*/
|
|
93
97
|
|
|
94
|
-
let wasmSafeOk =
|
|
98
|
+
let wasmSafeOk = val => {
|
|
95
99
|
Memory.incRef(WasmI32.fromGrain(Ok))
|
|
96
100
|
Memory.incRef(WasmI32.fromGrain(val))
|
|
97
101
|
Ok(val)
|
|
98
102
|
}
|
|
99
103
|
|
|
100
|
-
let wasmSafeErr =
|
|
104
|
+
let wasmSafeErr = err => {
|
|
101
105
|
Memory.incRef(WasmI32.fromGrain(Err))
|
|
102
106
|
Memory.incRef(WasmI32.fromGrain(err))
|
|
103
107
|
Err(err)
|
|
@@ -150,7 +154,7 @@ export let rec argv = () => {
|
|
|
150
154
|
Memory.free(argvPtr)
|
|
151
155
|
Memory.free(argvBufPtr)
|
|
152
156
|
|
|
153
|
-
wasmSafeOk(WasmI32.toGrain(arr): Array<String>)
|
|
157
|
+
wasmSafeOk(WasmI32.toGrain(arr): (Array<String>))
|
|
154
158
|
}
|
|
155
159
|
}
|
|
156
160
|
Memory.decRef(WasmI32.fromGrain(argv))
|
|
@@ -204,7 +208,7 @@ export let rec env = () => {
|
|
|
204
208
|
Memory.free(envvPtr)
|
|
205
209
|
Memory.free(envvBufPtr)
|
|
206
210
|
|
|
207
|
-
wasmSafeOk(WasmI32.toGrain(arr): Array<String>)
|
|
211
|
+
wasmSafeOk(WasmI32.toGrain(arr): (Array<String>))
|
|
208
212
|
}
|
|
209
213
|
}
|
|
210
214
|
Memory.decRef(WasmI32.fromGrain(env))
|
package/sys/random.gr
CHANGED
|
@@ -5,10 +5,7 @@
|
|
|
5
5
|
* @example import Random from "sys/random"
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import WasmI32, {
|
|
9
|
-
eq as (==),
|
|
10
|
-
ne as (!=)
|
|
11
|
-
} from "runtime/unsafe/wasmi32"
|
|
8
|
+
import WasmI32, { eq as (==), ne as (!=) } from "runtime/unsafe/wasmi32"
|
|
12
9
|
import Memory from "runtime/unsafe/memory"
|
|
13
10
|
import Wasi from "runtime/wasi"
|
|
14
11
|
import { tagSimpleNumber } from "runtime/dataStructures"
|
|
@@ -17,13 +14,13 @@ import { tagSimpleNumber } from "runtime/dataStructures"
|
|
|
17
14
|
* @section Values: Functions and constants included in the Sys/Random module.
|
|
18
15
|
*/
|
|
19
16
|
|
|
20
|
-
let wasmSafeOk =
|
|
17
|
+
let wasmSafeOk = val => {
|
|
21
18
|
Memory.incRef(WasmI32.fromGrain(Ok))
|
|
22
19
|
Memory.incRef(WasmI32.fromGrain(val))
|
|
23
20
|
Ok(val)
|
|
24
21
|
}
|
|
25
22
|
|
|
26
|
-
let wasmSafeErr =
|
|
23
|
+
let wasmSafeErr = err => {
|
|
27
24
|
Memory.incRef(WasmI32.fromGrain(Err))
|
|
28
25
|
Memory.incRef(WasmI32.fromGrain(err))
|
|
29
26
|
Err(err)
|
package/sys/time.gr
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import WasmI32, {
|
|
9
9
|
add as (+),
|
|
10
10
|
eq as (==),
|
|
11
|
-
ne as (!=)
|
|
11
|
+
ne as (!=),
|
|
12
12
|
} from "runtime/unsafe/wasmi32"
|
|
13
13
|
import Memory from "runtime/unsafe/memory"
|
|
14
14
|
import Wasi from "runtime/wasi"
|
|
@@ -19,13 +19,13 @@ import { allocateInt64, tagSimpleNumber } from "runtime/dataStructures"
|
|
|
19
19
|
* @section Values: Functions and constants included in the Sys/Time module.
|
|
20
20
|
*/
|
|
21
21
|
|
|
22
|
-
let wasmSafeOk =
|
|
22
|
+
let wasmSafeOk = val => {
|
|
23
23
|
Memory.incRef(WasmI32.fromGrain(Ok))
|
|
24
24
|
Memory.incRef(WasmI32.fromGrain(val))
|
|
25
25
|
Ok(val)
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
let wasmSafeErr =
|
|
28
|
+
let wasmSafeErr = err => {
|
|
29
29
|
Memory.incRef(WasmI32.fromGrain(Err))
|
|
30
30
|
Memory.incRef(WasmI32.fromGrain(err))
|
|
31
31
|
Err(err)
|