json-as 0.9.8-b → 0.9.9
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/README.md +8 -8
- package/assembly/test.ts +35 -8
- package/build/test.spec.wasm +0 -0
- package/build/test.spec.wasm.map +1 -1
- package/build/test.spec.wat +71 -4
- package/build/test.wasm +0 -0
- package/build/test.wasm.map +1 -1
- package/build/test.wat +18338 -5637
- package/package.json +5 -5
- package/transform/lib/index.js +12 -0
- package/transform/package.json +1 -1
- package/transform/src/index.ts +8 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "json-as",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.9",
|
|
4
4
|
"description": "JSON encoder/decoder for AssemblyScript",
|
|
5
5
|
"types": "assembly/index.ts",
|
|
6
6
|
"author": "Jairus Tanaka",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"scripts": {
|
|
18
18
|
"test": "wasmtime build/test.spec.wasm",
|
|
19
19
|
"pretest": "asc assembly/__tests__/test.spec.ts --target test",
|
|
20
|
-
"build:test": "asc assembly/test.ts --target debug",
|
|
20
|
+
"build:test": "JSON_DEBUG=true asc assembly/test.ts --target debug",
|
|
21
21
|
"build:bench": "asc bench/benchmark.ts -o bench/benchmark.wasm --transform ./transform --optimizeLevel 3 --shrinkLevel 0 --converge --noAssert --uncheckedBehavior always --runtime stub",
|
|
22
22
|
"bench:wasmtime": "wasmtime ./bench/benchmark.wasm",
|
|
23
23
|
"bench:wasmer": "wasmer --llvm ./bench/benchmark.wasm",
|
|
@@ -31,15 +31,15 @@
|
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@assemblyscript/wasi-shim": "^0.1.0",
|
|
33
33
|
"as-bench": "^0.0.0-alpha",
|
|
34
|
-
"as-console": "^
|
|
34
|
+
"as-console": "^7.0.0",
|
|
35
35
|
"assemblyscript": "^0.27.28",
|
|
36
36
|
"assemblyscript-prettier": "^3.0.1",
|
|
37
37
|
"benchmark": "^2.1.4",
|
|
38
|
-
"json-as": "
|
|
38
|
+
"json-as": "link:json-as",
|
|
39
39
|
"microtime": "^3.1.1",
|
|
40
40
|
"prettier": "^3.3.2",
|
|
41
41
|
"tinybench": "^2.8.0",
|
|
42
|
-
"typescript": "^5.5.
|
|
42
|
+
"typescript": "^5.5.3",
|
|
43
43
|
"visitor-as": "^0.11.4"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
package/transform/lib/index.js
CHANGED
|
@@ -150,6 +150,18 @@ class JSONTransform extends BaseVisitor {
|
|
|
150
150
|
else if (mem.value) {
|
|
151
151
|
mem.initialize = "this." + name.text + " = " + mem.value;
|
|
152
152
|
}
|
|
153
|
+
else if (t === "Map") {
|
|
154
|
+
mem.initialize = "this." + name.text + " = new " + mem.type + "()";
|
|
155
|
+
}
|
|
156
|
+
else if (t === "string") {
|
|
157
|
+
mem.initialize = "this." + name.text + " = \"\"";
|
|
158
|
+
}
|
|
159
|
+
else if (t === "Array") {
|
|
160
|
+
mem.initialize = "this." + name.text + " = instantiate<" + mem.type + ">()";
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
console.log(t);
|
|
164
|
+
}
|
|
153
165
|
schema.members.push(mem);
|
|
154
166
|
}
|
|
155
167
|
let SERIALIZE_RAW = "__SERIALIZE(): string {\n let out = `{";
|
package/transform/package.json
CHANGED
package/transform/src/index.ts
CHANGED
|
@@ -164,6 +164,14 @@ class JSONTransform extends BaseVisitor {
|
|
|
164
164
|
mem.initialize = "this." + name.text + " = changetype<nonnull<" + mem.type + ">>(__new(offsetof<nonnull<" + mem.type + ">>(), idof<nonnull<" + mem.type + ">>()));\n changetype<nonnull<" + mem.type + ">>(this." + name.text + ").__INITIALIZE()";
|
|
165
165
|
} else if (mem.value) {
|
|
166
166
|
mem.initialize = "this." + name.text + " = " + mem.value;
|
|
167
|
+
} else if (t === "Map") {
|
|
168
|
+
mem.initialize = "this." + name.text + " = new " + mem.type + "()"
|
|
169
|
+
} else if (t === "string") {
|
|
170
|
+
mem.initialize = "this." + name.text + " = \"\"";
|
|
171
|
+
} else if (t === "Array") {
|
|
172
|
+
mem.initialize = "this." + name.text + " = instantiate<" + mem.type + ">()";
|
|
173
|
+
} else {
|
|
174
|
+
console.log(t)
|
|
167
175
|
}
|
|
168
176
|
|
|
169
177
|
schema.members.push(mem);
|