@bscotch/gml-parser 1.14.2
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/LICENSE.md +29 -0
- package/README.md +151 -0
- package/assets/GmlSpec.xml +11419 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/dist/jsdoc.d.ts +79 -0
- package/dist/jsdoc.d.ts.map +1 -0
- package/dist/jsdoc.feather.d.ts +23 -0
- package/dist/jsdoc.feather.d.ts.map +1 -0
- package/dist/jsdoc.feather.js +143 -0
- package/dist/jsdoc.feather.js.map +1 -0
- package/dist/jsdoc.js +468 -0
- package/dist/jsdoc.js.map +1 -0
- package/dist/jsdoc.test.d.ts +2 -0
- package/dist/jsdoc.test.d.ts.map +1 -0
- package/dist/jsdoc.test.js +185 -0
- package/dist/jsdoc.test.js.map +1 -0
- package/dist/lexer.d.ts +3 -0
- package/dist/lexer.d.ts.map +1 -0
- package/dist/lexer.js +14 -0
- package/dist/lexer.js.map +1 -0
- package/dist/lexer.test.d.ts +2 -0
- package/dist/lexer.test.d.ts.map +1 -0
- package/dist/lexer.test.js +78 -0
- package/dist/lexer.test.js.map +1 -0
- package/dist/lib.objects.d.ts +190 -0
- package/dist/lib.objects.d.ts.map +1 -0
- package/dist/lib.objects.js +242 -0
- package/dist/lib.objects.js.map +1 -0
- package/dist/logger.d.ts +13 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +14 -0
- package/dist/logger.js.map +1 -0
- package/dist/modules.d.ts +19 -0
- package/dist/modules.d.ts.map +1 -0
- package/dist/modules.js +320 -0
- package/dist/modules.js.map +1 -0
- package/dist/modules.test.d.ts +2 -0
- package/dist/modules.test.d.ts.map +1 -0
- package/dist/modules.test.js +57 -0
- package/dist/modules.test.js.map +1 -0
- package/dist/modules.types.d.ts +78 -0
- package/dist/modules.types.d.ts.map +1 -0
- package/dist/modules.types.js +2 -0
- package/dist/modules.types.js.map +1 -0
- package/dist/modules.util.d.ts +5 -0
- package/dist/modules.util.d.ts.map +1 -0
- package/dist/modules.util.js +13 -0
- package/dist/modules.util.js.map +1 -0
- package/dist/parser.d.ts +121 -0
- package/dist/parser.d.ts.map +1 -0
- package/dist/parser.js +571 -0
- package/dist/parser.js.map +1 -0
- package/dist/parser.test.d.ts +2 -0
- package/dist/parser.test.d.ts.map +1 -0
- package/dist/parser.test.js +143 -0
- package/dist/parser.test.js.map +1 -0
- package/dist/parser.utility.d.ts +29 -0
- package/dist/parser.utility.d.ts.map +1 -0
- package/dist/parser.utility.js +125 -0
- package/dist/parser.utility.js.map +1 -0
- package/dist/project.asset.d.ts +115 -0
- package/dist/project.asset.d.ts.map +1 -0
- package/dist/project.asset.js +802 -0
- package/dist/project.asset.js.map +1 -0
- package/dist/project.code.d.ts +130 -0
- package/dist/project.code.d.ts.map +1 -0
- package/dist/project.code.js +570 -0
- package/dist/project.code.js.map +1 -0
- package/dist/project.d.ts +533 -0
- package/dist/project.d.ts.map +1 -0
- package/dist/project.diagnostics.d.ts +32 -0
- package/dist/project.diagnostics.d.ts.map +1 -0
- package/dist/project.diagnostics.js +23 -0
- package/dist/project.diagnostics.js.map +1 -0
- package/dist/project.js +1216 -0
- package/dist/project.js.map +1 -0
- package/dist/project.location.d.ts +133 -0
- package/dist/project.location.d.ts.map +1 -0
- package/dist/project.location.js +219 -0
- package/dist/project.location.js.map +1 -0
- package/dist/project.native.d.ts +26 -0
- package/dist/project.native.d.ts.map +1 -0
- package/dist/project.native.js +321 -0
- package/dist/project.native.js.map +1 -0
- package/dist/project.spec.d.ts +1298 -0
- package/dist/project.spec.d.ts.map +1 -0
- package/dist/project.spec.js +263 -0
- package/dist/project.spec.js.map +1 -0
- package/dist/project.test.d.ts +2 -0
- package/dist/project.test.d.ts.map +1 -0
- package/dist/project.test.js +633 -0
- package/dist/project.test.js.map +1 -0
- package/dist/shaderDefaults.d.ts +3 -0
- package/dist/shaderDefaults.d.ts.map +1 -0
- package/dist/shaderDefaults.js +32 -0
- package/dist/shaderDefaults.js.map +1 -0
- package/dist/signifiers.d.ts +54 -0
- package/dist/signifiers.d.ts.map +1 -0
- package/dist/signifiers.flags.d.ts +38 -0
- package/dist/signifiers.flags.d.ts.map +1 -0
- package/dist/signifiers.flags.js +131 -0
- package/dist/signifiers.flags.js.map +1 -0
- package/dist/signifiers.js +117 -0
- package/dist/signifiers.js.map +1 -0
- package/dist/spine.d.ts +28 -0
- package/dist/spine.d.ts.map +1 -0
- package/dist/spine.js +64 -0
- package/dist/spine.js.map +1 -0
- package/dist/spine.test.d.ts +2 -0
- package/dist/spine.test.d.ts.map +1 -0
- package/dist/spine.test.js +420 -0
- package/dist/spine.test.js.map +1 -0
- package/dist/spine.types.d.ts +89 -0
- package/dist/spine.types.d.ts.map +1 -0
- package/dist/spine.types.js +2 -0
- package/dist/spine.types.js.map +1 -0
- package/dist/test.lib.d.ts +3 -0
- package/dist/test.lib.d.ts.map +1 -0
- package/dist/test.lib.js +16 -0
- package/dist/test.lib.js.map +1 -0
- package/dist/tokens.categories.d.ts +22 -0
- package/dist/tokens.categories.d.ts.map +1 -0
- package/dist/tokens.categories.js +78 -0
- package/dist/tokens.categories.js.map +1 -0
- package/dist/tokens.code.d.ts +2 -0
- package/dist/tokens.code.d.ts.map +1 -0
- package/dist/tokens.code.js +523 -0
- package/dist/tokens.code.js.map +1 -0
- package/dist/tokens.d.ts +130 -0
- package/dist/tokens.d.ts.map +1 -0
- package/dist/tokens.js +13 -0
- package/dist/tokens.js.map +1 -0
- package/dist/tokens.lib.d.ts +15 -0
- package/dist/tokens.lib.d.ts.map +1 -0
- package/dist/tokens.lib.js +12 -0
- package/dist/tokens.lib.js.map +1 -0
- package/dist/tokens.shared.d.ts +4 -0
- package/dist/tokens.shared.d.ts.map +1 -0
- package/dist/tokens.shared.js +35 -0
- package/dist/tokens.shared.js.map +1 -0
- package/dist/tokens.strings.d.ts +5 -0
- package/dist/tokens.strings.d.ts.map +1 -0
- package/dist/tokens.strings.js +111 -0
- package/dist/tokens.strings.js.map +1 -0
- package/dist/types.checks.d.ts +50 -0
- package/dist/types.checks.d.ts.map +1 -0
- package/dist/types.checks.js +246 -0
- package/dist/types.checks.js.map +1 -0
- package/dist/types.d.ts +152 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.feather.d.ts +21 -0
- package/dist/types.feather.d.ts.map +1 -0
- package/dist/types.feather.js +156 -0
- package/dist/types.feather.js.map +1 -0
- package/dist/types.hover.d.ts +4 -0
- package/dist/types.hover.d.ts.map +1 -0
- package/dist/types.hover.js +99 -0
- package/dist/types.hover.js.map +1 -0
- package/dist/types.js +457 -0
- package/dist/types.js.map +1 -0
- package/dist/types.primitives.d.ts +10 -0
- package/dist/types.primitives.d.ts.map +1 -0
- package/dist/types.primitives.js +88 -0
- package/dist/types.primitives.js.map +1 -0
- package/dist/types.sprites.d.ts +8 -0
- package/dist/types.sprites.d.ts.map +1 -0
- package/dist/types.sprites.js +417 -0
- package/dist/types.sprites.js.map +1 -0
- package/dist/types.test.d.ts +2 -0
- package/dist/types.test.d.ts.map +1 -0
- package/dist/types.test.js +62 -0
- package/dist/types.test.js.map +1 -0
- package/dist/util.d.ts +50 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +168 -0
- package/dist/util.js.map +1 -0
- package/dist/util.test.d.ts +3 -0
- package/dist/util.test.d.ts.map +1 -0
- package/dist/util.test.js +63 -0
- package/dist/util.test.js.map +1 -0
- package/dist/visitor.assign.d.ts +24 -0
- package/dist/visitor.assign.d.ts.map +1 -0
- package/dist/visitor.assign.js +112 -0
- package/dist/visitor.assign.js.map +1 -0
- package/dist/visitor.d.ts +89 -0
- package/dist/visitor.d.ts.map +1 -0
- package/dist/visitor.functionExpression.d.ts +7 -0
- package/dist/visitor.functionExpression.d.ts.map +1 -0
- package/dist/visitor.functionExpression.js +216 -0
- package/dist/visitor.functionExpression.js.map +1 -0
- package/dist/visitor.globals.d.ts +59 -0
- package/dist/visitor.globals.d.ts.map +1 -0
- package/dist/visitor.globals.js +271 -0
- package/dist/visitor.globals.js.map +1 -0
- package/dist/visitor.identifierAccessor.d.ts +6 -0
- package/dist/visitor.identifierAccessor.d.ts.map +1 -0
- package/dist/visitor.identifierAccessor.js +381 -0
- package/dist/visitor.identifierAccessor.js.map +1 -0
- package/dist/visitor.js +605 -0
- package/dist/visitor.js.map +1 -0
- package/dist/visitor.processor.d.ts +66 -0
- package/dist/visitor.processor.d.ts.map +1 -0
- package/dist/visitor.processor.js +147 -0
- package/dist/visitor.processor.js.map +1 -0
- package/package.json +63 -0
package/dist/tokens.d.ts
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
export { c, categories } from './tokens.categories.js';
|
|
2
|
+
export declare const tokens: (import("./tokens.lib.js").TokenType<"Identifier"> | import("./tokens.lib.js").TokenType<"WhiteSpace"> | import("./tokens.lib.js").TokenType<"Hex"> | import("./tokens.lib.js").TokenType<"Binary"> | import("./tokens.lib.js").TokenType<"Real"> | import("./tokens.lib.js").TokenType<"HexColor"> | import("./tokens.lib.js").TokenType<"JsdocGmlLine"> | import("./tokens.lib.js").TokenType<"JsdocJs"> | import("./tokens.lib.js").TokenType<"SingleLineComment"> | import("./tokens.lib.js").TokenType<"MultiLineComment"> | import("./tokens.lib.js").TokenType<"MultiLineCommentNotTerminated"> | import("./tokens.lib.js").TokenType<"StringStart"> | import("./tokens.lib.js").TokenType<"TemplateStart"> | import("./tokens.lib.js").TokenType<"MultilineDoubleStringStart"> | import("./tokens.lib.js").TokenType<"MultilineSingleStringStart"> | import("./tokens.lib.js").TokenType<"NullPointer"> | import("./tokens.lib.js").TokenType<"InvalidPointer"> | import("./tokens.lib.js").TokenType<"Undefined"> | import("./tokens.lib.js").TokenType<"Infinity"> | import("./tokens.lib.js").TokenType<"Pi"> | import("./tokens.lib.js").TokenType<"NaN"> | import("./tokens.lib.js").TokenType<"True"> | import("./tokens.lib.js").TokenType<"False"> | import("./tokens.lib.js").TokenType<"Begin"> | import("./tokens.lib.js").TokenType<"End"> | import("./tokens.lib.js").TokenType<"If"> | import("./tokens.lib.js").TokenType<"Then"> | import("./tokens.lib.js").TokenType<"Else"> | import("./tokens.lib.js").TokenType<"While"> | import("./tokens.lib.js").TokenType<"Do"> | import("./tokens.lib.js").TokenType<"For"> | import("./tokens.lib.js").TokenType<"Break"> | import("./tokens.lib.js").TokenType<"Continue"> | import("./tokens.lib.js").TokenType<"With"> | import("./tokens.lib.js").TokenType<"Until"> | import("./tokens.lib.js").TokenType<"Repeat"> | import("./tokens.lib.js").TokenType<"Exit"> | import("./tokens.lib.js").TokenType<"And"> | import("./tokens.lib.js").TokenType<"Or"> | import("./tokens.lib.js").TokenType<"Xor"> | import("./tokens.lib.js").TokenType<"Not"> | import("./tokens.lib.js").TokenType<"Return"> | import("./tokens.lib.js").TokenType<"Modulo"> | import("./tokens.lib.js").TokenType<"Div"> | import("./tokens.lib.js").TokenType<"Switch"> | import("./tokens.lib.js").TokenType<"Case"> | import("./tokens.lib.js").TokenType<"Default"> | import("./tokens.lib.js").TokenType<"Var"> | import("./tokens.lib.js").TokenType<"Global"> | import("./tokens.lib.js").TokenType<"GlobalVar"> | import("./tokens.lib.js").TokenType<"Enum"> | import("./tokens.lib.js").TokenType<"Function"> | import("./tokens.lib.js").TokenType<"Try"> | import("./tokens.lib.js").TokenType<"Catch"> | import("./tokens.lib.js").TokenType<"Finally"> | import("./tokens.lib.js").TokenType<"Static"> | import("./tokens.lib.js").TokenType<"New"> | import("./tokens.lib.js").TokenType<"Delete"> | import("./tokens.lib.js").TokenType<"Constructor"> | import("./tokens.lib.js").TokenType<"Macro"> | import("./tokens.lib.js").TokenType<"Region"> | import("./tokens.lib.js").TokenType<"EndRegion"> | import("./tokens.lib.js").TokenType<"Self"> | import("./tokens.lib.js").TokenType<"Other"> | import("./tokens.lib.js").TokenType<"Noone"> | import("./tokens.lib.js").TokenType<"All"> | import("./tokens.lib.js").TokenType<"NullishAssign"> | import("./tokens.lib.js").TokenType<"PlusAssign"> | import("./tokens.lib.js").TokenType<"MinusAssign"> | import("./tokens.lib.js").TokenType<"MultiplyAssign"> | import("./tokens.lib.js").TokenType<"DivideAssign"> | import("./tokens.lib.js").TokenType<"ModuloAssign"> | import("./tokens.lib.js").TokenType<"BitwiseAndAssign"> | import("./tokens.lib.js").TokenType<"BitwiseOrAssign"> | import("./tokens.lib.js").TokenType<"BitwiseXorAssign"> | import("./tokens.lib.js").TokenType<"Nullish"> | import("./tokens.lib.js").TokenType<"Equals"> | import("./tokens.lib.js").TokenType<"NotEqual"> | import("./tokens.lib.js").TokenType<"Increment"> | import("./tokens.lib.js").TokenType<"Decrement"> | import("./tokens.lib.js").TokenType<"LessThanOrEqual"> | import("./tokens.lib.js").TokenType<"GreaterThanOrEqual"> | import("./tokens.lib.js").TokenType<"ShiftLeft"> | import("./tokens.lib.js").TokenType<"ShiftRight"> | import("./tokens.lib.js").TokenType<"StructAccessorStart"> | import("./tokens.lib.js").TokenType<"DsMapAccessorStart"> | import("./tokens.lib.js").TokenType<"DsListAccessorStart"> | import("./tokens.lib.js").TokenType<"DsGridAccessorStart"> | import("./tokens.lib.js").TokenType<"ArrayMutateAccessorStart"> | import("./tokens.lib.js").TokenType<"Plus"> | import("./tokens.lib.js").TokenType<"Minus"> | import("./tokens.lib.js").TokenType<"Multiply"> | import("./tokens.lib.js").TokenType<"Divide"> | import("./tokens.lib.js").TokenType<"Assign"> | import("./tokens.lib.js").TokenType<"LessThan"> | import("./tokens.lib.js").TokenType<"GreaterThan"> | import("./tokens.lib.js").TokenType<"BitwiseAnd"> | import("./tokens.lib.js").TokenType<"BitwiseOr"> | import("./tokens.lib.js").TokenType<"BitwiseXor"> | import("./tokens.lib.js").TokenType<"BitwiseNot"> | import("./tokens.lib.js").TokenType<"Comma"> | import("./tokens.lib.js").TokenType<"Semicolon"> | import("./tokens.lib.js").TokenType<"Colon"> | import("./tokens.lib.js").TokenType<"QuestionMark"> | import("./tokens.lib.js").TokenType<"StartParen"> | import("./tokens.lib.js").TokenType<"EndParen"> | import("./tokens.lib.js").TokenType<"StartBracket"> | import("./tokens.lib.js").TokenType<"EndBracket"> | import("./tokens.lib.js").TokenType<"StartBrace"> | import("./tokens.lib.js").TokenType<"EndBrace"> | import("./tokens.lib.js").TokenType<"Escape"> | import("./tokens.lib.js").TokenType<"Dot"> | import("./tokens.lib.js").TokenType<"UnicodeCharacter"> | import("./tokens.lib.js").TokenType<"HexCharacter"> | import("./tokens.lib.js").TokenType<"OctalCharacter"> | import("./tokens.lib.js").TokenType<"EscapedCharacter"> | import("./tokens.lib.js").TokenType<"Character"> | import("./tokens.lib.js").TokenType<"StringEnd"> | import("./tokens.lib.js").TokenType<"MultilineDoubleStringCharacter"> | import("./tokens.lib.js").TokenType<"MultilineDoubleStringEnd"> | import("./tokens.lib.js").TokenType<"MultilineSingleStringCharacter"> | import("./tokens.lib.js").TokenType<"MultilineSingleStringEnd"> | import("./tokens.lib.js").TokenType<"TemplateInterpStart"> | import("./tokens.lib.js").TokenType<"TemplateStringCharacter"> | import("./tokens.lib.js").TokenType<"TemplateStringEnd">)[];
|
|
3
|
+
export declare const t: {
|
|
4
|
+
Identifier: import("./tokens.lib.js").TokenType<"Identifier">;
|
|
5
|
+
WhiteSpace: import("./tokens.lib.js").TokenType<"WhiteSpace">;
|
|
6
|
+
Hex: import("./tokens.lib.js").TokenType<"Hex">;
|
|
7
|
+
Binary: import("./tokens.lib.js").TokenType<"Binary">;
|
|
8
|
+
Real: import("./tokens.lib.js").TokenType<"Real">;
|
|
9
|
+
HexColor: import("./tokens.lib.js").TokenType<"HexColor">;
|
|
10
|
+
JsdocGmlLine: import("./tokens.lib.js").TokenType<"JsdocGmlLine">;
|
|
11
|
+
JsdocJs: import("./tokens.lib.js").TokenType<"JsdocJs">;
|
|
12
|
+
SingleLineComment: import("./tokens.lib.js").TokenType<"SingleLineComment">;
|
|
13
|
+
MultiLineComment: import("./tokens.lib.js").TokenType<"MultiLineComment">;
|
|
14
|
+
MultiLineCommentNotTerminated: import("./tokens.lib.js").TokenType<"MultiLineCommentNotTerminated">;
|
|
15
|
+
StringStart: import("./tokens.lib.js").TokenType<"StringStart">;
|
|
16
|
+
TemplateStart: import("./tokens.lib.js").TokenType<"TemplateStart">;
|
|
17
|
+
MultilineDoubleStringStart: import("./tokens.lib.js").TokenType<"MultilineDoubleStringStart">;
|
|
18
|
+
MultilineSingleStringStart: import("./tokens.lib.js").TokenType<"MultilineSingleStringStart">;
|
|
19
|
+
NullPointer: import("./tokens.lib.js").TokenType<"NullPointer">;
|
|
20
|
+
InvalidPointer: import("./tokens.lib.js").TokenType<"InvalidPointer">;
|
|
21
|
+
Undefined: import("./tokens.lib.js").TokenType<"Undefined">;
|
|
22
|
+
Infinity: import("./tokens.lib.js").TokenType<"Infinity">;
|
|
23
|
+
Pi: import("./tokens.lib.js").TokenType<"Pi">;
|
|
24
|
+
NaN: import("./tokens.lib.js").TokenType<"NaN">;
|
|
25
|
+
True: import("./tokens.lib.js").TokenType<"True">;
|
|
26
|
+
False: import("./tokens.lib.js").TokenType<"False">;
|
|
27
|
+
Begin: import("./tokens.lib.js").TokenType<"Begin">;
|
|
28
|
+
End: import("./tokens.lib.js").TokenType<"End">;
|
|
29
|
+
If: import("./tokens.lib.js").TokenType<"If">;
|
|
30
|
+
Then: import("./tokens.lib.js").TokenType<"Then">;
|
|
31
|
+
Else: import("./tokens.lib.js").TokenType<"Else">;
|
|
32
|
+
While: import("./tokens.lib.js").TokenType<"While">;
|
|
33
|
+
Do: import("./tokens.lib.js").TokenType<"Do">;
|
|
34
|
+
For: import("./tokens.lib.js").TokenType<"For">;
|
|
35
|
+
Break: import("./tokens.lib.js").TokenType<"Break">;
|
|
36
|
+
Continue: import("./tokens.lib.js").TokenType<"Continue">;
|
|
37
|
+
With: import("./tokens.lib.js").TokenType<"With">;
|
|
38
|
+
Until: import("./tokens.lib.js").TokenType<"Until">;
|
|
39
|
+
Repeat: import("./tokens.lib.js").TokenType<"Repeat">;
|
|
40
|
+
Exit: import("./tokens.lib.js").TokenType<"Exit">;
|
|
41
|
+
And: import("./tokens.lib.js").TokenType<"And">;
|
|
42
|
+
Or: import("./tokens.lib.js").TokenType<"Or">;
|
|
43
|
+
Xor: import("./tokens.lib.js").TokenType<"Xor">;
|
|
44
|
+
Not: import("./tokens.lib.js").TokenType<"Not">;
|
|
45
|
+
Return: import("./tokens.lib.js").TokenType<"Return">;
|
|
46
|
+
Modulo: import("./tokens.lib.js").TokenType<"Modulo">;
|
|
47
|
+
Div: import("./tokens.lib.js").TokenType<"Div">;
|
|
48
|
+
Switch: import("./tokens.lib.js").TokenType<"Switch">;
|
|
49
|
+
Case: import("./tokens.lib.js").TokenType<"Case">;
|
|
50
|
+
Default: import("./tokens.lib.js").TokenType<"Default">;
|
|
51
|
+
Var: import("./tokens.lib.js").TokenType<"Var">;
|
|
52
|
+
Global: import("./tokens.lib.js").TokenType<"Global">;
|
|
53
|
+
GlobalVar: import("./tokens.lib.js").TokenType<"GlobalVar">;
|
|
54
|
+
Enum: import("./tokens.lib.js").TokenType<"Enum">;
|
|
55
|
+
Function: import("./tokens.lib.js").TokenType<"Function">;
|
|
56
|
+
Try: import("./tokens.lib.js").TokenType<"Try">;
|
|
57
|
+
Catch: import("./tokens.lib.js").TokenType<"Catch">;
|
|
58
|
+
Finally: import("./tokens.lib.js").TokenType<"Finally">;
|
|
59
|
+
Static: import("./tokens.lib.js").TokenType<"Static">;
|
|
60
|
+
New: import("./tokens.lib.js").TokenType<"New">;
|
|
61
|
+
Delete: import("./tokens.lib.js").TokenType<"Delete">;
|
|
62
|
+
Constructor: import("./tokens.lib.js").TokenType<"Constructor">;
|
|
63
|
+
Macro: import("./tokens.lib.js").TokenType<"Macro">;
|
|
64
|
+
Region: import("./tokens.lib.js").TokenType<"Region">;
|
|
65
|
+
EndRegion: import("./tokens.lib.js").TokenType<"EndRegion">;
|
|
66
|
+
Self: import("./tokens.lib.js").TokenType<"Self">;
|
|
67
|
+
Other: import("./tokens.lib.js").TokenType<"Other">;
|
|
68
|
+
Noone: import("./tokens.lib.js").TokenType<"Noone">;
|
|
69
|
+
All: import("./tokens.lib.js").TokenType<"All">;
|
|
70
|
+
NullishAssign: import("./tokens.lib.js").TokenType<"NullishAssign">;
|
|
71
|
+
PlusAssign: import("./tokens.lib.js").TokenType<"PlusAssign">;
|
|
72
|
+
MinusAssign: import("./tokens.lib.js").TokenType<"MinusAssign">;
|
|
73
|
+
MultiplyAssign: import("./tokens.lib.js").TokenType<"MultiplyAssign">;
|
|
74
|
+
DivideAssign: import("./tokens.lib.js").TokenType<"DivideAssign">;
|
|
75
|
+
ModuloAssign: import("./tokens.lib.js").TokenType<"ModuloAssign">;
|
|
76
|
+
BitwiseAndAssign: import("./tokens.lib.js").TokenType<"BitwiseAndAssign">;
|
|
77
|
+
BitwiseOrAssign: import("./tokens.lib.js").TokenType<"BitwiseOrAssign">;
|
|
78
|
+
BitwiseXorAssign: import("./tokens.lib.js").TokenType<"BitwiseXorAssign">;
|
|
79
|
+
Nullish: import("./tokens.lib.js").TokenType<"Nullish">;
|
|
80
|
+
Equals: import("./tokens.lib.js").TokenType<"Equals">;
|
|
81
|
+
NotEqual: import("./tokens.lib.js").TokenType<"NotEqual">;
|
|
82
|
+
Increment: import("./tokens.lib.js").TokenType<"Increment">;
|
|
83
|
+
Decrement: import("./tokens.lib.js").TokenType<"Decrement">;
|
|
84
|
+
LessThanOrEqual: import("./tokens.lib.js").TokenType<"LessThanOrEqual">;
|
|
85
|
+
GreaterThanOrEqual: import("./tokens.lib.js").TokenType<"GreaterThanOrEqual">;
|
|
86
|
+
ShiftLeft: import("./tokens.lib.js").TokenType<"ShiftLeft">;
|
|
87
|
+
ShiftRight: import("./tokens.lib.js").TokenType<"ShiftRight">;
|
|
88
|
+
StructAccessorStart: import("./tokens.lib.js").TokenType<"StructAccessorStart">;
|
|
89
|
+
DsMapAccessorStart: import("./tokens.lib.js").TokenType<"DsMapAccessorStart">;
|
|
90
|
+
DsListAccessorStart: import("./tokens.lib.js").TokenType<"DsListAccessorStart">;
|
|
91
|
+
DsGridAccessorStart: import("./tokens.lib.js").TokenType<"DsGridAccessorStart">;
|
|
92
|
+
ArrayMutateAccessorStart: import("./tokens.lib.js").TokenType<"ArrayMutateAccessorStart">;
|
|
93
|
+
Plus: import("./tokens.lib.js").TokenType<"Plus">;
|
|
94
|
+
Minus: import("./tokens.lib.js").TokenType<"Minus">;
|
|
95
|
+
Multiply: import("./tokens.lib.js").TokenType<"Multiply">;
|
|
96
|
+
Divide: import("./tokens.lib.js").TokenType<"Divide">;
|
|
97
|
+
Assign: import("./tokens.lib.js").TokenType<"Assign">;
|
|
98
|
+
LessThan: import("./tokens.lib.js").TokenType<"LessThan">;
|
|
99
|
+
GreaterThan: import("./tokens.lib.js").TokenType<"GreaterThan">;
|
|
100
|
+
BitwiseAnd: import("./tokens.lib.js").TokenType<"BitwiseAnd">;
|
|
101
|
+
BitwiseOr: import("./tokens.lib.js").TokenType<"BitwiseOr">;
|
|
102
|
+
BitwiseXor: import("./tokens.lib.js").TokenType<"BitwiseXor">;
|
|
103
|
+
BitwiseNot: import("./tokens.lib.js").TokenType<"BitwiseNot">;
|
|
104
|
+
Comma: import("./tokens.lib.js").TokenType<"Comma">;
|
|
105
|
+
Semicolon: import("./tokens.lib.js").TokenType<"Semicolon">;
|
|
106
|
+
Colon: import("./tokens.lib.js").TokenType<"Colon">;
|
|
107
|
+
QuestionMark: import("./tokens.lib.js").TokenType<"QuestionMark">;
|
|
108
|
+
StartParen: import("./tokens.lib.js").TokenType<"StartParen">;
|
|
109
|
+
EndParen: import("./tokens.lib.js").TokenType<"EndParen">;
|
|
110
|
+
StartBracket: import("./tokens.lib.js").TokenType<"StartBracket">;
|
|
111
|
+
EndBracket: import("./tokens.lib.js").TokenType<"EndBracket">;
|
|
112
|
+
StartBrace: import("./tokens.lib.js").TokenType<"StartBrace">;
|
|
113
|
+
EndBrace: import("./tokens.lib.js").TokenType<"EndBrace">;
|
|
114
|
+
Escape: import("./tokens.lib.js").TokenType<"Escape">;
|
|
115
|
+
Dot: import("./tokens.lib.js").TokenType<"Dot">;
|
|
116
|
+
UnicodeCharacter: import("./tokens.lib.js").TokenType<"UnicodeCharacter">;
|
|
117
|
+
HexCharacter: import("./tokens.lib.js").TokenType<"HexCharacter">;
|
|
118
|
+
OctalCharacter: import("./tokens.lib.js").TokenType<"OctalCharacter">;
|
|
119
|
+
EscapedCharacter: import("./tokens.lib.js").TokenType<"EscapedCharacter">;
|
|
120
|
+
Character: import("./tokens.lib.js").TokenType<"Character">;
|
|
121
|
+
StringEnd: import("./tokens.lib.js").TokenType<"StringEnd">;
|
|
122
|
+
MultilineDoubleStringCharacter: import("./tokens.lib.js").TokenType<"MultilineDoubleStringCharacter">;
|
|
123
|
+
MultilineDoubleStringEnd: import("./tokens.lib.js").TokenType<"MultilineDoubleStringEnd">;
|
|
124
|
+
MultilineSingleStringCharacter: import("./tokens.lib.js").TokenType<"MultilineSingleStringCharacter">;
|
|
125
|
+
MultilineSingleStringEnd: import("./tokens.lib.js").TokenType<"MultilineSingleStringEnd">;
|
|
126
|
+
TemplateInterpStart: import("./tokens.lib.js").TokenType<"TemplateInterpStart">;
|
|
127
|
+
TemplateStringCharacter: import("./tokens.lib.js").TokenType<"TemplateStringCharacter">;
|
|
128
|
+
TemplateStringEnd: import("./tokens.lib.js").TokenType<"TemplateStringEnd">;
|
|
129
|
+
};
|
|
130
|
+
//# sourceMappingURL=tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,MAAM,uzMAMlB,CAAC;AAEF,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA4B,CAAC"}
|
package/dist/tokens.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { codeTokens } from './tokens.code.js';
|
|
2
|
+
import { tokenListToObject } from './tokens.lib.js';
|
|
3
|
+
import { multilineDoubleStringTokens, multilineSingleStringTokens, stringTokens, templateTokens, } from './tokens.strings.js';
|
|
4
|
+
export { c, categories } from './tokens.categories.js';
|
|
5
|
+
export const tokens = [
|
|
6
|
+
...codeTokens,
|
|
7
|
+
...stringTokens,
|
|
8
|
+
...multilineDoubleStringTokens,
|
|
9
|
+
...multilineSingleStringTokens,
|
|
10
|
+
...templateTokens,
|
|
11
|
+
];
|
|
12
|
+
export const t = tokenListToObject(tokens);
|
|
13
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,YAAY,EACZ,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,GAAG,UAAU;IACb,GAAG,YAAY;IACf,GAAG,2BAA2B;IAC9B,GAAG,2BAA2B;IAC9B,GAAG,cAAc;CAClB,CAAC;AAEF,MAAM,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ITokenConfig as ITokenConfigBase, TokenType as TokenTypeBase } from 'chevrotain';
|
|
2
|
+
export { Lexer } from 'chevrotain';
|
|
3
|
+
export type GmlLexerMode = 'code' | 'string' | 'multilineDoubleString' | 'multilineSingleString' | 'template';
|
|
4
|
+
export interface TokenType<Name extends string = string> extends TokenTypeBase {
|
|
5
|
+
name: Name;
|
|
6
|
+
}
|
|
7
|
+
export interface ITokenConfig<Name extends string = string> extends ITokenConfigBase {
|
|
8
|
+
name: Name;
|
|
9
|
+
push_mode?: GmlLexerMode;
|
|
10
|
+
}
|
|
11
|
+
export declare function createToken<Name extends string = string>(config: ITokenConfig<Name>): TokenType<Name>;
|
|
12
|
+
export declare function tokenListToObject<T extends TokenType[]>(tokens: T): {
|
|
13
|
+
[Name in T[number]['name']]: TokenType<Name>;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=tokens.lib.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.lib.d.ts","sourceRoot":"","sources":["../src/tokens.lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,IAAI,gBAAgB,EAChC,SAAS,IAAI,aAAa,EAC3B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,QAAQ,GACR,uBAAuB,GACvB,uBAAuB,GACvB,UAAU,CAAC;AAEf,MAAM,WAAW,SAAS,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAC5E,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,YAAY,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,CACxD,SAAQ,gBAAgB;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B;AAED,wBAAgB,WAAW,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EACtD,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,GACzB,SAAS,CAAC,IAAI,CAAC,CAEjB;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,SAAS,EAAE,EACrD,MAAM,EAAE,CAAC,GACR;KAAG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;CAAE,CAKlD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createToken as createTokenBase, } from 'chevrotain';
|
|
2
|
+
export { Lexer } from 'chevrotain';
|
|
3
|
+
export function createToken(config) {
|
|
4
|
+
return createTokenBase(config);
|
|
5
|
+
}
|
|
6
|
+
export function tokenListToObject(tokens) {
|
|
7
|
+
return tokens.reduce((acc, token) => {
|
|
8
|
+
acc[token.name] = token;
|
|
9
|
+
return acc;
|
|
10
|
+
}, {});
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=tokens.lib.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.lib.js","sourceRoot":"","sources":["../src/tokens.lib.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,IAAI,eAAe,GAG/B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAmBnC,MAAM,UAAU,WAAW,CACzB,MAA0B;IAE1B,OAAO,eAAe,CAAC,MAAM,CAAQ,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAS;IAET,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAClC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAS,CAAC,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const identifier: import("./tokens.lib.js").TokenType<"Identifier">;
|
|
2
|
+
export declare const horizontalWhitespace: import("./tokens.lib.js").TokenType<"WhiteSpace">;
|
|
3
|
+
export declare const numericLiterals: (import("./tokens.lib.js").TokenType<"Hex"> | import("./tokens.lib.js").TokenType<"Binary"> | import("./tokens.lib.js").TokenType<"Real"> | import("./tokens.lib.js").TokenType<"HexColor">)[];
|
|
4
|
+
//# sourceMappingURL=tokens.shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.shared.d.ts","sourceRoot":"","sources":["../src/tokens.shared.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,mDAGrB,CAAC;AAEH,eAAO,MAAM,oBAAoB,mDAK/B,CAAC;AAEH,eAAO,MAAM,eAAe,gMAqB3B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { c } from './tokens.categories.js';
|
|
2
|
+
import { Lexer, createToken } from './tokens.lib.js';
|
|
3
|
+
export const identifier = createToken({
|
|
4
|
+
name: 'Identifier',
|
|
5
|
+
pattern: /\b[a-zA-Z_][a-zA-Z0-9_]*\b/,
|
|
6
|
+
});
|
|
7
|
+
export const horizontalWhitespace = createToken({
|
|
8
|
+
name: 'WhiteSpace',
|
|
9
|
+
pattern: /[ \t]+/,
|
|
10
|
+
line_breaks: true,
|
|
11
|
+
group: Lexer.SKIPPED,
|
|
12
|
+
});
|
|
13
|
+
export const numericLiterals = [
|
|
14
|
+
createToken({
|
|
15
|
+
name: 'Hex',
|
|
16
|
+
pattern: /(0x|\$)[\da-fA-F_]+/,
|
|
17
|
+
categories: [c.NumericLiteral],
|
|
18
|
+
}),
|
|
19
|
+
createToken({
|
|
20
|
+
name: 'Binary',
|
|
21
|
+
pattern: /0b[01_]+/,
|
|
22
|
+
categories: [c.NumericLiteral],
|
|
23
|
+
}),
|
|
24
|
+
createToken({
|
|
25
|
+
name: 'Real',
|
|
26
|
+
pattern: /(\d[\d_]*(\.\d[\d_]*)?)|\.\d[\d_]*/,
|
|
27
|
+
categories: [c.NumericLiteral],
|
|
28
|
+
}),
|
|
29
|
+
createToken({
|
|
30
|
+
name: 'HexColor',
|
|
31
|
+
pattern: /#[\da-fA-F]{6}\b/,
|
|
32
|
+
categories: [c.NumericLiteral],
|
|
33
|
+
}),
|
|
34
|
+
];
|
|
35
|
+
//# sourceMappingURL=tokens.shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.shared.js","sourceRoot":"","sources":["../src/tokens.shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,UAAU,GAAG,WAAW,CAAC;IACpC,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,4BAA4B;CACtC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;IAC9C,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,QAAQ;IACjB,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,KAAK,CAAC,OAAO;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,WAAW,CAAC;QACV,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,qBAAqB;QAC9B,UAAU,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;KAC/B,CAAC;IACF,WAAW,CAAC;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,UAAU;QACnB,UAAU,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;KAC/B,CAAC;IACF,WAAW,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,oCAAoC;QAC7C,UAAU,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;KAC/B,CAAC;IACF,WAAW,CAAC;QACV,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,kBAAkB;QAC3B,UAAU,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;KAC/B,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const stringTokens: (import("./tokens.lib.js").TokenType<"UnicodeCharacter"> | import("./tokens.lib.js").TokenType<"HexCharacter"> | import("./tokens.lib.js").TokenType<"OctalCharacter"> | import("./tokens.lib.js").TokenType<"EscapedCharacter"> | import("./tokens.lib.js").TokenType<"Character"> | import("./tokens.lib.js").TokenType<"StringEnd">)[];
|
|
2
|
+
export declare const multilineDoubleStringTokens: (import("./tokens.lib.js").TokenType<"MultilineDoubleStringCharacter"> | import("./tokens.lib.js").TokenType<"MultilineDoubleStringEnd">)[];
|
|
3
|
+
export declare const multilineSingleStringTokens: (import("./tokens.lib.js").TokenType<"MultilineSingleStringCharacter"> | import("./tokens.lib.js").TokenType<"MultilineSingleStringEnd">)[];
|
|
4
|
+
export declare const templateTokens: (import("./tokens.lib.js").TokenType<"UnicodeCharacter"> | import("./tokens.lib.js").TokenType<"HexCharacter"> | import("./tokens.lib.js").TokenType<"OctalCharacter"> | import("./tokens.lib.js").TokenType<"EscapedCharacter"> | import("./tokens.lib.js").TokenType<"TemplateInterpStart"> | import("./tokens.lib.js").TokenType<"TemplateStringCharacter"> | import("./tokens.lib.js").TokenType<"TemplateStringEnd">)[];
|
|
5
|
+
//# sourceMappingURL=tokens.strings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.strings.d.ts","sourceRoot":"","sources":["../src/tokens.strings.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,YAAY,2UAaxB,CAAC;AAEF,eAAO,MAAM,2BAA2B,6IAuBvC,CAAC;AAEF,eAAO,MAAM,2BAA2B,6IAuBvC,CAAC;AAEF,eAAO,MAAM,cAAc,8ZAmB1B,CAAC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { c } from './tokens.categories.js';
|
|
2
|
+
import { createToken } from './tokens.lib.js';
|
|
3
|
+
const escapedCharacterTokens = [
|
|
4
|
+
createToken({
|
|
5
|
+
name: 'UnicodeCharacter',
|
|
6
|
+
pattern: /\\u[0-9a-fA-F]{2,}/,
|
|
7
|
+
start_chars_hint: ['\\'],
|
|
8
|
+
categories: [c.StringLiteral, c.Substring],
|
|
9
|
+
}),
|
|
10
|
+
createToken({
|
|
11
|
+
name: 'HexCharacter',
|
|
12
|
+
pattern: /\\x[0-9a-fA-F]+/,
|
|
13
|
+
start_chars_hint: ['\\'],
|
|
14
|
+
categories: [c.StringLiteral, c.Substring],
|
|
15
|
+
}),
|
|
16
|
+
createToken({
|
|
17
|
+
name: 'OctalCharacter',
|
|
18
|
+
pattern: /\\[0-7]+/,
|
|
19
|
+
start_chars_hint: ['\\'],
|
|
20
|
+
categories: [c.StringLiteral, c.Substring],
|
|
21
|
+
}),
|
|
22
|
+
createToken({
|
|
23
|
+
name: 'EscapedCharacter',
|
|
24
|
+
pattern: /\\./,
|
|
25
|
+
start_chars_hint: ['\\'],
|
|
26
|
+
categories: [c.StringLiteral, c.Substring],
|
|
27
|
+
}),
|
|
28
|
+
];
|
|
29
|
+
export const stringTokens = [
|
|
30
|
+
...escapedCharacterTokens,
|
|
31
|
+
createToken({
|
|
32
|
+
name: 'Character',
|
|
33
|
+
pattern: /[^\n\r"]/,
|
|
34
|
+
categories: [c.StringLiteral, c.Substring],
|
|
35
|
+
}),
|
|
36
|
+
createToken({
|
|
37
|
+
name: 'StringEnd',
|
|
38
|
+
pattern: /"/,
|
|
39
|
+
categories: [c.Separators, c.StringLiteral],
|
|
40
|
+
pop_mode: true,
|
|
41
|
+
}),
|
|
42
|
+
];
|
|
43
|
+
export const multilineDoubleStringTokens = [
|
|
44
|
+
createToken({
|
|
45
|
+
name: 'MultilineDoubleStringCharacter',
|
|
46
|
+
pattern: /[^"]/,
|
|
47
|
+
line_breaks: true,
|
|
48
|
+
categories: [
|
|
49
|
+
c.StringLiteral,
|
|
50
|
+
c.Substring,
|
|
51
|
+
c.MultilineStringLiteral,
|
|
52
|
+
c.DoubleQuoted,
|
|
53
|
+
],
|
|
54
|
+
}),
|
|
55
|
+
createToken({
|
|
56
|
+
name: 'MultilineDoubleStringEnd',
|
|
57
|
+
pattern: /"/,
|
|
58
|
+
categories: [
|
|
59
|
+
c.Separators,
|
|
60
|
+
c.StringLiteral,
|
|
61
|
+
c.MultilineStringLiteral,
|
|
62
|
+
c.DoubleQuoted,
|
|
63
|
+
],
|
|
64
|
+
pop_mode: true,
|
|
65
|
+
}),
|
|
66
|
+
];
|
|
67
|
+
export const multilineSingleStringTokens = [
|
|
68
|
+
createToken({
|
|
69
|
+
name: 'MultilineSingleStringCharacter',
|
|
70
|
+
pattern: /[^']/,
|
|
71
|
+
line_breaks: true,
|
|
72
|
+
categories: [
|
|
73
|
+
c.StringLiteral,
|
|
74
|
+
c.Substring,
|
|
75
|
+
c.MultilineStringLiteral,
|
|
76
|
+
c.SingleQuoted,
|
|
77
|
+
],
|
|
78
|
+
}),
|
|
79
|
+
createToken({
|
|
80
|
+
name: 'MultilineSingleStringEnd',
|
|
81
|
+
pattern: /'/,
|
|
82
|
+
categories: [
|
|
83
|
+
c.Separators,
|
|
84
|
+
c.StringLiteral,
|
|
85
|
+
c.MultilineStringLiteral,
|
|
86
|
+
c.SingleQuoted,
|
|
87
|
+
],
|
|
88
|
+
pop_mode: true,
|
|
89
|
+
}),
|
|
90
|
+
];
|
|
91
|
+
export const templateTokens = [
|
|
92
|
+
...escapedCharacterTokens,
|
|
93
|
+
createToken({
|
|
94
|
+
name: 'TemplateInterpStart',
|
|
95
|
+
pattern: /\{/,
|
|
96
|
+
categories: [c.Separators, c.TemplateLiteral],
|
|
97
|
+
push_mode: 'code',
|
|
98
|
+
}),
|
|
99
|
+
createToken({
|
|
100
|
+
name: 'TemplateStringCharacter',
|
|
101
|
+
pattern: /[^"\r\n]/,
|
|
102
|
+
categories: [c.Substring, c.TemplateLiteral],
|
|
103
|
+
}),
|
|
104
|
+
createToken({
|
|
105
|
+
name: 'TemplateStringEnd',
|
|
106
|
+
pattern: /"/,
|
|
107
|
+
categories: [c.Separators, c.TemplateLiteral],
|
|
108
|
+
pop_mode: true,
|
|
109
|
+
}),
|
|
110
|
+
];
|
|
111
|
+
//# sourceMappingURL=tokens.strings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.strings.js","sourceRoot":"","sources":["../src/tokens.strings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Signifier } from './signifiers.js';
|
|
2
|
+
import { KnownTypesMap } from './types.feather.js';
|
|
3
|
+
import { Type, TypeStore } from './types.js';
|
|
4
|
+
import { PrimitiveName } from './types.primitives.js';
|
|
5
|
+
export declare function isTypeOfKind<T extends PrimitiveName>(item: any, kind: T): item is Type<T>;
|
|
6
|
+
export declare function isTypeStoreOfKind<T extends PrimitiveName>(item: any, kind: T): item is TypeStore<T>;
|
|
7
|
+
export declare function isTypeOrStoreOfKind<T extends PrimitiveName>(item: any, kind: T): item is Type<T> | TypeStore<T>;
|
|
8
|
+
/**
|
|
9
|
+
* Given some kind of type collection, find the first one matching
|
|
10
|
+
* a given kind.
|
|
11
|
+
*/
|
|
12
|
+
export declare function getTypeOfKind<T extends PrimitiveName>(from: undefined | Signifier | Type | TypeStore | (Type | TypeStore)[], kind: T | ReadonlyArray<T>): {
|
|
13
|
+
[Kind in T]: Type<Kind>;
|
|
14
|
+
}[T] | undefined;
|
|
15
|
+
export declare function getTypesOfKind<T extends PrimitiveName>(from: undefined | Signifier | Type | TypeStore | (Type | TypeStore)[], kind: T | ReadonlyArray<T>): {
|
|
16
|
+
[Kind in T]: Type<Kind>;
|
|
17
|
+
}[T][];
|
|
18
|
+
/** Get the typestore of item, if present. Else get the type on item. */
|
|
19
|
+
export declare function getTypeStoreOrType(item: Signifier | Type | TypeStore | Type[]): TypeStore | Type[];
|
|
20
|
+
/** Things that can be converted into an array of types */
|
|
21
|
+
export type Typeable = Signifier | Type | TypeStore | (Type | TypeStore)[];
|
|
22
|
+
export declare function getTypes(items: Typeable | undefined): Type[];
|
|
23
|
+
export declare function isTypeInstance(item: any): item is Type;
|
|
24
|
+
export declare function isTypeStore(item: any): item is TypeStore;
|
|
25
|
+
/**
|
|
26
|
+
* Returns `true` if `narrowed` is a subtype of `type`,
|
|
27
|
+
* meaning that it is a subset/narrowed/compatible/same type
|
|
28
|
+
* compared to otherType.
|
|
29
|
+
*
|
|
30
|
+
* Identical types also return `true`.
|
|
31
|
+
*/
|
|
32
|
+
export declare function narrows(narrowType: Type | TypeStore | Type[], broadType: Type | TypeStore | Type[]): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* For types inferred from expressions, normalize away utility
|
|
35
|
+
* types like `InstanceType` and `ObjectType`, and perform any
|
|
36
|
+
* other type-normalization tasks. Returns a new TypeStore, so
|
|
37
|
+
* if maintaining reference links is essential this function should
|
|
38
|
+
* not be used.
|
|
39
|
+
*/
|
|
40
|
+
export declare function normalizeType(inferred: Typeable, knownTypes: KnownTypesMap): TypeStore;
|
|
41
|
+
/**
|
|
42
|
+
* Given an expected type that might include generics, and an inferred
|
|
43
|
+
* type that should map onto it, update a generics map linking generics
|
|
44
|
+
* to inferred types by name.
|
|
45
|
+
*/
|
|
46
|
+
export declare function updateGenericsMap(expected: Typeable, inferred: Typeable, knownTypes: KnownTypesMap,
|
|
47
|
+
/** Map of generics by name to their *inferred type* */
|
|
48
|
+
generics?: Map<string, TypeStore>): Map<string, TypeStore<"Array" | "Bool" | "Enum" | "Function" | "Pointer" | "Real" | "String" | "Struct" | "Undefined" | "ArgumentIdentity" | "Any" | "Asset.GMAnimCurve" | "Asset.GMAudioGroup" | "Asset.GMFont" | "Asset.GMObject" | "Asset.GMParticleSystem" | "Asset.GMPath" | "Asset.GMRoom" | "Asset.GMScript" | "Asset.GMSequence" | "Asset.GMShader" | "Asset.GMSound" | "Asset.GMSprite" | "Asset.GMTileSet" | "Asset.GMTimeline" | "Asset.Script" | "Id.AudioEmitter" | "Id.AudioListener" | "Id.AudioSyncGroup" | "Id.BackgroundElement" | "Id.BinaryFile" | "Id.Buffer" | "Id.Camera" | "Id.DsGrid" | "Id.DsList" | "Id.DsMap" | "Id.DsPriority" | "Id.DsQueue" | "Id.DsStack" | "Id.ExternalCall" | "Id.Gif" | "Id.Instance" | "Id.Layer" | "Id.MpGrid" | "Id.ParticleEmitter" | "Id.ParticleSystem" | "Id.ParticleType" | "Id.PhysicsIndex" | "Id.PhysicsParticleGroup" | "Id.Sampler" | "Id.SequenceElement" | "Id.Socket" | "Id.Sound" | "Id.SpriteElement" | "Id.Surface" | "Id.TextFile" | "Id.Texture" | "Id.TileElementId" | "Id.TileMapElement" | "Id.TimeSource" | "Id.Uniform" | "Id.VertexBuffer" | "Id.VertexFormat" | "Mixed" | "EnumMember" | "Unknown" | "Never" | "InstanceType" | "ObjectType" | "StaticType">>;
|
|
49
|
+
export declare function replaceGenerics(startingType: Typeable, knownTypes: KnownTypesMap, generics: Map<string, TypeStore>): TypeStore;
|
|
50
|
+
//# sourceMappingURL=types.checks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.checks.d.ts","sourceRoot":"","sources":["../src/types.checks.ts"],"names":[],"mappings":"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"}
|