json-as 1.2.2 → 1.2.4
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/.claude/settings.local.json +9 -0
- package/ARCHITECTURE.md +320 -0
- package/CONTRIBUTING.md +238 -0
- package/LICENSE +2 -2
- package/README.md +35 -1
- package/TODO +1 -0
- package/assembly/custom/chars.ts +9 -0
- package/assembly/deserialize/simd/string.ts +139 -78
- package/assembly/deserialize/simple/arbitrary.ts +1 -2
- package/assembly/deserialize/simple/object.ts +1 -1
- package/assembly/deserialize/simple/set.ts +169 -0
- package/assembly/deserialize/simple/staticarray/array.ts +37 -0
- package/assembly/deserialize/simple/staticarray/bool.ts +39 -0
- package/assembly/deserialize/simple/staticarray/float.ts +44 -0
- package/assembly/deserialize/simple/staticarray/integer.ts +44 -0
- package/assembly/deserialize/simple/staticarray/string.ts +45 -0
- package/assembly/deserialize/simple/staticarray/struct.ts +47 -0
- package/assembly/deserialize/simple/staticarray.ts +28 -0
- package/assembly/deserialize/simple/string.ts +31 -40
- package/assembly/deserialize/swar/string.ts +147 -109
- package/assembly/globals/tables.ts +1 -1
- package/assembly/index.ts +419 -276
- package/assembly/serialize/simd/string.ts +134 -40
- package/assembly/serialize/simple/arbitrary.ts +18 -10
- package/assembly/serialize/simple/set.ts +34 -0
- package/assembly/serialize/simple/staticarray.ts +30 -0
- package/assembly/serialize/simple/string.ts +54 -4
- package/assembly/serialize/swar/string.ts +128 -72
- package/assembly/test.ts +18 -32
- package/assembly/util/masks.ts +47 -0
- package/assembly/util/swar.ts +14 -0
- package/eslint.config.js +77 -0
- package/lib/as-bs.ts +142 -49
- package/package.json +18 -5
- package/transform/lib/builder.d.ts +87 -0
- package/transform/lib/builder.d.ts.map +1 -0
- package/transform/lib/builder.js +169 -169
- package/transform/lib/builder.js.map +1 -1
- package/transform/lib/index.d.ts +32 -0
- package/transform/lib/index.d.ts.map +1 -0
- package/transform/lib/index.js +36 -17
- package/transform/lib/index.js.map +1 -1
- package/transform/lib/linkers/alias.d.ts +12 -0
- package/transform/lib/linkers/alias.d.ts.map +1 -0
- package/transform/lib/linkers/alias.js +1 -1
- package/transform/lib/linkers/alias.js.map +1 -1
- package/transform/lib/linkers/custom.d.ts +10 -0
- package/transform/lib/linkers/custom.d.ts.map +1 -0
- package/transform/lib/linkers/imports.d.ts +3 -0
- package/transform/lib/linkers/imports.d.ts.map +1 -0
- package/transform/lib/linkers/imports.js +1 -1
- package/transform/lib/linkers/imports.js.map +1 -1
- package/transform/lib/types.d.ts +66 -0
- package/transform/lib/types.d.ts.map +1 -0
- package/transform/lib/types.js +6 -5
- package/transform/lib/types.js.map +1 -1
- package/transform/lib/util.d.ts +18 -0
- package/transform/lib/util.d.ts.map +1 -0
- package/transform/lib/util.js +4 -4
- package/transform/lib/util.js.map +1 -1
- package/transform/lib/visitor.d.ts +84 -0
- package/transform/lib/visitor.d.ts.map +1 -0
- package/transform/lib/visitor.js +76 -76
- package/transform/lib/visitor.js.map +1 -1
- package/transform/tsconfig.json +29 -2
- package/assembly/serialize/swar/number.ts +0 -0
- package/transform/lib/linkers/classes.js +0 -36
- package/transform/lib/linkers/classes.js.map +0 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { ArrayLiteralExpression, AssertionExpression, BinaryExpression, BlockStatement, BreakStatement, CallExpression, ClassDeclaration, ClassExpression, CommaExpression, ContinueStatement, DeclarationStatement, DecoratorNode, DoStatement, ElementAccessExpression, EmptyStatement, EnumDeclaration, EnumValueDeclaration, ExportDefaultStatement, ExportImportStatement, ExportMember, ExportStatement, Expression, ExpressionStatement, FalseExpression, FieldDeclaration, FloatLiteralExpression, ForOfStatement, ForStatement, FunctionDeclaration, FunctionExpression, FunctionTypeNode, IdentifierExpression, IfStatement, ImportDeclaration, ImportStatement, IndexSignatureNode, InstanceOfExpression, IntegerLiteralExpression, InterfaceDeclaration, LiteralExpression, MethodDeclaration, NamedTypeNode, NamespaceDeclaration, NewExpression, Node, NullExpression, ObjectLiteralExpression, ParameterNode, ParenthesizedExpression, PropertyAccessExpression, RegexpLiteralExpression, ReturnStatement, Source, StringLiteralExpression, SwitchCase, SwitchStatement, TemplateLiteralExpression, TernaryExpression, ThrowStatement, TrueExpression, TryStatement, TypeDeclaration, TypeName, TypeNode, TypeParameterNode, UnaryExpression, UnaryPostfixExpression, UnaryPrefixExpression, VariableDeclaration, VariableStatement, WhileStatement } from "assemblyscript/dist/assemblyscript.js";
|
|
2
|
+
import { ThisExpression } from "types:assemblyscript/src/ast";
|
|
3
|
+
import { Visitor } from "./visitor.js";
|
|
4
|
+
export declare class ASTBuilder extends Visitor {
|
|
5
|
+
static build(node: Node): string;
|
|
6
|
+
private sb;
|
|
7
|
+
private indentLevel;
|
|
8
|
+
visitNode(node: Node): void;
|
|
9
|
+
visitSource(source: Source): void;
|
|
10
|
+
visitTypeNode(node: TypeNode): void;
|
|
11
|
+
visitThisExpression(_node: ThisExpression, _ref?: Node | null): void;
|
|
12
|
+
visitTypeName(node: TypeName): void;
|
|
13
|
+
visitNamedTypeNode(node: NamedTypeNode): void;
|
|
14
|
+
visitFunctionTypeNode(node: FunctionTypeNode): void;
|
|
15
|
+
visitTypeParameter(node: TypeParameterNode): void;
|
|
16
|
+
visitIdentifierExpression(node: IdentifierExpression): void;
|
|
17
|
+
visitArrayLiteralExpression(node: ArrayLiteralExpression): void;
|
|
18
|
+
visitObjectLiteralExpression(node: ObjectLiteralExpression): void;
|
|
19
|
+
visitAssertionExpression(node: AssertionExpression): void;
|
|
20
|
+
visitBinaryExpression(node: BinaryExpression): void;
|
|
21
|
+
visitCallExpression(node: CallExpression): void;
|
|
22
|
+
visitArguments(typeArguments: TypeNode[] | null, args: Expression[]): void;
|
|
23
|
+
visitClassExpression(node: ClassExpression): void;
|
|
24
|
+
visitCommaExpression(node: CommaExpression): void;
|
|
25
|
+
visitElementAccessExpression(node: ElementAccessExpression): void;
|
|
26
|
+
visitFunctionExpression(node: FunctionExpression): void;
|
|
27
|
+
visitLiteralExpression(node: LiteralExpression): void;
|
|
28
|
+
visitFloatLiteralExpression(node: FloatLiteralExpression): void;
|
|
29
|
+
visitInstanceOfExpression(node: InstanceOfExpression): void;
|
|
30
|
+
visitIntegerLiteralExpression(node: IntegerLiteralExpression): void;
|
|
31
|
+
visitStringLiteral(str: string): void;
|
|
32
|
+
private visitRawString;
|
|
33
|
+
visitStringLiteralExpression(node: StringLiteralExpression): void;
|
|
34
|
+
visitTemplateLiteralExpression(node: TemplateLiteralExpression): void;
|
|
35
|
+
visitRegexpLiteralExpression(node: RegexpLiteralExpression): void;
|
|
36
|
+
visitNewExpression(node: NewExpression): void;
|
|
37
|
+
visitParenthesizedExpression(node: ParenthesizedExpression): void;
|
|
38
|
+
visitPropertyAccessExpression(node: PropertyAccessExpression): void;
|
|
39
|
+
visitTernaryExpression(node: TernaryExpression): void;
|
|
40
|
+
visitUnaryExpression(node: UnaryExpression): void;
|
|
41
|
+
visitUnaryPostfixExpression(node: UnaryPostfixExpression): void;
|
|
42
|
+
visitUnaryPrefixExpression(node: UnaryPrefixExpression): void;
|
|
43
|
+
visitNodeAndTerminate(node: Node): void;
|
|
44
|
+
visitBlockStatement(node: BlockStatement): void;
|
|
45
|
+
visitBreakStatement(node: BreakStatement): void;
|
|
46
|
+
visitContinueStatement(node: ContinueStatement): void;
|
|
47
|
+
visitClassDeclaration(node: ClassDeclaration, isDefault?: boolean): void;
|
|
48
|
+
visitDoStatement(node: DoStatement): void;
|
|
49
|
+
visitEmptyStatement(_node: EmptyStatement): void;
|
|
50
|
+
visitEnumDeclaration(node: EnumDeclaration, isDefault?: boolean): void;
|
|
51
|
+
visitEnumValueDeclaration(node: EnumValueDeclaration): void;
|
|
52
|
+
visitExportImportStatement(node: ExportImportStatement): void;
|
|
53
|
+
visitExportMember(node: ExportMember): void;
|
|
54
|
+
visitExportStatement(node: ExportStatement): void;
|
|
55
|
+
visitExportDefaultStatement(node: ExportDefaultStatement): void;
|
|
56
|
+
visitExpressionStatement(node: ExpressionStatement): void;
|
|
57
|
+
visitFieldDeclaration(node: FieldDeclaration): void;
|
|
58
|
+
visitForStatement(node: ForStatement): void;
|
|
59
|
+
visitForOfStatement(node: ForOfStatement): void;
|
|
60
|
+
visitFunctionDeclaration(node: FunctionDeclaration, isDefault?: boolean): void;
|
|
61
|
+
visitFunctionCommon(node: FunctionDeclaration): void;
|
|
62
|
+
visitIfStatement(node: IfStatement): void;
|
|
63
|
+
visitImportDeclaration(node: ImportDeclaration): void;
|
|
64
|
+
visitImportStatement(node: ImportStatement): void;
|
|
65
|
+
visitIndexSignature(node: IndexSignatureNode): void;
|
|
66
|
+
visitInterfaceDeclaration(node: InterfaceDeclaration, isDefault?: boolean): void;
|
|
67
|
+
visitMethodDeclaration(node: MethodDeclaration): void;
|
|
68
|
+
visitNamespaceDeclaration(node: NamespaceDeclaration, isDefault?: boolean): void;
|
|
69
|
+
visitReturnStatement(node: ReturnStatement): void;
|
|
70
|
+
visitTrueExpression(_node: TrueExpression): void;
|
|
71
|
+
visitFalseExpression(_node: FalseExpression): void;
|
|
72
|
+
visitNullExpression(_node: NullExpression): void;
|
|
73
|
+
visitSwitchCase(node: SwitchCase): void;
|
|
74
|
+
visitSwitchStatement(node: SwitchStatement): void;
|
|
75
|
+
visitThrowStatement(node: ThrowStatement): void;
|
|
76
|
+
visitTryStatement(node: TryStatement): void;
|
|
77
|
+
visitTypeDeclaration(node: TypeDeclaration): void;
|
|
78
|
+
visitVariableDeclaration(node: VariableDeclaration): void;
|
|
79
|
+
visitVariableStatement(node: VariableStatement): void;
|
|
80
|
+
visitWhileStatement(node: WhileStatement): void;
|
|
81
|
+
serializeDecorator(node: DecoratorNode): void;
|
|
82
|
+
serializeParameter(node: ParameterNode): void;
|
|
83
|
+
serializeExternalModifiers(node: DeclarationStatement): void;
|
|
84
|
+
serializeAccessModifiers(node: DeclarationStatement): void;
|
|
85
|
+
finish(): string;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|