@plurnk/plurnk-grammar 0.1.0

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.
@@ -0,0 +1,419 @@
1
+
2
+ import * as antlr from "antlr4ng";
3
+ import { Token } from "antlr4ng";
4
+
5
+
6
+ export class plurnkLexer extends antlr.Lexer {
7
+ public static readonly LBRACKET = 1;
8
+ public static readonly RBRACKET = 2;
9
+ public static readonly LPAREN = 3;
10
+ public static readonly RPAREN = 4;
11
+ public static readonly L_MARKER = 5;
12
+ public static readonly COLON = 6;
13
+ public static readonly SIGNAL_TEXT = 7;
14
+ public static readonly PATH_TEXT = 8;
15
+ public static readonly BODY_TEXT = 9;
16
+ public static readonly CLOSE_TAG = 10;
17
+ public static readonly TEXT = 11;
18
+ public static readonly OPEN_FIND = 12;
19
+ public static readonly OPEN_READ = 13;
20
+ public static readonly OPEN_EDIT = 14;
21
+ public static readonly OPEN_COPY = 15;
22
+ public static readonly OPEN_MOVE = 16;
23
+ public static readonly OPEN_SHOW = 17;
24
+ public static readonly OPEN_HIDE = 18;
25
+ public static readonly OPEN_SEND = 19;
26
+ public static readonly OPEN_EXEC = 20;
27
+ public static readonly OPENED_WS = 21;
28
+ public static readonly PS_WS = 22;
29
+ public static readonly PP_WS = 23;
30
+ public static readonly PL_WS = 24;
31
+ public static readonly BODY_COLON = 25;
32
+ public static readonly OPENED = 1;
33
+ public static readonly POST_SIGNAL = 2;
34
+ public static readonly POST_PATH = 3;
35
+ public static readonly POST_L = 4;
36
+ public static readonly SIGNAL = 5;
37
+ public static readonly PATH = 6;
38
+ public static readonly BODY = 7;
39
+
40
+ public static readonly channelNames = [
41
+ "DEFAULT_TOKEN_CHANNEL", "HIDDEN"
42
+ ];
43
+
44
+ public static readonly literalNames = [
45
+ null, null, null, null, null, null, null, null, null, null, null,
46
+ null, null, null, null, null, null, null, null, null, null, null,
47
+ null, null, null, "':'"
48
+ ];
49
+
50
+ public static readonly symbolicNames = [
51
+ null, "LBRACKET", "RBRACKET", "LPAREN", "RPAREN", "L_MARKER", "COLON",
52
+ "SIGNAL_TEXT", "PATH_TEXT", "BODY_TEXT", "CLOSE_TAG", "TEXT", "OPEN_FIND",
53
+ "OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE", "OPEN_SHOW",
54
+ "OPEN_HIDE", "OPEN_SEND", "OPEN_EXEC", "OPENED_WS", "PS_WS", "PP_WS",
55
+ "PL_WS", "BODY_COLON"
56
+ ];
57
+
58
+ public static readonly modeNames = [
59
+ "DEFAULT_MODE", "OPENED", "POST_SIGNAL", "POST_PATH", "POST_L",
60
+ "SIGNAL", "PATH", "BODY",
61
+ ];
62
+
63
+ public static readonly ruleNames = [
64
+ "SUFFIX", "L_PATTERN", "OPEN_FIND", "OPEN_READ", "OPEN_EDIT", "OPEN_COPY",
65
+ "OPEN_MOVE", "OPEN_SHOW", "OPEN_HIDE", "OPEN_SEND", "OPEN_EXEC",
66
+ "TEXT", "OPENED_WS", "OPENED_LBRACKET", "OPENED_LPAREN", "OPENED_L",
67
+ "OPENED_COLON", "PS_WS", "PS_LPAREN", "PS_L", "PS_COLON", "PP_WS",
68
+ "PP_L", "PP_COLON", "PL_WS", "PL_COLON", "SIGNAL_INNER", "SIGNAL_END",
69
+ "PATH_INNER", "PATH_END", "BODY_CLOSE", "BODY_RUN", "BODY_COLON",
70
+ ];
71
+
72
+
73
+ private openTag: string = "";
74
+
75
+ private setOpenTag(): void {
76
+ this.openTag = this.text.substring(2);
77
+ }
78
+
79
+ private atColonCloseTag(): boolean {
80
+ if (this.inputStream.LA(1) !== 0x3A /* ':' */) return false;
81
+ const tag = this.openTag;
82
+ if (tag.length === 0) return false;
83
+ for (let i = 0; i < tag.length; i++) {
84
+ if (this.inputStream.LA(i + 2) !== tag.charCodeAt(i)) return false;
85
+ }
86
+ const followChar = this.inputStream.LA(tag.length + 2);
87
+ if (followChar > 0 && this.isIdentChar(followChar)) return false;
88
+ return true;
89
+ }
90
+
91
+ private isIdentChar(c: number): boolean {
92
+ return (c >= 0x30 && c <= 0x39) ||
93
+ (c >= 0x41 && c <= 0x5A) ||
94
+ (c >= 0x61 && c <= 0x7A) ||
95
+ c === 0x5F;
96
+ }
97
+
98
+ private consumeRestOfCloseTagAfterColon(): void {
99
+ const remaining = this.openTag.length - 1;
100
+ for (let i = 0; i < remaining; i++) {
101
+ this.inputStream.consume();
102
+ }
103
+ }
104
+
105
+ private isOpKeywordAfterLtLt(): boolean {
106
+ // Called from TEXT rule after '<<' has been matched.
107
+ // LA(1) is the first char after '<<'.
108
+ const ops = ["FIND", "READ", "EDIT", "COPY", "MOVE", "SHOW", "HIDE", "SEND", "EXEC"];
109
+ for (const op of ops) {
110
+ let matches = true;
111
+ for (let i = 0; i < op.length; i++) {
112
+ if (this.inputStream.LA(i + 1) !== op.charCodeAt(i)) {
113
+ matches = false;
114
+ break;
115
+ }
116
+ }
117
+ if (matches) return true;
118
+ }
119
+ return false;
120
+ }
121
+
122
+
123
+ public constructor(input: antlr.CharStream) {
124
+ super(input);
125
+ this.interpreter = new antlr.LexerATNSimulator(this, plurnkLexer._ATN, plurnkLexer.decisionsToDFA, new antlr.PredictionContextCache());
126
+ }
127
+
128
+ public get grammarFileName(): string { return "plurnkLexer.g4"; }
129
+
130
+ public get literalNames(): (string | null)[] { return plurnkLexer.literalNames; }
131
+ public get symbolicNames(): (string | null)[] { return plurnkLexer.symbolicNames; }
132
+ public get ruleNames(): string[] { return plurnkLexer.ruleNames; }
133
+
134
+ public get serializedATN(): number[] { return plurnkLexer._serializedATN; }
135
+
136
+ public get channelNames(): string[] { return plurnkLexer.channelNames; }
137
+
138
+ public get modeNames(): string[] { return plurnkLexer.modeNames; }
139
+
140
+ public override action(localContext: antlr.ParserRuleContext | null, ruleIndex: number, actionIndex: number): void {
141
+ switch (ruleIndex) {
142
+ case 2:
143
+ this.OPEN_FIND_action(localContext, actionIndex);
144
+ break;
145
+ case 3:
146
+ this.OPEN_READ_action(localContext, actionIndex);
147
+ break;
148
+ case 4:
149
+ this.OPEN_EDIT_action(localContext, actionIndex);
150
+ break;
151
+ case 5:
152
+ this.OPEN_COPY_action(localContext, actionIndex);
153
+ break;
154
+ case 6:
155
+ this.OPEN_MOVE_action(localContext, actionIndex);
156
+ break;
157
+ case 7:
158
+ this.OPEN_SHOW_action(localContext, actionIndex);
159
+ break;
160
+ case 8:
161
+ this.OPEN_HIDE_action(localContext, actionIndex);
162
+ break;
163
+ case 9:
164
+ this.OPEN_SEND_action(localContext, actionIndex);
165
+ break;
166
+ case 10:
167
+ this.OPEN_EXEC_action(localContext, actionIndex);
168
+ break;
169
+ case 30:
170
+ this.BODY_CLOSE_action(localContext, actionIndex);
171
+ break;
172
+ }
173
+ }
174
+ private OPEN_FIND_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
175
+ switch (actionIndex) {
176
+ case 0:
177
+ this.setOpenTag();
178
+ break;
179
+ }
180
+ }
181
+ private OPEN_READ_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
182
+ switch (actionIndex) {
183
+ case 1:
184
+ this.setOpenTag();
185
+ break;
186
+ }
187
+ }
188
+ private OPEN_EDIT_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
189
+ switch (actionIndex) {
190
+ case 2:
191
+ this.setOpenTag();
192
+ break;
193
+ }
194
+ }
195
+ private OPEN_COPY_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
196
+ switch (actionIndex) {
197
+ case 3:
198
+ this.setOpenTag();
199
+ break;
200
+ }
201
+ }
202
+ private OPEN_MOVE_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
203
+ switch (actionIndex) {
204
+ case 4:
205
+ this.setOpenTag();
206
+ break;
207
+ }
208
+ }
209
+ private OPEN_SHOW_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
210
+ switch (actionIndex) {
211
+ case 5:
212
+ this.setOpenTag();
213
+ break;
214
+ }
215
+ }
216
+ private OPEN_HIDE_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
217
+ switch (actionIndex) {
218
+ case 6:
219
+ this.setOpenTag();
220
+ break;
221
+ }
222
+ }
223
+ private OPEN_SEND_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
224
+ switch (actionIndex) {
225
+ case 7:
226
+ this.setOpenTag();
227
+ break;
228
+ }
229
+ }
230
+ private OPEN_EXEC_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
231
+ switch (actionIndex) {
232
+ case 8:
233
+ this.setOpenTag();
234
+ break;
235
+ }
236
+ }
237
+ private BODY_CLOSE_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
238
+ switch (actionIndex) {
239
+ case 9:
240
+ this.consumeRestOfCloseTagAfterColon();
241
+ break;
242
+ }
243
+ }
244
+ public override sempred(localContext: antlr.ParserRuleContext | null, ruleIndex: number, predIndex: number): boolean {
245
+ switch (ruleIndex) {
246
+ case 11:
247
+ return this.TEXT_sempred(localContext, predIndex);
248
+ case 30:
249
+ return this.BODY_CLOSE_sempred(localContext, predIndex);
250
+ }
251
+ return true;
252
+ }
253
+ private TEXT_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
254
+ switch (predIndex) {
255
+ case 0:
256
+ return !this.isOpKeywordAfterLtLt() ;
257
+ }
258
+ return true;
259
+ }
260
+ private BODY_CLOSE_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
261
+ switch (predIndex) {
262
+ case 1:
263
+ return this.atColonCloseTag() ;
264
+ }
265
+ return true;
266
+ }
267
+
268
+ public static readonly _serializedATN: number[] = [
269
+ 4,0,25,363,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,
270
+ 1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,
271
+ 9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,
272
+ 16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,
273
+ 22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,
274
+ 29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,1,0,4,0,76,8,0,11,0,12,0,77,
275
+ 1,1,1,1,3,1,82,8,1,1,1,4,1,85,8,1,11,1,12,1,86,1,1,1,1,3,1,91,8,
276
+ 1,1,1,4,1,94,8,1,11,1,12,1,95,3,1,98,8,1,1,1,1,1,1,2,1,2,1,2,1,2,
277
+ 1,2,1,2,1,2,1,2,3,2,110,8,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,1,3,
278
+ 1,3,1,3,1,3,3,3,124,8,3,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,
279
+ 1,4,1,4,3,4,138,8,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,
280
+ 1,5,3,5,152,8,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,6,1,6,
281
+ 3,6,166,8,6,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,7,1,7,1,7,1,7,1,7,3,7,
282
+ 180,8,7,1,7,1,7,1,7,1,7,1,8,1,8,1,8,1,8,1,8,1,8,1,8,1,8,3,8,194,
283
+ 8,8,1,8,1,8,1,8,1,8,1,9,1,9,1,9,1,9,1,9,1,9,1,9,1,9,3,9,208,8,9,
284
+ 1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,10,1,10,3,10,222,
285
+ 8,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,11,1,11,4,11,
286
+ 235,8,11,11,11,12,11,236,1,12,4,12,240,8,12,11,12,12,12,241,1,12,
287
+ 1,12,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,1,15,1,15,
288
+ 1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,4,17,267,8,17,11,17,
289
+ 12,17,268,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,19,1,19,1,19,1,19,
290
+ 1,19,1,20,1,20,1,20,1,20,1,20,1,21,4,21,289,8,21,11,21,12,21,290,
291
+ 1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,23,1,23,1,23,1,23,1,23,1,24,
292
+ 4,24,306,8,24,11,24,12,24,307,1,24,1,24,1,25,1,25,1,25,1,25,1,25,
293
+ 1,26,1,26,1,26,4,26,320,8,26,11,26,12,26,321,1,26,1,26,1,27,1,27,
294
+ 1,27,1,27,1,27,1,28,1,28,1,28,4,28,334,8,28,11,28,12,28,335,1,28,
295
+ 1,28,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,30,1,30,1,30,
296
+ 1,30,1,31,4,31,354,8,31,11,31,12,31,355,1,31,1,31,1,32,1,32,1,32,
297
+ 1,32,0,0,33,8,0,10,0,12,12,14,13,16,14,18,15,20,16,22,17,24,18,26,
298
+ 19,28,20,30,11,32,21,34,0,36,0,38,0,40,0,42,22,44,0,46,0,48,0,50,
299
+ 23,52,0,54,0,56,24,58,0,60,0,62,0,64,0,66,0,68,0,70,0,72,25,8,0,
300
+ 1,2,3,4,5,6,7,7,4,0,48,57,65,90,95,95,97,122,1,0,48,57,1,0,60,60,
301
+ 3,0,9,10,13,13,32,32,4,0,10,10,13,13,60,60,93,93,4,0,10,10,13,13,
302
+ 41,41,60,60,1,0,58,58,380,0,12,1,0,0,0,0,14,1,0,0,0,0,16,1,0,0,0,
303
+ 0,18,1,0,0,0,0,20,1,0,0,0,0,22,1,0,0,0,0,24,1,0,0,0,0,26,1,0,0,0,
304
+ 0,28,1,0,0,0,0,30,1,0,0,0,1,32,1,0,0,0,1,34,1,0,0,0,1,36,1,0,0,0,
305
+ 1,38,1,0,0,0,1,40,1,0,0,0,2,42,1,0,0,0,2,44,1,0,0,0,2,46,1,0,0,0,
306
+ 2,48,1,0,0,0,3,50,1,0,0,0,3,52,1,0,0,0,3,54,1,0,0,0,4,56,1,0,0,0,
307
+ 4,58,1,0,0,0,5,60,1,0,0,0,5,62,1,0,0,0,6,64,1,0,0,0,6,66,1,0,0,0,
308
+ 7,68,1,0,0,0,7,70,1,0,0,0,7,72,1,0,0,0,8,75,1,0,0,0,10,79,1,0,0,
309
+ 0,12,101,1,0,0,0,14,115,1,0,0,0,16,129,1,0,0,0,18,143,1,0,0,0,20,
310
+ 157,1,0,0,0,22,171,1,0,0,0,24,185,1,0,0,0,26,199,1,0,0,0,28,213,
311
+ 1,0,0,0,30,234,1,0,0,0,32,239,1,0,0,0,34,245,1,0,0,0,36,250,1,0,
312
+ 0,0,38,255,1,0,0,0,40,260,1,0,0,0,42,266,1,0,0,0,44,272,1,0,0,0,
313
+ 46,277,1,0,0,0,48,282,1,0,0,0,50,288,1,0,0,0,52,294,1,0,0,0,54,299,
314
+ 1,0,0,0,56,305,1,0,0,0,58,311,1,0,0,0,60,319,1,0,0,0,62,325,1,0,
315
+ 0,0,64,333,1,0,0,0,66,339,1,0,0,0,68,344,1,0,0,0,70,353,1,0,0,0,
316
+ 72,359,1,0,0,0,74,76,7,0,0,0,75,74,1,0,0,0,76,77,1,0,0,0,77,75,1,
317
+ 0,0,0,77,78,1,0,0,0,78,9,1,0,0,0,79,81,5,60,0,0,80,82,5,45,0,0,81,
318
+ 80,1,0,0,0,81,82,1,0,0,0,82,84,1,0,0,0,83,85,7,1,0,0,84,83,1,0,0,
319
+ 0,85,86,1,0,0,0,86,84,1,0,0,0,86,87,1,0,0,0,87,97,1,0,0,0,88,90,
320
+ 5,45,0,0,89,91,5,45,0,0,90,89,1,0,0,0,90,91,1,0,0,0,91,93,1,0,0,
321
+ 0,92,94,7,1,0,0,93,92,1,0,0,0,94,95,1,0,0,0,95,93,1,0,0,0,95,96,
322
+ 1,0,0,0,96,98,1,0,0,0,97,88,1,0,0,0,97,98,1,0,0,0,98,99,1,0,0,0,
323
+ 99,100,5,62,0,0,100,11,1,0,0,0,101,102,5,60,0,0,102,103,5,60,0,0,
324
+ 103,104,5,70,0,0,104,105,5,73,0,0,105,106,5,78,0,0,106,107,5,68,
325
+ 0,0,107,109,1,0,0,0,108,110,3,8,0,0,109,108,1,0,0,0,109,110,1,0,
326
+ 0,0,110,111,1,0,0,0,111,112,6,2,0,0,112,113,1,0,0,0,113,114,6,2,
327
+ 1,0,114,13,1,0,0,0,115,116,5,60,0,0,116,117,5,60,0,0,117,118,5,82,
328
+ 0,0,118,119,5,69,0,0,119,120,5,65,0,0,120,121,5,68,0,0,121,123,1,
329
+ 0,0,0,122,124,3,8,0,0,123,122,1,0,0,0,123,124,1,0,0,0,124,125,1,
330
+ 0,0,0,125,126,6,3,2,0,126,127,1,0,0,0,127,128,6,3,1,0,128,15,1,0,
331
+ 0,0,129,130,5,60,0,0,130,131,5,60,0,0,131,132,5,69,0,0,132,133,5,
332
+ 68,0,0,133,134,5,73,0,0,134,135,5,84,0,0,135,137,1,0,0,0,136,138,
333
+ 3,8,0,0,137,136,1,0,0,0,137,138,1,0,0,0,138,139,1,0,0,0,139,140,
334
+ 6,4,3,0,140,141,1,0,0,0,141,142,6,4,1,0,142,17,1,0,0,0,143,144,5,
335
+ 60,0,0,144,145,5,60,0,0,145,146,5,67,0,0,146,147,5,79,0,0,147,148,
336
+ 5,80,0,0,148,149,5,89,0,0,149,151,1,0,0,0,150,152,3,8,0,0,151,150,
337
+ 1,0,0,0,151,152,1,0,0,0,152,153,1,0,0,0,153,154,6,5,4,0,154,155,
338
+ 1,0,0,0,155,156,6,5,1,0,156,19,1,0,0,0,157,158,5,60,0,0,158,159,
339
+ 5,60,0,0,159,160,5,77,0,0,160,161,5,79,0,0,161,162,5,86,0,0,162,
340
+ 163,5,69,0,0,163,165,1,0,0,0,164,166,3,8,0,0,165,164,1,0,0,0,165,
341
+ 166,1,0,0,0,166,167,1,0,0,0,167,168,6,6,5,0,168,169,1,0,0,0,169,
342
+ 170,6,6,1,0,170,21,1,0,0,0,171,172,5,60,0,0,172,173,5,60,0,0,173,
343
+ 174,5,83,0,0,174,175,5,72,0,0,175,176,5,79,0,0,176,177,5,87,0,0,
344
+ 177,179,1,0,0,0,178,180,3,8,0,0,179,178,1,0,0,0,179,180,1,0,0,0,
345
+ 180,181,1,0,0,0,181,182,6,7,6,0,182,183,1,0,0,0,183,184,6,7,1,0,
346
+ 184,23,1,0,0,0,185,186,5,60,0,0,186,187,5,60,0,0,187,188,5,72,0,
347
+ 0,188,189,5,73,0,0,189,190,5,68,0,0,190,191,5,69,0,0,191,193,1,0,
348
+ 0,0,192,194,3,8,0,0,193,192,1,0,0,0,193,194,1,0,0,0,194,195,1,0,
349
+ 0,0,195,196,6,8,7,0,196,197,1,0,0,0,197,198,6,8,1,0,198,25,1,0,0,
350
+ 0,199,200,5,60,0,0,200,201,5,60,0,0,201,202,5,83,0,0,202,203,5,69,
351
+ 0,0,203,204,5,78,0,0,204,205,5,68,0,0,205,207,1,0,0,0,206,208,3,
352
+ 8,0,0,207,206,1,0,0,0,207,208,1,0,0,0,208,209,1,0,0,0,209,210,6,
353
+ 9,8,0,210,211,1,0,0,0,211,212,6,9,1,0,212,27,1,0,0,0,213,214,5,60,
354
+ 0,0,214,215,5,60,0,0,215,216,5,69,0,0,216,217,5,88,0,0,217,218,5,
355
+ 69,0,0,218,219,5,67,0,0,219,221,1,0,0,0,220,222,3,8,0,0,221,220,
356
+ 1,0,0,0,221,222,1,0,0,0,222,223,1,0,0,0,223,224,6,10,9,0,224,225,
357
+ 1,0,0,0,225,226,6,10,1,0,226,29,1,0,0,0,227,228,5,60,0,0,228,229,
358
+ 5,60,0,0,229,230,1,0,0,0,230,235,4,11,0,0,231,232,5,60,0,0,232,235,
359
+ 8,2,0,0,233,235,8,2,0,0,234,227,1,0,0,0,234,231,1,0,0,0,234,233,
360
+ 1,0,0,0,235,236,1,0,0,0,236,234,1,0,0,0,236,237,1,0,0,0,237,31,1,
361
+ 0,0,0,238,240,7,3,0,0,239,238,1,0,0,0,240,241,1,0,0,0,241,239,1,
362
+ 0,0,0,241,242,1,0,0,0,242,243,1,0,0,0,243,244,6,12,10,0,244,33,1,
363
+ 0,0,0,245,246,5,91,0,0,246,247,1,0,0,0,247,248,6,13,11,0,248,249,
364
+ 6,13,12,0,249,35,1,0,0,0,250,251,5,40,0,0,251,252,1,0,0,0,252,253,
365
+ 6,14,13,0,253,254,6,14,14,0,254,37,1,0,0,0,255,256,3,10,1,0,256,
366
+ 257,1,0,0,0,257,258,6,15,15,0,258,259,6,15,16,0,259,39,1,0,0,0,260,
367
+ 261,5,58,0,0,261,262,1,0,0,0,262,263,6,16,17,0,263,264,6,16,18,0,
368
+ 264,41,1,0,0,0,265,267,7,3,0,0,266,265,1,0,0,0,267,268,1,0,0,0,268,
369
+ 266,1,0,0,0,268,269,1,0,0,0,269,270,1,0,0,0,270,271,6,17,10,0,271,
370
+ 43,1,0,0,0,272,273,5,40,0,0,273,274,1,0,0,0,274,275,6,18,13,0,275,
371
+ 276,6,18,14,0,276,45,1,0,0,0,277,278,3,10,1,0,278,279,1,0,0,0,279,
372
+ 280,6,19,15,0,280,281,6,19,16,0,281,47,1,0,0,0,282,283,5,58,0,0,
373
+ 283,284,1,0,0,0,284,285,6,20,17,0,285,286,6,20,18,0,286,49,1,0,0,
374
+ 0,287,289,7,3,0,0,288,287,1,0,0,0,289,290,1,0,0,0,290,288,1,0,0,
375
+ 0,290,291,1,0,0,0,291,292,1,0,0,0,292,293,6,21,10,0,293,51,1,0,0,
376
+ 0,294,295,3,10,1,0,295,296,1,0,0,0,296,297,6,22,15,0,297,298,6,22,
377
+ 16,0,298,53,1,0,0,0,299,300,5,58,0,0,300,301,1,0,0,0,301,302,6,23,
378
+ 17,0,302,303,6,23,18,0,303,55,1,0,0,0,304,306,7,3,0,0,305,304,1,
379
+ 0,0,0,306,307,1,0,0,0,307,305,1,0,0,0,307,308,1,0,0,0,308,309,1,
380
+ 0,0,0,309,310,6,24,10,0,310,57,1,0,0,0,311,312,5,58,0,0,312,313,
381
+ 1,0,0,0,313,314,6,25,17,0,314,315,6,25,18,0,315,59,1,0,0,0,316,320,
382
+ 8,4,0,0,317,318,5,60,0,0,318,320,8,4,0,0,319,316,1,0,0,0,319,317,
383
+ 1,0,0,0,320,321,1,0,0,0,321,319,1,0,0,0,321,322,1,0,0,0,322,323,
384
+ 1,0,0,0,323,324,6,26,19,0,324,61,1,0,0,0,325,326,5,93,0,0,326,327,
385
+ 1,0,0,0,327,328,6,27,20,0,328,329,6,27,21,0,329,63,1,0,0,0,330,334,
386
+ 8,5,0,0,331,332,5,60,0,0,332,334,8,5,0,0,333,330,1,0,0,0,333,331,
387
+ 1,0,0,0,334,335,1,0,0,0,335,333,1,0,0,0,335,336,1,0,0,0,336,337,
388
+ 1,0,0,0,337,338,6,28,22,0,338,65,1,0,0,0,339,340,5,41,0,0,340,341,
389
+ 1,0,0,0,341,342,6,29,23,0,342,343,6,29,24,0,343,67,1,0,0,0,344,345,
390
+ 4,30,1,0,345,346,5,58,0,0,346,347,9,0,0,0,347,348,6,30,25,0,348,
391
+ 349,1,0,0,0,349,350,6,30,26,0,350,351,6,30,27,0,351,69,1,0,0,0,352,
392
+ 354,8,6,0,0,353,352,1,0,0,0,354,355,1,0,0,0,355,353,1,0,0,0,355,
393
+ 356,1,0,0,0,356,357,1,0,0,0,357,358,6,31,28,0,358,71,1,0,0,0,359,
394
+ 360,5,58,0,0,360,361,1,0,0,0,361,362,6,32,28,0,362,73,1,0,0,0,34,
395
+ 0,1,2,3,4,5,6,7,77,81,86,90,95,97,109,123,137,151,165,179,193,207,
396
+ 221,234,236,241,268,290,307,319,321,333,335,355,29,1,2,0,2,1,0,1,
397
+ 3,1,1,4,2,1,5,3,1,6,4,1,7,5,1,8,6,1,9,7,1,10,8,6,0,0,7,1,0,2,5,0,
398
+ 7,3,0,2,6,0,7,5,0,2,4,0,7,6,0,2,7,0,7,7,0,7,2,0,2,2,0,7,8,0,7,4,
399
+ 0,2,3,0,1,30,9,7,10,0,2,0,0,7,9,0
400
+ ];
401
+
402
+ private static __ATN: antlr.ATN;
403
+ public static get _ATN(): antlr.ATN {
404
+ if (!plurnkLexer.__ATN) {
405
+ plurnkLexer.__ATN = new antlr.ATNDeserializer().deserialize(plurnkLexer._serializedATN);
406
+ }
407
+
408
+ return plurnkLexer.__ATN;
409
+ }
410
+
411
+
412
+ private static readonly vocabulary = new antlr.Vocabulary(plurnkLexer.literalNames, plurnkLexer.symbolicNames, []);
413
+
414
+ public override get vocabulary(): antlr.Vocabulary {
415
+ return plurnkLexer.vocabulary;
416
+ }
417
+
418
+ private static readonly decisionsToDFA = plurnkLexer._ATN.decisionToState.map( (ds: antlr.DecisionState, index: number) => new antlr.DFA(ds, index) );
419
+ }