vanta-engine 1.0.0 → 1.0.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.
@@ -1,971 +0,0 @@
1
- // @ts-nocheck
2
- // Generated by JavaScript APG, Version [`apg-js2`](https://github.com/ldthomas/apg-js2)
3
- export default function () {
4
- "use strict";
5
- //```
6
- // SUMMARY
7
- // rules = 37
8
- // udts = 0
9
- // opcodes = 705
10
- // --- ABNF original opcodes
11
- // ALT = 22
12
- // CAT = 91
13
- // REP = 194
14
- // RNM = 242
15
- // TLS = 88
16
- // TBS = 65
17
- // TRG = 3
18
- // --- SABNF superset opcodes
19
- // UDT = 0
20
- // AND = 0
21
- // NOT = 0
22
- // BKA = 0
23
- // BKN = 0
24
- // BKR = 0
25
- // ABG = 0
26
- // AEN = 0
27
- // characters = [9 - 125]
28
- //```
29
- /* OBJECT IDENTIFIER (for internal parser use) */
30
- this.grammarObject = 'grammarObject';
31
- /* RULES */
32
- this.rules = [];
33
- this.rules[0] = { name: 'WSP', lower: 'wsp', index: 0, isBkr: false };
34
- this.rules[1] = { name: 'CR', lower: 'cr', index: 1, isBkr: false };
35
- this.rules[2] = { name: 'LF', lower: 'lf', index: 2, isBkr: false };
36
- this.rules[3] = { name: 'CRLF', lower: 'crlf', index: 3, isBkr: false };
37
- this.rules[4] = { name: 'NEWLINE', lower: 'newline', index: 4, isBkr: false };
38
- this.rules[5] = { name: 'DIGIT', lower: 'digit', index: 5, isBkr: false };
39
- this.rules[6] = { name: 'ALPHA', lower: 'alpha', index: 6, isBkr: false };
40
- this.rules[7] = { name: 'INTEGER', lower: 'integer', index: 7, isBkr: false };
41
- this.rules[8] = { name: 'FLOAT', lower: 'float', index: 8, isBkr: false };
42
- this.rules[9] = { name: 'LITERAL', lower: 'literal', index: 9, isBkr: false };
43
- this.rules[10] = { name: 'LABEL', lower: 'label', index: 10, isBkr: false };
44
- this.rules[11] = { name: 'PATH', lower: 'path', index: 11, isBkr: false };
45
- this.rules[12] = { name: 'IMPORT', lower: 'import', index: 12, isBkr: false };
46
- this.rules[13] = { name: 'EXTENSION', lower: 'extension', index: 13, isBkr: false };
47
- this.rules[14] = { name: 'BASE-TYPE', lower: 'base-type', index: 14, isBkr: false };
48
- this.rules[15] = { name: 'PRECISION', lower: 'precision', index: 15, isBkr: false };
49
- this.rules[16] = { name: 'TYPE', lower: 'type', index: 16, isBkr: false };
50
- this.rules[17] = { name: 'VERTEX-ATTRIBUTE-DESCRIPTOR', lower: 'vertex-attribute-descriptor', index: 17, isBkr: false };
51
- this.rules[18] = { name: 'DESCRIPTOR', lower: 'descriptor', index: 18, isBkr: false };
52
- this.rules[19] = { name: 'DECLARATION', lower: 'declaration', index: 19, isBkr: false };
53
- this.rules[20] = { name: 'ARGUMENTS', lower: 'arguments', index: 20, isBkr: false };
54
- this.rules[21] = { name: 'CALL', lower: 'call', index: 21, isBkr: false };
55
- this.rules[22] = { name: 'PRIMARY', lower: 'primary', index: 22, isBkr: false };
56
- this.rules[23] = { name: 'ELEMENT', lower: 'element', index: 23, isBkr: false };
57
- this.rules[24] = { name: 'FACTOR', lower: 'factor', index: 24, isBkr: false };
58
- this.rules[25] = { name: 'TERM', lower: 'term', index: 25, isBkr: false };
59
- this.rules[26] = { name: 'CAST-EXPR', lower: 'cast-expr', index: 26, isBkr: false };
60
- this.rules[27] = { name: 'EXPRESSION', lower: 'expression', index: 27, isBkr: false };
61
- this.rules[28] = { name: 'PARENTHESES', lower: 'parentheses', index: 28, isBkr: false };
62
- this.rules[29] = { name: 'ASSIGNMENT-LHS', lower: 'assignment-lhs', index: 29, isBkr: false };
63
- this.rules[30] = { name: 'ASSIGNMENT', lower: 'assignment', index: 30, isBkr: false };
64
- this.rules[31] = { name: 'STATEMENT', lower: 'statement', index: 31, isBkr: false };
65
- this.rules[32] = { name: 'STATEMENT-LINE', lower: 'statement-line', index: 32, isBkr: false };
66
- this.rules[33] = { name: 'FUNCTION-BODY', lower: 'function-body', index: 33, isBkr: false };
67
- this.rules[34] = { name: 'FUNCTION-DEFINITION-ARGUMENTS', lower: 'function-definition-arguments', index: 34, isBkr: false };
68
- this.rules[35] = { name: 'FUNCTION-DEFINITION', lower: 'function-definition', index: 35, isBkr: false };
69
- this.rules[36] = { name: 'ROOT', lower: 'root', index: 36, isBkr: false };
70
- /* UDTS */
71
- this.udts = [];
72
- /* OPCODES */
73
- /* WSP */
74
- this.rules[0].opcodes = [];
75
- this.rules[0].opcodes[0] = { type: 1, children: [1, 2] }; // ALT
76
- this.rules[0].opcodes[1] = { type: 6, string: [32] }; // TBS
77
- this.rules[0].opcodes[2] = { type: 6, string: [9] }; // TBS
78
- /* CR */
79
- this.rules[1].opcodes = [];
80
- this.rules[1].opcodes[0] = { type: 6, string: [13] }; // TBS
81
- /* LF */
82
- this.rules[2].opcodes = [];
83
- this.rules[2].opcodes[0] = { type: 6, string: [10] }; // TBS
84
- /* CRLF */
85
- this.rules[3].opcodes = [];
86
- this.rules[3].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
87
- this.rules[3].opcodes[1] = { type: 4, index: 1 }; // RNM(CR)
88
- this.rules[3].opcodes[2] = { type: 4, index: 2 }; // RNM(LF)
89
- /* NEWLINE */
90
- this.rules[4].opcodes = [];
91
- this.rules[4].opcodes[0] = { type: 1, children: [1, 2, 3] }; // ALT
92
- this.rules[4].opcodes[1] = { type: 4, index: 3 }; // RNM(CRLF)
93
- this.rules[4].opcodes[2] = { type: 4, index: 2 }; // RNM(LF)
94
- this.rules[4].opcodes[3] = { type: 4, index: 1 }; // RNM(CR)
95
- /* DIGIT */
96
- this.rules[5].opcodes = [];
97
- this.rules[5].opcodes[0] = { type: 5, min: 48, max: 57 }; // TRG
98
- /* ALPHA */
99
- this.rules[6].opcodes = [];
100
- this.rules[6].opcodes[0] = { type: 1, children: [1, 2] }; // ALT
101
- this.rules[6].opcodes[1] = { type: 5, min: 65, max: 90 }; // TRG
102
- this.rules[6].opcodes[2] = { type: 5, min: 97, max: 122 }; // TRG
103
- /* INTEGER */
104
- this.rules[7].opcodes = [];
105
- this.rules[7].opcodes[0] = { type: 2, children: [1, 5] }; // CAT
106
- this.rules[7].opcodes[1] = { type: 3, min: 0, max: 1 }; // REP
107
- this.rules[7].opcodes[2] = { type: 1, children: [3, 4] }; // ALT
108
- this.rules[7].opcodes[3] = { type: 7, string: [45] }; // TLS
109
- this.rules[7].opcodes[4] = { type: 7, string: [43] }; // TLS
110
- this.rules[7].opcodes[5] = { type: 3, min: 1, max: Infinity }; // REP
111
- this.rules[7].opcodes[6] = { type: 4, index: 5 }; // RNM(DIGIT)
112
- /* FLOAT */
113
- this.rules[8].opcodes = [];
114
- this.rules[8].opcodes[0] = { type: 2, children: [1, 5, 7, 8] }; // CAT
115
- this.rules[8].opcodes[1] = { type: 3, min: 0, max: 1 }; // REP
116
- this.rules[8].opcodes[2] = { type: 1, children: [3, 4] }; // ALT
117
- this.rules[8].opcodes[3] = { type: 7, string: [45] }; // TLS
118
- this.rules[8].opcodes[4] = { type: 7, string: [43] }; // TLS
119
- this.rules[8].opcodes[5] = { type: 3, min: 1, max: Infinity }; // REP
120
- this.rules[8].opcodes[6] = { type: 4, index: 5 }; // RNM(DIGIT)
121
- this.rules[8].opcodes[7] = { type: 7, string: [46] }; // TLS
122
- this.rules[8].opcodes[8] = { type: 3, min: 1, max: Infinity }; // REP
123
- this.rules[8].opcodes[9] = { type: 4, index: 5 }; // RNM(DIGIT)
124
- /* LITERAL */
125
- this.rules[9].opcodes = [];
126
- this.rules[9].opcodes[0] = { type: 1, children: [1, 2] }; // ALT
127
- this.rules[9].opcodes[1] = { type: 4, index: 8 }; // RNM(FLOAT)
128
- this.rules[9].opcodes[2] = { type: 4, index: 7 }; // RNM(INTEGER)
129
- /* LABEL */
130
- this.rules[10].opcodes = [];
131
- this.rules[10].opcodes[0] = { type: 2, children: [1, 5] }; // CAT
132
- this.rules[10].opcodes[1] = { type: 3, min: 1, max: Infinity }; // REP
133
- this.rules[10].opcodes[2] = { type: 1, children: [3, 4] }; // ALT
134
- this.rules[10].opcodes[3] = { type: 7, string: [95] }; // TLS
135
- this.rules[10].opcodes[4] = { type: 4, index: 6 }; // RNM(ALPHA)
136
- this.rules[10].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
137
- this.rules[10].opcodes[6] = { type: 1, children: [7, 8, 9] }; // ALT
138
- this.rules[10].opcodes[7] = { type: 7, string: [95] }; // TLS
139
- this.rules[10].opcodes[8] = { type: 4, index: 6 }; // RNM(ALPHA)
140
- this.rules[10].opcodes[9] = { type: 4, index: 5 }; // RNM(DIGIT)
141
- /* PATH */
142
- this.rules[11].opcodes = [];
143
- this.rules[11].opcodes[0] = { type: 3, min: 1, max: Infinity }; // REP
144
- this.rules[11].opcodes[1] = { type: 1, children: [2, 3] }; // ALT
145
- this.rules[11].opcodes[2] = { type: 4, index: 10 }; // RNM(LABEL)
146
- this.rules[11].opcodes[3] = { type: 7, string: [46] }; // TLS
147
- /* IMPORT */
148
- this.rules[12].opcodes = [];
149
- this.rules[12].opcodes[0] = { type: 1, children: [1, 14] }; // ALT
150
- this.rules[12].opcodes[1] = { type: 2, children: [2, 3, 5, 6, 8] }; // CAT
151
- this.rules[12].opcodes[2] = { type: 6, string: [105, 109, 112, 111, 114, 116] }; // TBS
152
- this.rules[12].opcodes[3] = { type: 3, min: 1, max: Infinity }; // REP
153
- this.rules[12].opcodes[4] = { type: 4, index: 0 }; // RNM(WSP)
154
- this.rules[12].opcodes[5] = { type: 4, index: 11 }; // RNM(PATH)
155
- this.rules[12].opcodes[6] = { type: 3, min: 1, max: Infinity }; // REP
156
- this.rules[12].opcodes[7] = { type: 4, index: 0 }; // RNM(WSP)
157
- this.rules[12].opcodes[8] = { type: 3, min: 0, max: 1 }; // REP
158
- this.rules[12].opcodes[9] = { type: 2, children: [10, 11, 13] }; // CAT
159
- this.rules[12].opcodes[10] = { type: 6, string: [97, 115] }; // TBS
160
- this.rules[12].opcodes[11] = { type: 3, min: 1, max: Infinity }; // REP
161
- this.rules[12].opcodes[12] = { type: 4, index: 0 }; // RNM(WSP)
162
- this.rules[12].opcodes[13] = { type: 4, index: 10 }; // RNM(LABEL)
163
- this.rules[12].opcodes[14] = { type: 2, children: [15, 16, 18, 19, 21, 22, 24] }; // CAT
164
- this.rules[12].opcodes[15] = { type: 6, string: [102, 114, 111, 109] }; // TBS
165
- this.rules[12].opcodes[16] = { type: 3, min: 1, max: Infinity }; // REP
166
- this.rules[12].opcodes[17] = { type: 4, index: 0 }; // RNM(WSP)
167
- this.rules[12].opcodes[18] = { type: 4, index: 11 }; // RNM(PATH)
168
- this.rules[12].opcodes[19] = { type: 3, min: 1, max: Infinity }; // REP
169
- this.rules[12].opcodes[20] = { type: 4, index: 0 }; // RNM(WSP)
170
- this.rules[12].opcodes[21] = { type: 6, string: [105, 109, 112, 111, 114, 116] }; // TBS
171
- this.rules[12].opcodes[22] = { type: 3, min: 1, max: Infinity }; // REP
172
- this.rules[12].opcodes[23] = { type: 4, index: 0 }; // RNM(WSP)
173
- this.rules[12].opcodes[24] = { type: 1, children: [25, 33, 61, 87] }; // ALT
174
- this.rules[12].opcodes[25] = { type: 2, children: [26, 27] }; // CAT
175
- this.rules[12].opcodes[26] = { type: 4, index: 11 }; // RNM(PATH)
176
- this.rules[12].opcodes[27] = { type: 3, min: 0, max: 1 }; // REP
177
- this.rules[12].opcodes[28] = { type: 2, children: [29, 30, 32] }; // CAT
178
- this.rules[12].opcodes[29] = { type: 6, string: [97, 115] }; // TBS
179
- this.rules[12].opcodes[30] = { type: 3, min: 1, max: Infinity }; // REP
180
- this.rules[12].opcodes[31] = { type: 4, index: 0 }; // RNM(WSP)
181
- this.rules[12].opcodes[32] = { type: 4, index: 10 }; // RNM(LABEL)
182
- this.rules[12].opcodes[33] = { type: 2, children: [34, 35, 36, 37, 45, 58, 60] }; // CAT
183
- this.rules[12].opcodes[34] = { type: 7, string: [40] }; // TLS
184
- this.rules[12].opcodes[35] = { type: 4, index: 0 }; // RNM(WSP)
185
- this.rules[12].opcodes[36] = { type: 4, index: 11 }; // RNM(PATH)
186
- this.rules[12].opcodes[37] = { type: 3, min: 0, max: 1 }; // REP
187
- this.rules[12].opcodes[38] = { type: 2, children: [39, 41, 42, 44] }; // CAT
188
- this.rules[12].opcodes[39] = { type: 3, min: 1, max: Infinity }; // REP
189
- this.rules[12].opcodes[40] = { type: 4, index: 0 }; // RNM(WSP)
190
- this.rules[12].opcodes[41] = { type: 6, string: [97, 115] }; // TBS
191
- this.rules[12].opcodes[42] = { type: 3, min: 1, max: Infinity }; // REP
192
- this.rules[12].opcodes[43] = { type: 4, index: 0 }; // RNM(WSP)
193
- this.rules[12].opcodes[44] = { type: 4, index: 10 }; // RNM(LABEL)
194
- this.rules[12].opcodes[45] = { type: 3, min: 0, max: Infinity }; // REP
195
- this.rules[12].opcodes[46] = { type: 2, children: [47, 49, 50, 52, 53] }; // CAT
196
- this.rules[12].opcodes[47] = { type: 3, min: 0, max: Infinity }; // REP
197
- this.rules[12].opcodes[48] = { type: 4, index: 0 }; // RNM(WSP)
198
- this.rules[12].opcodes[49] = { type: 7, string: [44] }; // TLS
199
- this.rules[12].opcodes[50] = { type: 3, min: 0, max: Infinity }; // REP
200
- this.rules[12].opcodes[51] = { type: 4, index: 0 }; // RNM(WSP)
201
- this.rules[12].opcodes[52] = { type: 4, index: 11 }; // RNM(PATH)
202
- this.rules[12].opcodes[53] = { type: 3, min: 0, max: 1 }; // REP
203
- this.rules[12].opcodes[54] = { type: 2, children: [55, 56, 57] }; // CAT
204
- this.rules[12].opcodes[55] = { type: 6, string: [97, 115] }; // TBS
205
- this.rules[12].opcodes[56] = { type: 4, index: 0 }; // RNM(WSP)
206
- this.rules[12].opcodes[57] = { type: 4, index: 10 }; // RNM(LABEL)
207
- this.rules[12].opcodes[58] = { type: 3, min: 0, max: Infinity }; // REP
208
- this.rules[12].opcodes[59] = { type: 4, index: 0 }; // RNM(WSP)
209
- this.rules[12].opcodes[60] = { type: 7, string: [41] }; // TLS
210
- this.rules[12].opcodes[61] = { type: 2, children: [62, 63, 71] }; // CAT
211
- this.rules[12].opcodes[62] = { type: 4, index: 11 }; // RNM(PATH)
212
- this.rules[12].opcodes[63] = { type: 3, min: 0, max: 1 }; // REP
213
- this.rules[12].opcodes[64] = { type: 2, children: [65, 67, 68, 70] }; // CAT
214
- this.rules[12].opcodes[65] = { type: 3, min: 1, max: Infinity }; // REP
215
- this.rules[12].opcodes[66] = { type: 4, index: 0 }; // RNM(WSP)
216
- this.rules[12].opcodes[67] = { type: 6, string: [97, 115] }; // TBS
217
- this.rules[12].opcodes[68] = { type: 3, min: 1, max: Infinity }; // REP
218
- this.rules[12].opcodes[69] = { type: 4, index: 0 }; // RNM(WSP)
219
- this.rules[12].opcodes[70] = { type: 4, index: 10 }; // RNM(LABEL)
220
- this.rules[12].opcodes[71] = { type: 3, min: 0, max: Infinity }; // REP
221
- this.rules[12].opcodes[72] = { type: 2, children: [73, 75, 76, 78, 79] }; // CAT
222
- this.rules[12].opcodes[73] = { type: 3, min: 0, max: Infinity }; // REP
223
- this.rules[12].opcodes[74] = { type: 4, index: 0 }; // RNM(WSP)
224
- this.rules[12].opcodes[75] = { type: 7, string: [44] }; // TLS
225
- this.rules[12].opcodes[76] = { type: 3, min: 0, max: Infinity }; // REP
226
- this.rules[12].opcodes[77] = { type: 4, index: 0 }; // RNM(WSP)
227
- this.rules[12].opcodes[78] = { type: 4, index: 11 }; // RNM(PATH)
228
- this.rules[12].opcodes[79] = { type: 3, min: 0, max: 1 }; // REP
229
- this.rules[12].opcodes[80] = { type: 2, children: [81, 83, 84, 86] }; // CAT
230
- this.rules[12].opcodes[81] = { type: 3, min: 1, max: Infinity }; // REP
231
- this.rules[12].opcodes[82] = { type: 4, index: 0 }; // RNM(WSP)
232
- this.rules[12].opcodes[83] = { type: 6, string: [97, 115] }; // TBS
233
- this.rules[12].opcodes[84] = { type: 3, min: 1, max: Infinity }; // REP
234
- this.rules[12].opcodes[85] = { type: 4, index: 0 }; // RNM(WSP)
235
- this.rules[12].opcodes[86] = { type: 4, index: 10 }; // RNM(LABEL)
236
- this.rules[12].opcodes[87] = { type: 7, string: [42] }; // TLS
237
- /* EXTENSION */
238
- this.rules[13].opcodes = [];
239
- this.rules[13].opcodes[0] = { type: 2, children: [1, 2, 4, 5, 7] }; // CAT
240
- this.rules[13].opcodes[1] = { type: 6, string: [101, 120, 116, 101, 110, 115, 105, 111, 110] }; // TBS
241
- this.rules[13].opcodes[2] = { type: 3, min: 1, max: Infinity }; // REP
242
- this.rules[13].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
243
- this.rules[13].opcodes[4] = { type: 4, index: 10 }; // RNM(LABEL)
244
- this.rules[13].opcodes[5] = { type: 3, min: 1, max: Infinity }; // REP
245
- this.rules[13].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
246
- this.rules[13].opcodes[7] = { type: 1, children: [8, 9] }; // ALT
247
- this.rules[13].opcodes[8] = { type: 6, string: [111, 112, 116, 105, 111, 110, 97, 108] }; // TBS
248
- this.rules[13].opcodes[9] = { type: 6, string: [114, 101, 113, 117, 105, 114, 101, 100] }; // TBS
249
- /* BASE-TYPE */
250
- this.rules[14].opcodes = [];
251
- this.rules[14].opcodes[0] = { type: 1, children: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 25, 38, 51, 64, 77, 90, 103, 116, 129, 142, 155, 168, 181, 194, 207, 220, 233, 246, 259, 272, 285, 298] }; // ALT
252
- this.rules[14].opcodes[1] = { type: 6, string: [102, 112, 49, 48] }; // TBS
253
- this.rules[14].opcodes[2] = { type: 6, string: [102, 49, 54] }; // TBS
254
- this.rules[14].opcodes[3] = { type: 6, string: [102, 51, 50] }; // TBS
255
- this.rules[14].opcodes[4] = { type: 6, string: [105, 56] }; // TBS
256
- this.rules[14].opcodes[5] = { type: 6, string: [105, 49, 54] }; // TBS
257
- this.rules[14].opcodes[6] = { type: 6, string: [105, 51, 50] }; // TBS
258
- this.rules[14].opcodes[7] = { type: 6, string: [117, 56] }; // TBS
259
- this.rules[14].opcodes[8] = { type: 6, string: [117, 49, 54] }; // TBS
260
- this.rules[14].opcodes[9] = { type: 6, string: [117, 51, 50] }; // TBS
261
- this.rules[14].opcodes[10] = { type: 6, string: [110, 111, 110, 101] }; // TBS
262
- this.rules[14].opcodes[11] = { type: 6, string: [98, 111, 111, 108] }; // TBS
263
- this.rules[14].opcodes[12] = { type: 2, children: [13, 14] }; // CAT
264
- this.rules[14].opcodes[13] = { type: 6, string: [118, 101, 99, 50] }; // TBS
265
- this.rules[14].opcodes[14] = { type: 3, min: 0, max: 1 }; // REP
266
- this.rules[14].opcodes[15] = { type: 2, children: [16, 18, 19, 21, 22, 24] }; // CAT
267
- this.rules[14].opcodes[16] = { type: 3, min: 0, max: Infinity }; // REP
268
- this.rules[14].opcodes[17] = { type: 4, index: 0 }; // RNM(WSP)
269
- this.rules[14].opcodes[18] = { type: 7, string: [123] }; // TLS
270
- this.rules[14].opcodes[19] = { type: 3, min: 0, max: Infinity }; // REP
271
- this.rules[14].opcodes[20] = { type: 4, index: 0 }; // RNM(WSP)
272
- this.rules[14].opcodes[21] = { type: 4, index: 15 }; // RNM(PRECISION)
273
- this.rules[14].opcodes[22] = { type: 3, min: 0, max: Infinity }; // REP
274
- this.rules[14].opcodes[23] = { type: 4, index: 0 }; // RNM(WSP)
275
- this.rules[14].opcodes[24] = { type: 7, string: [125] }; // TLS
276
- this.rules[14].opcodes[25] = { type: 2, children: [26, 27] }; // CAT
277
- this.rules[14].opcodes[26] = { type: 6, string: [118, 101, 99, 51] }; // TBS
278
- this.rules[14].opcodes[27] = { type: 3, min: 0, max: 1 }; // REP
279
- this.rules[14].opcodes[28] = { type: 2, children: [29, 31, 32, 34, 35, 37] }; // CAT
280
- this.rules[14].opcodes[29] = { type: 3, min: 0, max: Infinity }; // REP
281
- this.rules[14].opcodes[30] = { type: 4, index: 0 }; // RNM(WSP)
282
- this.rules[14].opcodes[31] = { type: 7, string: [123] }; // TLS
283
- this.rules[14].opcodes[32] = { type: 3, min: 0, max: Infinity }; // REP
284
- this.rules[14].opcodes[33] = { type: 4, index: 0 }; // RNM(WSP)
285
- this.rules[14].opcodes[34] = { type: 4, index: 15 }; // RNM(PRECISION)
286
- this.rules[14].opcodes[35] = { type: 3, min: 0, max: Infinity }; // REP
287
- this.rules[14].opcodes[36] = { type: 4, index: 0 }; // RNM(WSP)
288
- this.rules[14].opcodes[37] = { type: 7, string: [125] }; // TLS
289
- this.rules[14].opcodes[38] = { type: 2, children: [39, 40] }; // CAT
290
- this.rules[14].opcodes[39] = { type: 6, string: [118, 101, 99, 52] }; // TBS
291
- this.rules[14].opcodes[40] = { type: 3, min: 0, max: 1 }; // REP
292
- this.rules[14].opcodes[41] = { type: 2, children: [42, 44, 45, 47, 48, 50] }; // CAT
293
- this.rules[14].opcodes[42] = { type: 3, min: 0, max: Infinity }; // REP
294
- this.rules[14].opcodes[43] = { type: 4, index: 0 }; // RNM(WSP)
295
- this.rules[14].opcodes[44] = { type: 7, string: [123] }; // TLS
296
- this.rules[14].opcodes[45] = { type: 3, min: 0, max: Infinity }; // REP
297
- this.rules[14].opcodes[46] = { type: 4, index: 0 }; // RNM(WSP)
298
- this.rules[14].opcodes[47] = { type: 4, index: 15 }; // RNM(PRECISION)
299
- this.rules[14].opcodes[48] = { type: 3, min: 0, max: Infinity }; // REP
300
- this.rules[14].opcodes[49] = { type: 4, index: 0 }; // RNM(WSP)
301
- this.rules[14].opcodes[50] = { type: 7, string: [125] }; // TLS
302
- this.rules[14].opcodes[51] = { type: 2, children: [52, 53] }; // CAT
303
- this.rules[14].opcodes[52] = { type: 6, string: [109, 97, 116, 50] }; // TBS
304
- this.rules[14].opcodes[53] = { type: 3, min: 0, max: 1 }; // REP
305
- this.rules[14].opcodes[54] = { type: 2, children: [55, 57, 58, 60, 61, 63] }; // CAT
306
- this.rules[14].opcodes[55] = { type: 3, min: 0, max: Infinity }; // REP
307
- this.rules[14].opcodes[56] = { type: 4, index: 0 }; // RNM(WSP)
308
- this.rules[14].opcodes[57] = { type: 7, string: [123] }; // TLS
309
- this.rules[14].opcodes[58] = { type: 3, min: 0, max: Infinity }; // REP
310
- this.rules[14].opcodes[59] = { type: 4, index: 0 }; // RNM(WSP)
311
- this.rules[14].opcodes[60] = { type: 4, index: 15 }; // RNM(PRECISION)
312
- this.rules[14].opcodes[61] = { type: 3, min: 0, max: Infinity }; // REP
313
- this.rules[14].opcodes[62] = { type: 4, index: 0 }; // RNM(WSP)
314
- this.rules[14].opcodes[63] = { type: 7, string: [125] }; // TLS
315
- this.rules[14].opcodes[64] = { type: 2, children: [65, 66] }; // CAT
316
- this.rules[14].opcodes[65] = { type: 6, string: [109, 97, 116, 51] }; // TBS
317
- this.rules[14].opcodes[66] = { type: 3, min: 0, max: 1 }; // REP
318
- this.rules[14].opcodes[67] = { type: 2, children: [68, 70, 71, 73, 74, 76] }; // CAT
319
- this.rules[14].opcodes[68] = { type: 3, min: 0, max: Infinity }; // REP
320
- this.rules[14].opcodes[69] = { type: 4, index: 0 }; // RNM(WSP)
321
- this.rules[14].opcodes[70] = { type: 7, string: [123] }; // TLS
322
- this.rules[14].opcodes[71] = { type: 3, min: 0, max: Infinity }; // REP
323
- this.rules[14].opcodes[72] = { type: 4, index: 0 }; // RNM(WSP)
324
- this.rules[14].opcodes[73] = { type: 4, index: 15 }; // RNM(PRECISION)
325
- this.rules[14].opcodes[74] = { type: 3, min: 0, max: Infinity }; // REP
326
- this.rules[14].opcodes[75] = { type: 4, index: 0 }; // RNM(WSP)
327
- this.rules[14].opcodes[76] = { type: 7, string: [125] }; // TLS
328
- this.rules[14].opcodes[77] = { type: 2, children: [78, 79] }; // CAT
329
- this.rules[14].opcodes[78] = { type: 6, string: [109, 97, 116, 52] }; // TBS
330
- this.rules[14].opcodes[79] = { type: 3, min: 0, max: 1 }; // REP
331
- this.rules[14].opcodes[80] = { type: 2, children: [81, 83, 84, 86, 87, 89] }; // CAT
332
- this.rules[14].opcodes[81] = { type: 3, min: 0, max: Infinity }; // REP
333
- this.rules[14].opcodes[82] = { type: 4, index: 0 }; // RNM(WSP)
334
- this.rules[14].opcodes[83] = { type: 7, string: [123] }; // TLS
335
- this.rules[14].opcodes[84] = { type: 3, min: 0, max: Infinity }; // REP
336
- this.rules[14].opcodes[85] = { type: 4, index: 0 }; // RNM(WSP)
337
- this.rules[14].opcodes[86] = { type: 4, index: 15 }; // RNM(PRECISION)
338
- this.rules[14].opcodes[87] = { type: 3, min: 0, max: Infinity }; // REP
339
- this.rules[14].opcodes[88] = { type: 4, index: 0 }; // RNM(WSP)
340
- this.rules[14].opcodes[89] = { type: 7, string: [125] }; // TLS
341
- this.rules[14].opcodes[90] = { type: 2, children: [91, 92] }; // CAT
342
- this.rules[14].opcodes[91] = { type: 6, string: [109, 97, 116, 50, 120, 51] }; // TBS
343
- this.rules[14].opcodes[92] = { type: 3, min: 0, max: 1 }; // REP
344
- this.rules[14].opcodes[93] = { type: 2, children: [94, 96, 97, 99, 100, 102] }; // CAT
345
- this.rules[14].opcodes[94] = { type: 3, min: 0, max: Infinity }; // REP
346
- this.rules[14].opcodes[95] = { type: 4, index: 0 }; // RNM(WSP)
347
- this.rules[14].opcodes[96] = { type: 7, string: [123] }; // TLS
348
- this.rules[14].opcodes[97] = { type: 3, min: 0, max: Infinity }; // REP
349
- this.rules[14].opcodes[98] = { type: 4, index: 0 }; // RNM(WSP)
350
- this.rules[14].opcodes[99] = { type: 4, index: 15 }; // RNM(PRECISION)
351
- this.rules[14].opcodes[100] = { type: 3, min: 0, max: Infinity }; // REP
352
- this.rules[14].opcodes[101] = { type: 4, index: 0 }; // RNM(WSP)
353
- this.rules[14].opcodes[102] = { type: 7, string: [125] }; // TLS
354
- this.rules[14].opcodes[103] = { type: 2, children: [104, 105] }; // CAT
355
- this.rules[14].opcodes[104] = { type: 6, string: [109, 97, 116, 51, 120, 50] }; // TBS
356
- this.rules[14].opcodes[105] = { type: 3, min: 0, max: 1 }; // REP
357
- this.rules[14].opcodes[106] = { type: 2, children: [107, 109, 110, 112, 113, 115] }; // CAT
358
- this.rules[14].opcodes[107] = { type: 3, min: 0, max: Infinity }; // REP
359
- this.rules[14].opcodes[108] = { type: 4, index: 0 }; // RNM(WSP)
360
- this.rules[14].opcodes[109] = { type: 7, string: [123] }; // TLS
361
- this.rules[14].opcodes[110] = { type: 3, min: 0, max: Infinity }; // REP
362
- this.rules[14].opcodes[111] = { type: 4, index: 0 }; // RNM(WSP)
363
- this.rules[14].opcodes[112] = { type: 4, index: 15 }; // RNM(PRECISION)
364
- this.rules[14].opcodes[113] = { type: 3, min: 0, max: Infinity }; // REP
365
- this.rules[14].opcodes[114] = { type: 4, index: 0 }; // RNM(WSP)
366
- this.rules[14].opcodes[115] = { type: 7, string: [125] }; // TLS
367
- this.rules[14].opcodes[116] = { type: 2, children: [117, 118] }; // CAT
368
- this.rules[14].opcodes[117] = { type: 6, string: [109, 97, 116, 52, 120, 50] }; // TBS
369
- this.rules[14].opcodes[118] = { type: 3, min: 0, max: 1 }; // REP
370
- this.rules[14].opcodes[119] = { type: 2, children: [120, 122, 123, 125, 126, 128] }; // CAT
371
- this.rules[14].opcodes[120] = { type: 3, min: 0, max: Infinity }; // REP
372
- this.rules[14].opcodes[121] = { type: 4, index: 0 }; // RNM(WSP)
373
- this.rules[14].opcodes[122] = { type: 7, string: [123] }; // TLS
374
- this.rules[14].opcodes[123] = { type: 3, min: 0, max: Infinity }; // REP
375
- this.rules[14].opcodes[124] = { type: 4, index: 0 }; // RNM(WSP)
376
- this.rules[14].opcodes[125] = { type: 4, index: 15 }; // RNM(PRECISION)
377
- this.rules[14].opcodes[126] = { type: 3, min: 0, max: Infinity }; // REP
378
- this.rules[14].opcodes[127] = { type: 4, index: 0 }; // RNM(WSP)
379
- this.rules[14].opcodes[128] = { type: 7, string: [125] }; // TLS
380
- this.rules[14].opcodes[129] = { type: 2, children: [130, 131] }; // CAT
381
- this.rules[14].opcodes[130] = { type: 6, string: [109, 97, 116, 50, 120, 52] }; // TBS
382
- this.rules[14].opcodes[131] = { type: 3, min: 0, max: 1 }; // REP
383
- this.rules[14].opcodes[132] = { type: 2, children: [133, 135, 136, 138, 139, 141] }; // CAT
384
- this.rules[14].opcodes[133] = { type: 3, min: 0, max: Infinity }; // REP
385
- this.rules[14].opcodes[134] = { type: 4, index: 0 }; // RNM(WSP)
386
- this.rules[14].opcodes[135] = { type: 7, string: [123] }; // TLS
387
- this.rules[14].opcodes[136] = { type: 3, min: 0, max: Infinity }; // REP
388
- this.rules[14].opcodes[137] = { type: 4, index: 0 }; // RNM(WSP)
389
- this.rules[14].opcodes[138] = { type: 4, index: 15 }; // RNM(PRECISION)
390
- this.rules[14].opcodes[139] = { type: 3, min: 0, max: Infinity }; // REP
391
- this.rules[14].opcodes[140] = { type: 4, index: 0 }; // RNM(WSP)
392
- this.rules[14].opcodes[141] = { type: 7, string: [125] }; // TLS
393
- this.rules[14].opcodes[142] = { type: 2, children: [143, 144] }; // CAT
394
- this.rules[14].opcodes[143] = { type: 6, string: [109, 97, 116, 51, 120, 52] }; // TBS
395
- this.rules[14].opcodes[144] = { type: 3, min: 0, max: 1 }; // REP
396
- this.rules[14].opcodes[145] = { type: 2, children: [146, 148, 149, 151, 152, 154] }; // CAT
397
- this.rules[14].opcodes[146] = { type: 3, min: 0, max: Infinity }; // REP
398
- this.rules[14].opcodes[147] = { type: 4, index: 0 }; // RNM(WSP)
399
- this.rules[14].opcodes[148] = { type: 7, string: [123] }; // TLS
400
- this.rules[14].opcodes[149] = { type: 3, min: 0, max: Infinity }; // REP
401
- this.rules[14].opcodes[150] = { type: 4, index: 0 }; // RNM(WSP)
402
- this.rules[14].opcodes[151] = { type: 4, index: 15 }; // RNM(PRECISION)
403
- this.rules[14].opcodes[152] = { type: 3, min: 0, max: Infinity }; // REP
404
- this.rules[14].opcodes[153] = { type: 4, index: 0 }; // RNM(WSP)
405
- this.rules[14].opcodes[154] = { type: 7, string: [125] }; // TLS
406
- this.rules[14].opcodes[155] = { type: 2, children: [156, 157] }; // CAT
407
- this.rules[14].opcodes[156] = { type: 6, string: [109, 97, 116, 52, 120, 51] }; // TBS
408
- this.rules[14].opcodes[157] = { type: 3, min: 0, max: 1 }; // REP
409
- this.rules[14].opcodes[158] = { type: 2, children: [159, 161, 162, 164, 165, 167] }; // CAT
410
- this.rules[14].opcodes[159] = { type: 3, min: 0, max: Infinity }; // REP
411
- this.rules[14].opcodes[160] = { type: 4, index: 0 }; // RNM(WSP)
412
- this.rules[14].opcodes[161] = { type: 7, string: [123] }; // TLS
413
- this.rules[14].opcodes[162] = { type: 3, min: 0, max: Infinity }; // REP
414
- this.rules[14].opcodes[163] = { type: 4, index: 0 }; // RNM(WSP)
415
- this.rules[14].opcodes[164] = { type: 4, index: 15 }; // RNM(PRECISION)
416
- this.rules[14].opcodes[165] = { type: 3, min: 0, max: Infinity }; // REP
417
- this.rules[14].opcodes[166] = { type: 4, index: 0 }; // RNM(WSP)
418
- this.rules[14].opcodes[167] = { type: 7, string: [125] }; // TLS
419
- this.rules[14].opcodes[168] = { type: 2, children: [169, 170] }; // CAT
420
- this.rules[14].opcodes[169] = { type: 6, string: [105] }; // TBS
421
- this.rules[14].opcodes[170] = { type: 3, min: 0, max: 1 }; // REP
422
- this.rules[14].opcodes[171] = { type: 2, children: [172, 174, 175, 177, 178, 180] }; // CAT
423
- this.rules[14].opcodes[172] = { type: 3, min: 0, max: Infinity }; // REP
424
- this.rules[14].opcodes[173] = { type: 4, index: 0 }; // RNM(WSP)
425
- this.rules[14].opcodes[174] = { type: 7, string: [123] }; // TLS
426
- this.rules[14].opcodes[175] = { type: 3, min: 0, max: Infinity }; // REP
427
- this.rules[14].opcodes[176] = { type: 4, index: 0 }; // RNM(WSP)
428
- this.rules[14].opcodes[177] = { type: 4, index: 15 }; // RNM(PRECISION)
429
- this.rules[14].opcodes[178] = { type: 3, min: 0, max: Infinity }; // REP
430
- this.rules[14].opcodes[179] = { type: 4, index: 0 }; // RNM(WSP)
431
- this.rules[14].opcodes[180] = { type: 7, string: [125] }; // TLS
432
- this.rules[14].opcodes[181] = { type: 2, children: [182, 183] }; // CAT
433
- this.rules[14].opcodes[182] = { type: 6, string: [117] }; // TBS
434
- this.rules[14].opcodes[183] = { type: 3, min: 0, max: 1 }; // REP
435
- this.rules[14].opcodes[184] = { type: 2, children: [185, 187, 188, 190, 191, 193] }; // CAT
436
- this.rules[14].opcodes[185] = { type: 3, min: 0, max: Infinity }; // REP
437
- this.rules[14].opcodes[186] = { type: 4, index: 0 }; // RNM(WSP)
438
- this.rules[14].opcodes[187] = { type: 7, string: [123] }; // TLS
439
- this.rules[14].opcodes[188] = { type: 3, min: 0, max: Infinity }; // REP
440
- this.rules[14].opcodes[189] = { type: 4, index: 0 }; // RNM(WSP)
441
- this.rules[14].opcodes[190] = { type: 4, index: 15 }; // RNM(PRECISION)
442
- this.rules[14].opcodes[191] = { type: 3, min: 0, max: Infinity }; // REP
443
- this.rules[14].opcodes[192] = { type: 4, index: 0 }; // RNM(WSP)
444
- this.rules[14].opcodes[193] = { type: 7, string: [125] }; // TLS
445
- this.rules[14].opcodes[194] = { type: 2, children: [195, 196] }; // CAT
446
- this.rules[14].opcodes[195] = { type: 6, string: [102] }; // TBS
447
- this.rules[14].opcodes[196] = { type: 3, min: 0, max: 1 }; // REP
448
- this.rules[14].opcodes[197] = { type: 2, children: [198, 200, 201, 203, 204, 206] }; // CAT
449
- this.rules[14].opcodes[198] = { type: 3, min: 0, max: Infinity }; // REP
450
- this.rules[14].opcodes[199] = { type: 4, index: 0 }; // RNM(WSP)
451
- this.rules[14].opcodes[200] = { type: 7, string: [123] }; // TLS
452
- this.rules[14].opcodes[201] = { type: 3, min: 0, max: Infinity }; // REP
453
- this.rules[14].opcodes[202] = { type: 4, index: 0 }; // RNM(WSP)
454
- this.rules[14].opcodes[203] = { type: 4, index: 15 }; // RNM(PRECISION)
455
- this.rules[14].opcodes[204] = { type: 3, min: 0, max: Infinity }; // REP
456
- this.rules[14].opcodes[205] = { type: 4, index: 0 }; // RNM(WSP)
457
- this.rules[14].opcodes[206] = { type: 7, string: [125] }; // TLS
458
- this.rules[14].opcodes[207] = { type: 2, children: [208, 209] }; // CAT
459
- this.rules[14].opcodes[208] = { type: 6, string: [116, 101, 120, 95, 49, 100] }; // TBS
460
- this.rules[14].opcodes[209] = { type: 3, min: 0, max: 1 }; // REP
461
- this.rules[14].opcodes[210] = { type: 2, children: [211, 213, 214, 216, 217, 219] }; // CAT
462
- this.rules[14].opcodes[211] = { type: 3, min: 0, max: Infinity }; // REP
463
- this.rules[14].opcodes[212] = { type: 4, index: 0 }; // RNM(WSP)
464
- this.rules[14].opcodes[213] = { type: 7, string: [123] }; // TLS
465
- this.rules[14].opcodes[214] = { type: 3, min: 0, max: Infinity }; // REP
466
- this.rules[14].opcodes[215] = { type: 4, index: 0 }; // RNM(WSP)
467
- this.rules[14].opcodes[216] = { type: 4, index: 15 }; // RNM(PRECISION)
468
- this.rules[14].opcodes[217] = { type: 3, min: 0, max: Infinity }; // REP
469
- this.rules[14].opcodes[218] = { type: 4, index: 0 }; // RNM(WSP)
470
- this.rules[14].opcodes[219] = { type: 7, string: [125] }; // TLS
471
- this.rules[14].opcodes[220] = { type: 2, children: [221, 222] }; // CAT
472
- this.rules[14].opcodes[221] = { type: 6, string: [116, 101, 120, 95, 50, 100] }; // TBS
473
- this.rules[14].opcodes[222] = { type: 3, min: 0, max: 1 }; // REP
474
- this.rules[14].opcodes[223] = { type: 2, children: [224, 226, 227, 229, 230, 232] }; // CAT
475
- this.rules[14].opcodes[224] = { type: 3, min: 0, max: Infinity }; // REP
476
- this.rules[14].opcodes[225] = { type: 4, index: 0 }; // RNM(WSP)
477
- this.rules[14].opcodes[226] = { type: 7, string: [123] }; // TLS
478
- this.rules[14].opcodes[227] = { type: 3, min: 0, max: Infinity }; // REP
479
- this.rules[14].opcodes[228] = { type: 4, index: 0 }; // RNM(WSP)
480
- this.rules[14].opcodes[229] = { type: 4, index: 15 }; // RNM(PRECISION)
481
- this.rules[14].opcodes[230] = { type: 3, min: 0, max: Infinity }; // REP
482
- this.rules[14].opcodes[231] = { type: 4, index: 0 }; // RNM(WSP)
483
- this.rules[14].opcodes[232] = { type: 7, string: [125] }; // TLS
484
- this.rules[14].opcodes[233] = { type: 2, children: [234, 235] }; // CAT
485
- this.rules[14].opcodes[234] = { type: 6, string: [116, 101, 120, 95, 50, 100, 95, 97, 114, 114, 97, 121] }; // TBS
486
- this.rules[14].opcodes[235] = { type: 3, min: 0, max: 1 }; // REP
487
- this.rules[14].opcodes[236] = { type: 2, children: [237, 239, 240, 242, 243, 245] }; // CAT
488
- this.rules[14].opcodes[237] = { type: 3, min: 0, max: Infinity }; // REP
489
- this.rules[14].opcodes[238] = { type: 4, index: 0 }; // RNM(WSP)
490
- this.rules[14].opcodes[239] = { type: 7, string: [123] }; // TLS
491
- this.rules[14].opcodes[240] = { type: 3, min: 0, max: Infinity }; // REP
492
- this.rules[14].opcodes[241] = { type: 4, index: 0 }; // RNM(WSP)
493
- this.rules[14].opcodes[242] = { type: 4, index: 15 }; // RNM(PRECISION)
494
- this.rules[14].opcodes[243] = { type: 3, min: 0, max: Infinity }; // REP
495
- this.rules[14].opcodes[244] = { type: 4, index: 0 }; // RNM(WSP)
496
- this.rules[14].opcodes[245] = { type: 7, string: [125] }; // TLS
497
- this.rules[14].opcodes[246] = { type: 2, children: [247, 248] }; // CAT
498
- this.rules[14].opcodes[247] = { type: 6, string: [116, 101, 120, 95, 51, 100] }; // TBS
499
- this.rules[14].opcodes[248] = { type: 3, min: 0, max: 1 }; // REP
500
- this.rules[14].opcodes[249] = { type: 2, children: [250, 252, 253, 255, 256, 258] }; // CAT
501
- this.rules[14].opcodes[250] = { type: 3, min: 0, max: Infinity }; // REP
502
- this.rules[14].opcodes[251] = { type: 4, index: 0 }; // RNM(WSP)
503
- this.rules[14].opcodes[252] = { type: 7, string: [123] }; // TLS
504
- this.rules[14].opcodes[253] = { type: 3, min: 0, max: Infinity }; // REP
505
- this.rules[14].opcodes[254] = { type: 4, index: 0 }; // RNM(WSP)
506
- this.rules[14].opcodes[255] = { type: 4, index: 15 }; // RNM(PRECISION)
507
- this.rules[14].opcodes[256] = { type: 3, min: 0, max: Infinity }; // REP
508
- this.rules[14].opcodes[257] = { type: 4, index: 0 }; // RNM(WSP)
509
- this.rules[14].opcodes[258] = { type: 7, string: [125] }; // TLS
510
- this.rules[14].opcodes[259] = { type: 2, children: [260, 261] }; // CAT
511
- this.rules[14].opcodes[260] = { type: 6, string: [116, 101, 120, 95, 99, 117, 98, 101] }; // TBS
512
- this.rules[14].opcodes[261] = { type: 3, min: 0, max: 1 }; // REP
513
- this.rules[14].opcodes[262] = { type: 2, children: [263, 265, 266, 268, 269, 271] }; // CAT
514
- this.rules[14].opcodes[263] = { type: 3, min: 0, max: Infinity }; // REP
515
- this.rules[14].opcodes[264] = { type: 4, index: 0 }; // RNM(WSP)
516
- this.rules[14].opcodes[265] = { type: 7, string: [123] }; // TLS
517
- this.rules[14].opcodes[266] = { type: 3, min: 0, max: Infinity }; // REP
518
- this.rules[14].opcodes[267] = { type: 4, index: 0 }; // RNM(WSP)
519
- this.rules[14].opcodes[268] = { type: 4, index: 15 }; // RNM(PRECISION)
520
- this.rules[14].opcodes[269] = { type: 3, min: 0, max: Infinity }; // REP
521
- this.rules[14].opcodes[270] = { type: 4, index: 0 }; // RNM(WSP)
522
- this.rules[14].opcodes[271] = { type: 7, string: [125] }; // TLS
523
- this.rules[14].opcodes[272] = { type: 2, children: [273, 274] }; // CAT
524
- this.rules[14].opcodes[273] = { type: 6, string: [116, 101, 120, 95, 50, 100, 95, 115, 104, 97, 100, 111, 119] }; // TBS
525
- this.rules[14].opcodes[274] = { type: 3, min: 0, max: 1 }; // REP
526
- this.rules[14].opcodes[275] = { type: 2, children: [276, 278, 279, 281, 282, 284] }; // CAT
527
- this.rules[14].opcodes[276] = { type: 3, min: 0, max: Infinity }; // REP
528
- this.rules[14].opcodes[277] = { type: 4, index: 0 }; // RNM(WSP)
529
- this.rules[14].opcodes[278] = { type: 7, string: [123] }; // TLS
530
- this.rules[14].opcodes[279] = { type: 3, min: 0, max: Infinity }; // REP
531
- this.rules[14].opcodes[280] = { type: 4, index: 0 }; // RNM(WSP)
532
- this.rules[14].opcodes[281] = { type: 4, index: 15 }; // RNM(PRECISION)
533
- this.rules[14].opcodes[282] = { type: 3, min: 0, max: Infinity }; // REP
534
- this.rules[14].opcodes[283] = { type: 4, index: 0 }; // RNM(WSP)
535
- this.rules[14].opcodes[284] = { type: 7, string: [125] }; // TLS
536
- this.rules[14].opcodes[285] = { type: 2, children: [286, 287] }; // CAT
537
- this.rules[14].opcodes[286] = { type: 6, string: [116, 101, 120, 95, 50, 100, 95, 115, 104, 97, 100, 111, 119, 95, 97, 114, 114, 97, 121] }; // TBS
538
- this.rules[14].opcodes[287] = { type: 3, min: 0, max: 1 }; // REP
539
- this.rules[14].opcodes[288] = { type: 2, children: [289, 291, 292, 294, 295, 297] }; // CAT
540
- this.rules[14].opcodes[289] = { type: 3, min: 0, max: Infinity }; // REP
541
- this.rules[14].opcodes[290] = { type: 4, index: 0 }; // RNM(WSP)
542
- this.rules[14].opcodes[291] = { type: 7, string: [123] }; // TLS
543
- this.rules[14].opcodes[292] = { type: 3, min: 0, max: Infinity }; // REP
544
- this.rules[14].opcodes[293] = { type: 4, index: 0 }; // RNM(WSP)
545
- this.rules[14].opcodes[294] = { type: 4, index: 15 }; // RNM(PRECISION)
546
- this.rules[14].opcodes[295] = { type: 3, min: 0, max: Infinity }; // REP
547
- this.rules[14].opcodes[296] = { type: 4, index: 0 }; // RNM(WSP)
548
- this.rules[14].opcodes[297] = { type: 7, string: [125] }; // TLS
549
- this.rules[14].opcodes[298] = { type: 2, children: [299, 300] }; // CAT
550
- this.rules[14].opcodes[299] = { type: 6, string: [116, 101, 120, 95, 99, 117, 98, 101, 95, 115, 104, 97, 100, 111, 119] }; // TBS
551
- this.rules[14].opcodes[300] = { type: 3, min: 0, max: 1 }; // REP
552
- this.rules[14].opcodes[301] = { type: 2, children: [302, 304, 305, 307, 308, 310] }; // CAT
553
- this.rules[14].opcodes[302] = { type: 3, min: 0, max: Infinity }; // REP
554
- this.rules[14].opcodes[303] = { type: 4, index: 0 }; // RNM(WSP)
555
- this.rules[14].opcodes[304] = { type: 7, string: [123] }; // TLS
556
- this.rules[14].opcodes[305] = { type: 3, min: 0, max: Infinity }; // REP
557
- this.rules[14].opcodes[306] = { type: 4, index: 0 }; // RNM(WSP)
558
- this.rules[14].opcodes[307] = { type: 4, index: 15 }; // RNM(PRECISION)
559
- this.rules[14].opcodes[308] = { type: 3, min: 0, max: Infinity }; // REP
560
- this.rules[14].opcodes[309] = { type: 4, index: 0 }; // RNM(WSP)
561
- this.rules[14].opcodes[310] = { type: 7, string: [125] }; // TLS
562
- /* PRECISION */
563
- this.rules[15].opcodes = [];
564
- this.rules[15].opcodes[0] = { type: 1, children: [1, 2, 3] }; // ALT
565
- this.rules[15].opcodes[1] = { type: 6, string: [108, 112] }; // TBS
566
- this.rules[15].opcodes[2] = { type: 6, string: [109, 112] }; // TBS
567
- this.rules[15].opcodes[3] = { type: 6, string: [104, 112] }; // TBS
568
- /* TYPE */
569
- this.rules[16].opcodes = [];
570
- this.rules[16].opcodes[0] = { type: 1, children: [1, 9, 20, 21] }; // ALT
571
- this.rules[16].opcodes[1] = { type: 2, children: [2, 3, 5, 6, 8] }; // CAT
572
- this.rules[16].opcodes[2] = { type: 4, index: 14 }; // RNM(BASE-TYPE)
573
- this.rules[16].opcodes[3] = { type: 3, min: 0, max: Infinity }; // REP
574
- this.rules[16].opcodes[4] = { type: 4, index: 0 }; // RNM(WSP)
575
- this.rules[16].opcodes[5] = { type: 7, string: [91] }; // TLS
576
- this.rules[16].opcodes[6] = { type: 3, min: 0, max: Infinity }; // REP
577
- this.rules[16].opcodes[7] = { type: 4, index: 0 }; // RNM(WSP)
578
- this.rules[16].opcodes[8] = { type: 7, string: [93] }; // TLS
579
- this.rules[16].opcodes[9] = { type: 2, children: [10, 11, 13, 14, 16, 17, 19] }; // CAT
580
- this.rules[16].opcodes[10] = { type: 4, index: 14 }; // RNM(BASE-TYPE)
581
- this.rules[16].opcodes[11] = { type: 3, min: 0, max: Infinity }; // REP
582
- this.rules[16].opcodes[12] = { type: 4, index: 0 }; // RNM(WSP)
583
- this.rules[16].opcodes[13] = { type: 7, string: [60] }; // TLS
584
- this.rules[16].opcodes[14] = { type: 3, min: 0, max: Infinity }; // REP
585
- this.rules[16].opcodes[15] = { type: 4, index: 0 }; // RNM(WSP)
586
- this.rules[16].opcodes[16] = { type: 4, index: 14 }; // RNM(BASE-TYPE)
587
- this.rules[16].opcodes[17] = { type: 3, min: 0, max: Infinity }; // REP
588
- this.rules[16].opcodes[18] = { type: 4, index: 0 }; // RNM(WSP)
589
- this.rules[16].opcodes[19] = { type: 7, string: [62] }; // TLS
590
- this.rules[16].opcodes[20] = { type: 4, index: 14 }; // RNM(BASE-TYPE)
591
- this.rules[16].opcodes[21] = { type: 4, index: 10 }; // RNM(LABEL)
592
- /* VERTEX-ATTRIBUTE-DESCRIPTOR */
593
- this.rules[17].opcodes = [];
594
- this.rules[17].opcodes[0] = { type: 2, children: [1, 2, 4, 5, 7, 8, 10] }; // CAT
595
- this.rules[17].opcodes[1] = { type: 6, string: [118, 101, 114, 116, 101, 120] }; // TBS
596
- this.rules[17].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
597
- this.rules[17].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
598
- this.rules[17].opcodes[4] = { type: 7, string: [91] }; // TLS
599
- this.rules[17].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
600
- this.rules[17].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
601
- this.rules[17].opcodes[7] = { type: 4, index: 5 }; // RNM(DIGIT)
602
- this.rules[17].opcodes[8] = { type: 3, min: 0, max: Infinity }; // REP
603
- this.rules[17].opcodes[9] = { type: 4, index: 0 }; // RNM(WSP)
604
- this.rules[17].opcodes[10] = { type: 7, string: [93] }; // TLS
605
- /* DESCRIPTOR */
606
- this.rules[18].opcodes = [];
607
- this.rules[18].opcodes[0] = { type: 1, children: [1, 2, 3, 4, 5, 6] }; // ALT
608
- this.rules[18].opcodes[1] = { type: 6, string: [117, 110, 105, 102, 111, 114, 109] }; // TBS
609
- this.rules[18].opcodes[2] = { type: 6, string: [105, 110] }; // TBS
610
- this.rules[18].opcodes[3] = { type: 6, string: [100, 101, 102] }; // TBS
611
- this.rules[18].opcodes[4] = { type: 4, index: 17 }; // RNM(VERTEX-ATTRIBUTE-DESCRIPTOR)
612
- this.rules[18].opcodes[5] = { type: 6, string: [109, 117, 116] }; // TBS
613
- this.rules[18].opcodes[6] = { type: 6, string: [111, 117, 116] }; // TBS
614
- /* DECLARATION */
615
- this.rules[19].opcodes = [];
616
- this.rules[19].opcodes[0] = { type: 2, children: [1, 6, 7, 9, 10, 12] }; // CAT
617
- this.rules[19].opcodes[1] = { type: 3, min: 0, max: Infinity }; // REP
618
- this.rules[19].opcodes[2] = { type: 2, children: [3, 4] }; // CAT
619
- this.rules[19].opcodes[3] = { type: 4, index: 18 }; // RNM(DESCRIPTOR)
620
- this.rules[19].opcodes[4] = { type: 3, min: 1, max: Infinity }; // REP
621
- this.rules[19].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
622
- this.rules[19].opcodes[6] = { type: 4, index: 10 }; // RNM(LABEL)
623
- this.rules[19].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
624
- this.rules[19].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
625
- this.rules[19].opcodes[9] = { type: 7, string: [58] }; // TLS
626
- this.rules[19].opcodes[10] = { type: 3, min: 0, max: Infinity }; // REP
627
- this.rules[19].opcodes[11] = { type: 4, index: 0 }; // RNM(WSP)
628
- this.rules[19].opcodes[12] = { type: 4, index: 16 }; // RNM(TYPE)
629
- /* ARGUMENTS */
630
- this.rules[20].opcodes = [];
631
- this.rules[20].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
632
- this.rules[20].opcodes[1] = { type: 4, index: 27 }; // RNM(EXPRESSION)
633
- this.rules[20].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
634
- this.rules[20].opcodes[3] = { type: 2, children: [4, 6, 7, 9] }; // CAT
635
- this.rules[20].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
636
- this.rules[20].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
637
- this.rules[20].opcodes[6] = { type: 7, string: [44] }; // TLS
638
- this.rules[20].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
639
- this.rules[20].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
640
- this.rules[20].opcodes[9] = { type: 4, index: 27 }; // RNM(EXPRESSION)
641
- /* CALL */
642
- this.rules[21].opcodes = [];
643
- this.rules[21].opcodes[0] = { type: 2, children: [1, 2, 4, 5, 7, 9, 11] }; // CAT
644
- this.rules[21].opcodes[1] = { type: 4, index: 11 }; // RNM(PATH)
645
- this.rules[21].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
646
- this.rules[21].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
647
- this.rules[21].opcodes[4] = { type: 7, string: [40] }; // TLS
648
- this.rules[21].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
649
- this.rules[21].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
650
- this.rules[21].opcodes[7] = { type: 3, min: 0, max: 1 }; // REP
651
- this.rules[21].opcodes[8] = { type: 4, index: 20 }; // RNM(ARGUMENTS)
652
- this.rules[21].opcodes[9] = { type: 3, min: 0, max: Infinity }; // REP
653
- this.rules[21].opcodes[10] = { type: 4, index: 0 }; // RNM(WSP)
654
- this.rules[21].opcodes[11] = { type: 7, string: [41] }; // TLS
655
- /* PRIMARY */
656
- this.rules[22].opcodes = [];
657
- this.rules[22].opcodes[0] = { type: 1, children: [1, 2, 3, 4] }; // ALT
658
- this.rules[22].opcodes[1] = { type: 4, index: 9 }; // RNM(LITERAL)
659
- this.rules[22].opcodes[2] = { type: 4, index: 21 }; // RNM(CALL)
660
- this.rules[22].opcodes[3] = { type: 4, index: 11 }; // RNM(PATH)
661
- this.rules[22].opcodes[4] = { type: 4, index: 28 }; // RNM(PARENTHESES)
662
- /* ELEMENT */
663
- this.rules[23].opcodes = [];
664
- this.rules[23].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
665
- this.rules[23].opcodes[1] = { type: 4, index: 22 }; // RNM(PRIMARY)
666
- this.rules[23].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
667
- this.rules[23].opcodes[3] = { type: 2, children: [4, 6, 7, 9, 10, 12] }; // CAT
668
- this.rules[23].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
669
- this.rules[23].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
670
- this.rules[23].opcodes[6] = { type: 7, string: [91] }; // TLS
671
- this.rules[23].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
672
- this.rules[23].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
673
- this.rules[23].opcodes[9] = { type: 4, index: 27 }; // RNM(EXPRESSION)
674
- this.rules[23].opcodes[10] = { type: 3, min: 0, max: Infinity }; // REP
675
- this.rules[23].opcodes[11] = { type: 4, index: 0 }; // RNM(WSP)
676
- this.rules[23].opcodes[12] = { type: 7, string: [93] }; // TLS
677
- /* FACTOR */
678
- this.rules[24].opcodes = [];
679
- this.rules[24].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
680
- this.rules[24].opcodes[1] = { type: 4, index: 23 }; // RNM(ELEMENT)
681
- this.rules[24].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
682
- this.rules[24].opcodes[3] = { type: 2, children: [4, 6, 10, 12] }; // CAT
683
- this.rules[24].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
684
- this.rules[24].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
685
- this.rules[24].opcodes[6] = { type: 1, children: [7, 8, 9] }; // ALT
686
- this.rules[24].opcodes[7] = { type: 7, string: [42] }; // TLS
687
- this.rules[24].opcodes[8] = { type: 7, string: [47] }; // TLS
688
- this.rules[24].opcodes[9] = { type: 7, string: [37] }; // TLS
689
- this.rules[24].opcodes[10] = { type: 3, min: 0, max: Infinity }; // REP
690
- this.rules[24].opcodes[11] = { type: 4, index: 0 }; // RNM(WSP)
691
- this.rules[24].opcodes[12] = { type: 4, index: 23 }; // RNM(ELEMENT)
692
- /* TERM */
693
- this.rules[25].opcodes = [];
694
- this.rules[25].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
695
- this.rules[25].opcodes[1] = { type: 4, index: 24 }; // RNM(FACTOR)
696
- this.rules[25].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
697
- this.rules[25].opcodes[3] = { type: 2, children: [4, 6, 9, 11] }; // CAT
698
- this.rules[25].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
699
- this.rules[25].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
700
- this.rules[25].opcodes[6] = { type: 1, children: [7, 8] }; // ALT
701
- this.rules[25].opcodes[7] = { type: 7, string: [43] }; // TLS
702
- this.rules[25].opcodes[8] = { type: 7, string: [45] }; // TLS
703
- this.rules[25].opcodes[9] = { type: 3, min: 0, max: Infinity }; // REP
704
- this.rules[25].opcodes[10] = { type: 4, index: 0 }; // RNM(WSP)
705
- this.rules[25].opcodes[11] = { type: 4, index: 24 }; // RNM(FACTOR)
706
- /* CAST-EXPR */
707
- this.rules[26].opcodes = [];
708
- this.rules[26].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
709
- this.rules[26].opcodes[1] = { type: 4, index: 25 }; // RNM(TERM)
710
- this.rules[26].opcodes[2] = { type: 3, min: 0, max: 1 }; // REP
711
- this.rules[26].opcodes[3] = { type: 2, children: [4, 6, 7, 9] }; // CAT
712
- this.rules[26].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
713
- this.rules[26].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
714
- this.rules[26].opcodes[6] = { type: 6, string: [97, 115] }; // TBS
715
- this.rules[26].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
716
- this.rules[26].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
717
- this.rules[26].opcodes[9] = { type: 4, index: 16 }; // RNM(TYPE)
718
- /* EXPRESSION */
719
- this.rules[27].opcodes = [];
720
- this.rules[27].opcodes[0] = { type: 4, index: 26 }; // RNM(CAST-EXPR)
721
- /* PARENTHESES */
722
- this.rules[28].opcodes = [];
723
- this.rules[28].opcodes[0] = { type: 2, children: [1, 2, 4, 5, 7] }; // CAT
724
- this.rules[28].opcodes[1] = { type: 7, string: [40] }; // TLS
725
- this.rules[28].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
726
- this.rules[28].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
727
- this.rules[28].opcodes[4] = { type: 4, index: 27 }; // RNM(EXPRESSION)
728
- this.rules[28].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
729
- this.rules[28].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
730
- this.rules[28].opcodes[7] = { type: 7, string: [41] }; // TLS
731
- /* ASSIGNMENT-LHS */
732
- this.rules[29].opcodes = [];
733
- this.rules[29].opcodes[0] = { type: 2, children: [1, 2, 4] }; // CAT
734
- this.rules[29].opcodes[1] = { type: 4, index: 11 }; // RNM(PATH)
735
- this.rules[29].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
736
- this.rules[29].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
737
- this.rules[29].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
738
- this.rules[29].opcodes[5] = { type: 2, children: [6, 7, 9, 10, 12] }; // CAT
739
- this.rules[29].opcodes[6] = { type: 7, string: [91] }; // TLS
740
- this.rules[29].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
741
- this.rules[29].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
742
- this.rules[29].opcodes[9] = { type: 4, index: 27 }; // RNM(EXPRESSION)
743
- this.rules[29].opcodes[10] = { type: 3, min: 0, max: Infinity }; // REP
744
- this.rules[29].opcodes[11] = { type: 4, index: 0 }; // RNM(WSP)
745
- this.rules[29].opcodes[12] = { type: 7, string: [93] }; // TLS
746
- /* ASSIGNMENT */
747
- this.rules[30].opcodes = [];
748
- this.rules[30].opcodes[0] = { type: 1, children: [1, 2] }; // ALT
749
- this.rules[30].opcodes[1] = { type: 4, index: 19 }; // RNM(DECLARATION)
750
- this.rules[30].opcodes[2] = { type: 2, children: [3, 4, 6, 7, 9] }; // CAT
751
- this.rules[30].opcodes[3] = { type: 4, index: 29 }; // RNM(ASSIGNMENT-LHS)
752
- this.rules[30].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
753
- this.rules[30].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
754
- this.rules[30].opcodes[6] = { type: 7, string: [61] }; // TLS
755
- this.rules[30].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
756
- this.rules[30].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
757
- this.rules[30].opcodes[9] = { type: 4, index: 27 }; // RNM(EXPRESSION)
758
- /* STATEMENT */
759
- this.rules[31].opcodes = [];
760
- this.rules[31].opcodes[0] = { type: 1, children: [1, 2, 3, 4, 5, 6, 11] }; // ALT
761
- this.rules[31].opcodes[1] = { type: 4, index: 19 }; // RNM(DECLARATION)
762
- this.rules[31].opcodes[2] = { type: 4, index: 30 }; // RNM(ASSIGNMENT)
763
- this.rules[31].opcodes[3] = { type: 4, index: 27 }; // RNM(EXPRESSION)
764
- this.rules[31].opcodes[4] = { type: 6, string: [98, 114, 101, 97, 107] }; // TBS
765
- this.rules[31].opcodes[5] = { type: 6, string: [99, 111, 110, 116, 105, 110, 117, 101] }; // TBS
766
- this.rules[31].opcodes[6] = { type: 2, children: [7, 8, 10] }; // CAT
767
- this.rules[31].opcodes[7] = { type: 6, string: [114, 101, 116, 117, 114, 110] }; // TBS
768
- this.rules[31].opcodes[8] = { type: 3, min: 1, max: Infinity }; // REP
769
- this.rules[31].opcodes[9] = { type: 4, index: 0 }; // RNM(WSP)
770
- this.rules[31].opcodes[10] = { type: 4, index: 27 }; // RNM(EXPRESSION)
771
- this.rules[31].opcodes[11] = { type: 6, string: [100, 105, 115, 99, 97, 114, 100] }; // TBS
772
- /* STATEMENT-LINE */
773
- this.rules[32].opcodes = [];
774
- this.rules[32].opcodes[0] = { type: 2, children: [1, 3, 5, 7] }; // CAT
775
- this.rules[32].opcodes[1] = { type: 3, min: 0, max: Infinity }; // REP
776
- this.rules[32].opcodes[2] = { type: 4, index: 0 }; // RNM(WSP)
777
- this.rules[32].opcodes[3] = { type: 3, min: 0, max: 1 }; // REP
778
- this.rules[32].opcodes[4] = { type: 4, index: 31 }; // RNM(STATEMENT)
779
- this.rules[32].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
780
- this.rules[32].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
781
- this.rules[32].opcodes[7] = { type: 4, index: 4 }; // RNM(NEWLINE)
782
- /* FUNCTION-BODY */
783
- this.rules[33].opcodes = [];
784
- this.rules[33].opcodes[0] = { type: 3, min: 1, max: Infinity }; // REP
785
- this.rules[33].opcodes[1] = { type: 4, index: 32 }; // RNM(STATEMENT-LINE)
786
- /* FUNCTION-DEFINITION-ARGUMENTS */
787
- this.rules[34].opcodes = [];
788
- this.rules[34].opcodes[0] = { type: 2, children: [1, 2] }; // CAT
789
- this.rules[34].opcodes[1] = { type: 4, index: 19 }; // RNM(DECLARATION)
790
- this.rules[34].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
791
- this.rules[34].opcodes[3] = { type: 2, children: [4, 6, 7, 9] }; // CAT
792
- this.rules[34].opcodes[4] = { type: 3, min: 0, max: Infinity }; // REP
793
- this.rules[34].opcodes[5] = { type: 4, index: 0 }; // RNM(WSP)
794
- this.rules[34].opcodes[6] = { type: 7, string: [44] }; // TLS
795
- this.rules[34].opcodes[7] = { type: 3, min: 0, max: Infinity }; // REP
796
- this.rules[34].opcodes[8] = { type: 4, index: 0 }; // RNM(WSP)
797
- this.rules[34].opcodes[9] = { type: 4, index: 19 }; // RNM(DECLARATION)
798
- /* FUNCTION-DEFINITION */
799
- this.rules[35].opcodes = [];
800
- this.rules[35].opcodes[0] = { type: 2, children: [1, 2, 4, 5, 7, 16, 18, 19, 21, 23, 25, 26, 28, 34, 36, 37, 39, 41, 43, 45] }; // CAT
801
- this.rules[35].opcodes[1] = { type: 6, string: [102, 117, 110, 99] }; // TBS
802
- this.rules[35].opcodes[2] = { type: 3, min: 0, max: Infinity }; // REP
803
- this.rules[35].opcodes[3] = { type: 4, index: 0 }; // RNM(WSP)
804
- this.rules[35].opcodes[4] = { type: 4, index: 10 }; // RNM(LABEL)
805
- this.rules[35].opcodes[5] = { type: 3, min: 0, max: Infinity }; // REP
806
- this.rules[35].opcodes[6] = { type: 4, index: 0 }; // RNM(WSP)
807
- this.rules[35].opcodes[7] = { type: 3, min: 0, max: 1 }; // REP
808
- this.rules[35].opcodes[8] = { type: 2, children: [9, 10, 12, 13, 15] }; // CAT
809
- this.rules[35].opcodes[9] = { type: 7, string: [60] }; // TLS
810
- this.rules[35].opcodes[10] = { type: 3, min: 0, max: Infinity }; // REP
811
- this.rules[35].opcodes[11] = { type: 4, index: 0 }; // RNM(WSP)
812
- this.rules[35].opcodes[12] = { type: 4, index: 10 }; // RNM(LABEL)
813
- this.rules[35].opcodes[13] = { type: 3, min: 0, max: Infinity }; // REP
814
- this.rules[35].opcodes[14] = { type: 4, index: 0 }; // RNM(WSP)
815
- this.rules[35].opcodes[15] = { type: 7, string: [62] }; // TLS
816
- this.rules[35].opcodes[16] = { type: 3, min: 0, max: Infinity }; // REP
817
- this.rules[35].opcodes[17] = { type: 4, index: 0 }; // RNM(WSP)
818
- this.rules[35].opcodes[18] = { type: 7, string: [40] }; // TLS
819
- this.rules[35].opcodes[19] = { type: 3, min: 0, max: Infinity }; // REP
820
- this.rules[35].opcodes[20] = { type: 4, index: 0 }; // RNM(WSP)
821
- this.rules[35].opcodes[21] = { type: 3, min: 0, max: 1 }; // REP
822
- this.rules[35].opcodes[22] = { type: 4, index: 34 }; // RNM(FUNCTION-DEFINITION-ARGUMENTS)
823
- this.rules[35].opcodes[23] = { type: 3, min: 0, max: Infinity }; // REP
824
- this.rules[35].opcodes[24] = { type: 4, index: 0 }; // RNM(WSP)
825
- this.rules[35].opcodes[25] = { type: 7, string: [41] }; // TLS
826
- this.rules[35].opcodes[26] = { type: 3, min: 0, max: Infinity }; // REP
827
- this.rules[35].opcodes[27] = { type: 4, index: 0 }; // RNM(WSP)
828
- this.rules[35].opcodes[28] = { type: 3, min: 0, max: 1 }; // REP
829
- this.rules[35].opcodes[29] = { type: 2, children: [30, 31, 33] }; // CAT
830
- this.rules[35].opcodes[30] = { type: 7, string: [45, 62] }; // TLS
831
- this.rules[35].opcodes[31] = { type: 3, min: 0, max: Infinity }; // REP
832
- this.rules[35].opcodes[32] = { type: 4, index: 0 }; // RNM(WSP)
833
- this.rules[35].opcodes[33] = { type: 4, index: 16 }; // RNM(TYPE)
834
- this.rules[35].opcodes[34] = { type: 3, min: 0, max: Infinity }; // REP
835
- this.rules[35].opcodes[35] = { type: 4, index: 0 }; // RNM(WSP)
836
- this.rules[35].opcodes[36] = { type: 7, string: [58] }; // TLS
837
- this.rules[35].opcodes[37] = { type: 3, min: 0, max: Infinity }; // REP
838
- this.rules[35].opcodes[38] = { type: 4, index: 0 }; // RNM(WSP)
839
- this.rules[35].opcodes[39] = { type: 3, min: 0, max: 1 }; // REP
840
- this.rules[35].opcodes[40] = { type: 4, index: 4 }; // RNM(NEWLINE)
841
- this.rules[35].opcodes[41] = { type: 3, min: 0, max: Infinity }; // REP
842
- this.rules[35].opcodes[42] = { type: 4, index: 33 }; // RNM(FUNCTION-BODY)
843
- this.rules[35].opcodes[43] = { type: 3, min: 0, max: Infinity }; // REP
844
- this.rules[35].opcodes[44] = { type: 4, index: 0 }; // RNM(WSP)
845
- this.rules[35].opcodes[45] = { type: 4, index: 4 }; // RNM(NEWLINE)
846
- /* ROOT */
847
- this.rules[36].opcodes = [];
848
- this.rules[36].opcodes[0] = { type: 3, min: 0, max: Infinity }; // REP
849
- this.rules[36].opcodes[1] = { type: 1, children: [2, 3] }; // ALT
850
- this.rules[36].opcodes[2] = { type: 4, index: 35 }; // RNM(FUNCTION-DEFINITION)
851
- this.rules[36].opcodes[3] = { type: 4, index: 32 }; // RNM(STATEMENT-LINE)
852
- // The `toString()` function will display the original grammar file(s) that produced these opcodes.
853
- this.toString = function () {
854
- var str = "";
855
- str += "; LOWEST LEVEL\r\n";
856
- str += "WSP = %d32 / %d9\r\n";
857
- str += "CR = %d13\r\n";
858
- str += "LF = %d10\r\n";
859
- str += "CRLF = CR LF\r\n";
860
- str += "NEWLINE = CRLF / LF / CR\r\n";
861
- str += "DIGIT = %x30-39\r\n";
862
- str += "ALPHA = %x41-5A / %x61-7A\r\n";
863
- str += "\r\n";
864
- str += "; LITERAL\r\n";
865
- str += "INTEGER = [\"-\" / \"+\"] 1*DIGIT\r\n";
866
- str += "FLOAT = [\"-\" / \"+\"] 1*DIGIT \".\" 1*DIGIT\r\n";
867
- str += "LITERAL = FLOAT / INTEGER\r\n";
868
- str += "\r\n";
869
- str += "; LABEL\r\n";
870
- str += "LABEL = 1*(\"_\" / ALPHA) *(\"_\" / ALPHA / DIGIT)\r\n";
871
- str += "\r\n";
872
- str += "; dot operator\r\n";
873
- str += "PATH = 1*(LABEL / \".\")\r\n";
874
- str += "\r\n";
875
- str += "; IMPORTS\r\n";
876
- str += "IMPORT = %s\"import\" 1*WSP PATH 1*WSP [%s\"as\" 1*WSP LABEL]\r\n";
877
- str += "IMPORT =/ %s\"from\" 1*WSP PATH 1*WSP %s\"import\" 1*WSP ((PATH [%s\"as\" 1*WSP LABEL]) / ( \"(\" WSP PATH [1*WSP %s\"as\" 1*WSP LABEL] *(*WSP \",\" *WSP PATH [%s\"as\" WSP LABEL]) *WSP \")\") / (PATH [1*WSP %s\"as\" 1*WSP LABEL] *(*WSP \",\" *WSP PATH [1*WSP %s\"as\" 1*WSP LABEL])) / \"*\")\r\n";
878
- str += "\r\n";
879
- str += "; EXTENSION\r\n";
880
- str += "EXTENSION = %s\"extension\" 1*WSP LABEL 1*WSP (%s\"optional\" / %s\"required\")\r\n";
881
- str += "\r\n";
882
- str += "; TYPES\r\n";
883
- str += "BASE-TYPE = %s\"fp10\" ; fixed point\r\n";
884
- str += "BASE-TYPE =/ %s\"f16\" / %s\"f32\" / %s\"i8\" / %s\"i16\" / %s\"i32\" / %s\"u8\" / %s\"u16\" / %s\"u32\"\r\n";
885
- str += "BASE-TYPE =/ %s\"none\" ; void\r\n";
886
- str += "BASE-TYPE =/ %s\"bool\"\r\n";
887
- str += "; precision descriptors for types\r\n";
888
- str += "PRECISION = %s\"lp\" / %s\"mp\" / %s\"hp\"\r\n";
889
- str += "BASE-TYPE =/ %s\"vec2\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
890
- str += "BASE-TYPE =/ %s\"vec3\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
891
- str += "BASE-TYPE =/ %s\"vec4\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
892
- str += "BASE-TYPE =/ %s\"mat2\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
893
- str += "BASE-TYPE =/ %s\"mat3\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
894
- str += "BASE-TYPE =/ %s\"mat4\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
895
- str += "BASE-TYPE =/ %s\"mat2x3\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
896
- str += "BASE-TYPE =/ %s\"mat3x2\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
897
- str += "BASE-TYPE =/ %s\"mat4x2\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
898
- str += "BASE-TYPE =/ %s\"mat2x4\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
899
- str += "BASE-TYPE =/ %s\"mat3x4\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
900
- str += "BASE-TYPE =/ %s\"mat4x3\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
901
- str += "BASE-TYPE =/ %s\"i\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
902
- str += "BASE-TYPE =/ %s\"u\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
903
- str += "BASE-TYPE =/ %s\"f\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
904
- str += "BASE-TYPE =/ %s\"tex_1d\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
905
- str += "BASE-TYPE =/ %s\"tex_2d\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
906
- str += "BASE-TYPE =/ %s\"tex_2d_array\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
907
- str += "BASE-TYPE =/ %s\"tex_3d\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
908
- str += "BASE-TYPE =/ %s\"tex_cube\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
909
- str += "BASE-TYPE =/ %s\"tex_2d_shadow\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
910
- str += "BASE-TYPE =/ %s\"tex_2d_shadow_array\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
911
- str += "BASE-TYPE =/ %s\"tex_cube_shadow\" [*WSP \"{\" *WSP PRECISION *WSP \"}\"]\r\n";
912
- str += "TYPE = BASE-TYPE *WSP \"[\" *WSP \"]\"\r\n";
913
- str += "TYPE =/ BASE-TYPE *WSP \"<\" *WSP BASE-TYPE *WSP \">\"\r\n";
914
- str += "TYPE =/ BASE-TYPE\r\n";
915
- str += "TYPE =/ LABEL\r\n";
916
- str += "\r\n";
917
- str += "; DESCRIPTOR\r\n";
918
- str += "VERTEX-ATTRIBUTE-DESCRIPTOR = %s\"vertex\" *WSP \"[\" *WSP DIGIT *WSP \"]\"\r\n";
919
- str += "DESCRIPTOR = %s\"uniform\" / %s\"in\" / %s\"def\" / VERTEX-ATTRIBUTE-DESCRIPTOR\r\n";
920
- str += "DESCRIPTOR =/ %s\"mut\" ; inout qualifier\r\n";
921
- str += "DESCRIPTOR =/ %s\"out\" ; out qualifier ; in qualifier is not implemented since it is default\r\n";
922
- str += "\r\n";
923
- str += "; VARIABLE DECLARATION\r\n";
924
- str += "DECLARATION = (*((DESCRIPTOR) 1*WSP)) LABEL *WSP \":\" *WSP TYPE\r\n";
925
- str += "\r\n";
926
- str += "; FUNCTION CALL\r\n";
927
- str += "ARGUMENTS = EXPRESSION *( *WSP \",\" *WSP EXPRESSION )\r\n";
928
- str += "CALL = PATH *WSP \"(\" *WSP [ARGUMENTS] *WSP \")\"\r\n";
929
- str += "\r\n";
930
- str += "; 1. The base units (Things that don't start with an expression)\r\n";
931
- str += "PRIMARY = LITERAL / CALL / PATH / PARENTHESES\r\n";
932
- str += "\r\n";
933
- str += "; 2. Handle Indexing (e.g., myVar[0])\r\n";
934
- str += "; We put this here so it attaches to a LABEL or CALL\r\n";
935
- str += "ELEMENT = PRIMARY *( *WSP \"[\" *WSP EXPRESSION *WSP \"]\" )\r\n";
936
- str += "\r\n";
937
- str += "; 3. Handle Math (Simplified version of precedence)\r\n";
938
- str += "; We use a 'factor' for multiplication and a 'term' for addition\r\n";
939
- str += "FACTOR = ELEMENT *( *WSP ( \"*\" / \"/\" / \"%\" ) *WSP ELEMENT )\r\n";
940
- str += "TERM = FACTOR *( *WSP ( \"+\" / \"-\" ) *WSP FACTOR )\r\n";
941
- str += "\r\n";
942
- str += "; 4. Handle Casting (as)\r\n";
943
- str += "CAST-EXPR = TERM [ *WSP %s\"as\" *WSP TYPE ]\r\n";
944
- str += "\r\n";
945
- str += "; 5. Final Expression\r\n";
946
- str += "EXPRESSION = CAST-EXPR\r\n";
947
- str += "PARENTHESES = \"(\" *WSP EXPRESSION *WSP \")\"\r\n";
948
- str += "\r\n";
949
- str += "; ASSIGNMENT\r\n";
950
- str += "ASSIGNMENT-LHS = PATH *WSP *( \"[\" *WSP EXPRESSION *WSP \"]\" )\r\n";
951
- str += "ASSIGNMENT = DECLARATION\r\n";
952
- str += "ASSIGNMENT =/ ASSIGNMENT-LHS *WSP \"=\" *WSP EXPRESSION\r\n";
953
- str += "\r\n";
954
- str += "; STATEMENT\r\n";
955
- str += "STATEMENT = DECLARATION / ASSIGNMENT / EXPRESSION / %s\"break\" / %s\"continue\"\r\n";
956
- str += "STATEMENT =/ %s\"return\" 1*WSP EXPRESSION\r\n";
957
- str += "STATEMENT =/ %s\"discard\"\r\n";
958
- str += "STATEMENT-LINE = *WSP [STATEMENT] *WSP NEWLINE\r\n";
959
- str += "\r\n";
960
- str += "\r\n";
961
- str += "; FUNCTION DEFINITION\r\n";
962
- str += "FUNCTION-BODY = 1*STATEMENT-LINE\r\n";
963
- str += "FUNCTION-DEFINITION-ARGUMENTS = DECLARATION *( *WSP \",\" *WSP DECLARATION )\r\n";
964
- str += "FUNCTION-DEFINITION = %s\"func\" *WSP LABEL *WSP [\"<\" *WSP LABEL *WSP \">\"] *WSP \"(\" *WSP [FUNCTION-DEFINITION-ARGUMENTS] *WSP \")\" *WSP [\"->\" *WSP TYPE] *WSP \":\" *WSP [NEWLINE] *FUNCTION-BODY *WSP NEWLINE\r\n";
965
- str += "\r\n";
966
- str += "; ROOT\r\n";
967
- str += "ROOT = *(FUNCTION-DEFINITION / STATEMENT-LINE)\n";
968
- return str;
969
- };
970
- }
971
- //# sourceMappingURL=grammar.js.map