@plurnk/plurnk-grammar 0.1.1 → 0.2.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.
- package/README.md +3 -3
- package/bin/plurnk.js +2 -2
- package/package.json +9 -4
- package/plurnk.md +4 -4
- package/schema/Agent.json +18 -0
- package/schema/ChannelContent.json +14 -0
- package/schema/Entry.json +51 -0
- package/schema/LineMarker.json +13 -0
- package/schema/LogEntry.json +100 -0
- package/schema/Loop.json +20 -0
- package/schema/MatcherBody.json +60 -0
- package/schema/Packet.json +64 -0
- package/schema/Params.json +13 -0
- package/schema/ParsedPath.json +51 -0
- package/schema/PlurnkStatement.json +183 -0
- package/schema/Position.json +13 -0
- package/schema/ProviderDeclaration.json +16 -0
- package/schema/Run.json +21 -0
- package/schema/SchemeRegistration.json +31 -0
- package/schema/SendBody.json +13 -0
- package/schema/Session.json +20 -0
- package/schema/Turn.json +30 -0
- package/schema/Visibility.json +17 -0
- package/src/AstBuilder.ts +372 -0
- package/src/PlurnkErrorStrategy.ts +139 -0
- package/src/{errors.ts → PlurnkParseError.ts} +1 -2
- package/src/PlurnkParser.ts +92 -0
- package/src/RecordingListener.ts +34 -0
- package/src/Validator.ts +94 -0
- package/src/generated/plurnkLexer.ts +224 -176
- package/src/generated/plurnkParser.ts +1461 -195
- package/src/generated/plurnkParserVisitor.ts +97 -6
- package/src/index.ts +29 -142
- package/src/types.generated.ts +491 -0
- package/src/types.ts +30 -0
- package/SPEC.md +0 -625
- package/src/ast.ts +0 -348
- package/src/error-strategy.ts +0 -140
|
@@ -10,32 +10,35 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
10
10
|
public static readonly RPAREN = 4;
|
|
11
11
|
public static readonly L_MARKER = 5;
|
|
12
12
|
public static readonly COLON = 6;
|
|
13
|
-
public static readonly
|
|
14
|
-
public static readonly
|
|
15
|
-
public static readonly
|
|
16
|
-
public static readonly
|
|
17
|
-
public static readonly
|
|
18
|
-
public static readonly
|
|
19
|
-
public static readonly
|
|
20
|
-
public static readonly
|
|
21
|
-
public static readonly
|
|
22
|
-
public static readonly
|
|
23
|
-
public static readonly
|
|
24
|
-
public static readonly
|
|
25
|
-
public static readonly
|
|
26
|
-
public static readonly
|
|
27
|
-
public static readonly
|
|
28
|
-
public static readonly
|
|
29
|
-
public static readonly
|
|
30
|
-
public static readonly
|
|
31
|
-
public static readonly
|
|
32
|
-
public static readonly
|
|
33
|
-
public static readonly
|
|
34
|
-
public static readonly
|
|
35
|
-
public static readonly
|
|
36
|
-
public static readonly
|
|
37
|
-
public static readonly
|
|
38
|
-
public static readonly
|
|
13
|
+
public static readonly COMMA = 7;
|
|
14
|
+
public static readonly INT = 8;
|
|
15
|
+
public static readonly IDENT = 9;
|
|
16
|
+
public static readonly TAG = 10;
|
|
17
|
+
public static readonly PATH_TEXT = 11;
|
|
18
|
+
public static readonly BODY_TEXT = 12;
|
|
19
|
+
public static readonly CLOSE_TAG = 13;
|
|
20
|
+
public static readonly TEXT = 14;
|
|
21
|
+
public static readonly OPEN_FIND = 15;
|
|
22
|
+
public static readonly OPEN_READ = 16;
|
|
23
|
+
public static readonly OPEN_EDIT = 17;
|
|
24
|
+
public static readonly OPEN_COPY = 18;
|
|
25
|
+
public static readonly OPEN_MOVE = 19;
|
|
26
|
+
public static readonly OPEN_SHOW = 20;
|
|
27
|
+
public static readonly OPEN_HIDE = 21;
|
|
28
|
+
public static readonly OPEN_SEND = 22;
|
|
29
|
+
public static readonly OPEN_EXEC = 23;
|
|
30
|
+
public static readonly SLOTS_WS = 24;
|
|
31
|
+
public static readonly ST_WS = 25;
|
|
32
|
+
public static readonly SI_WS = 26;
|
|
33
|
+
public static readonly SD_WS = 27;
|
|
34
|
+
public static readonly ST_COMMA = 28;
|
|
35
|
+
public static readonly B_COLON = 29;
|
|
36
|
+
public static readonly SLOTS = 1;
|
|
37
|
+
public static readonly SIGNAL_TAGS = 2;
|
|
38
|
+
public static readonly SIGNAL_INT = 3;
|
|
39
|
+
public static readonly SIGNAL_IDENT = 4;
|
|
40
|
+
public static readonly PATH = 5;
|
|
41
|
+
public static readonly BODY = 6;
|
|
39
42
|
|
|
40
43
|
public static readonly channelNames = [
|
|
41
44
|
"DEFAULT_TOKEN_CHANNEL", "HIDDEN"
|
|
@@ -44,38 +47,47 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
44
47
|
public static readonly literalNames = [
|
|
45
48
|
null, null, null, null, null, null, null, null, null, null, null,
|
|
46
49
|
null, null, null, null, null, null, null, null, null, null, null,
|
|
47
|
-
null, null, null, "':'"
|
|
50
|
+
null, null, null, null, null, null, "','", "':'"
|
|
48
51
|
];
|
|
49
52
|
|
|
50
53
|
public static readonly symbolicNames = [
|
|
51
54
|
null, "LBRACKET", "RBRACKET", "LPAREN", "RPAREN", "L_MARKER", "COLON",
|
|
52
|
-
"
|
|
53
|
-
"OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE",
|
|
54
|
-
"
|
|
55
|
-
"
|
|
55
|
+
"COMMA", "INT", "IDENT", "TAG", "PATH_TEXT", "BODY_TEXT", "CLOSE_TAG",
|
|
56
|
+
"TEXT", "OPEN_FIND", "OPEN_READ", "OPEN_EDIT", "OPEN_COPY", "OPEN_MOVE",
|
|
57
|
+
"OPEN_SHOW", "OPEN_HIDE", "OPEN_SEND", "OPEN_EXEC", "SLOTS_WS",
|
|
58
|
+
"ST_WS", "SI_WS", "SD_WS", "ST_COMMA", "B_COLON"
|
|
56
59
|
];
|
|
57
60
|
|
|
58
61
|
public static readonly modeNames = [
|
|
59
|
-
"DEFAULT_MODE", "
|
|
60
|
-
"
|
|
62
|
+
"DEFAULT_MODE", "SLOTS", "SIGNAL_TAGS", "SIGNAL_INT", "SIGNAL_IDENT",
|
|
63
|
+
"PATH", "BODY",
|
|
61
64
|
];
|
|
62
65
|
|
|
63
66
|
public static readonly ruleNames = [
|
|
64
67
|
"SUFFIX", "L_PATTERN", "OPEN_FIND", "OPEN_READ", "OPEN_EDIT", "OPEN_COPY",
|
|
65
68
|
"OPEN_MOVE", "OPEN_SHOW", "OPEN_HIDE", "OPEN_SEND", "OPEN_EXEC",
|
|
66
|
-
"TEXT", "
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"PATH_INNER", "PATH_END", "
|
|
69
|
+
"TEXT", "SLOTS_WS", "SLOTS_LB_TAGS", "SLOTS_LB_INT", "SLOTS_LB_IDENT",
|
|
70
|
+
"SLOTS_LPAREN", "SLOTS_L", "SLOTS_COLON", "ST_WS", "ST_COMMA", "ST_TAG",
|
|
71
|
+
"ST_END", "SI_WS", "SI_INT", "SI_END", "SD_WS", "SD_IDENT", "SD_END",
|
|
72
|
+
"PATH_INNER", "PATH_END", "B_CLOSE", "B_RUN", "B_COLON",
|
|
70
73
|
];
|
|
71
74
|
|
|
72
75
|
|
|
73
76
|
private openTag: string = "";
|
|
77
|
+
private openTagLine: number = 0;
|
|
78
|
+
private openTagColumn: number = 0;
|
|
74
79
|
|
|
75
80
|
private setOpenTag(): void {
|
|
76
81
|
this.openTag = this.text.substring(2);
|
|
82
|
+
// Capture where the open tag began, for reference in mismatched-close-tag errors.
|
|
83
|
+
this.openTagLine = (this as any).currentTokenStartLine;
|
|
84
|
+
this.openTagColumn = (this as any).currentTokenColumn;
|
|
77
85
|
}
|
|
78
86
|
|
|
87
|
+
public getOpenTag(): string { return this.openTag; }
|
|
88
|
+
public getOpenTagLine(): number { return this.openTagLine; }
|
|
89
|
+
public getOpenTagColumn(): number { return this.openTagColumn; }
|
|
90
|
+
|
|
79
91
|
private atColonCloseTag(): boolean {
|
|
80
92
|
if (this.inputStream.LA(1) !== 0x3A /* ':' */) return false;
|
|
81
93
|
const tag = this.openTag;
|
|
@@ -103,8 +115,6 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
103
115
|
}
|
|
104
116
|
|
|
105
117
|
private isOpKeywordAfterLtLt(): boolean {
|
|
106
|
-
// Called from TEXT rule after '<<' has been matched.
|
|
107
|
-
// LA(1) is the first char after '<<'.
|
|
108
118
|
const ops = ["FIND", "READ", "EDIT", "COPY", "MOVE", "SHOW", "HIDE", "SEND", "EXEC"];
|
|
109
119
|
for (const op of ops) {
|
|
110
120
|
let matches = true;
|
|
@@ -119,6 +129,9 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
119
129
|
return false;
|
|
120
130
|
}
|
|
121
131
|
|
|
132
|
+
private isSendOp(): boolean { return this.openTag.startsWith("SEND"); }
|
|
133
|
+
private isExecOp(): boolean { return this.openTag.startsWith("EXEC"); }
|
|
134
|
+
|
|
122
135
|
|
|
123
136
|
public constructor(input: antlr.CharStream) {
|
|
124
137
|
super(input);
|
|
@@ -166,8 +179,8 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
166
179
|
case 10:
|
|
167
180
|
this.OPEN_EXEC_action(localContext, actionIndex);
|
|
168
181
|
break;
|
|
169
|
-
case
|
|
170
|
-
this.
|
|
182
|
+
case 31:
|
|
183
|
+
this.B_CLOSE_action(localContext, actionIndex);
|
|
171
184
|
break;
|
|
172
185
|
}
|
|
173
186
|
}
|
|
@@ -234,7 +247,7 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
234
247
|
break;
|
|
235
248
|
}
|
|
236
249
|
}
|
|
237
|
-
private
|
|
250
|
+
private B_CLOSE_action(localContext: antlr.ParserRuleContext | null, actionIndex: number): void {
|
|
238
251
|
switch (actionIndex) {
|
|
239
252
|
case 9:
|
|
240
253
|
this.consumeRestOfCloseTagAfterColon();
|
|
@@ -245,8 +258,14 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
245
258
|
switch (ruleIndex) {
|
|
246
259
|
case 11:
|
|
247
260
|
return this.TEXT_sempred(localContext, predIndex);
|
|
248
|
-
case
|
|
249
|
-
return this.
|
|
261
|
+
case 13:
|
|
262
|
+
return this.SLOTS_LB_TAGS_sempred(localContext, predIndex);
|
|
263
|
+
case 14:
|
|
264
|
+
return this.SLOTS_LB_INT_sempred(localContext, predIndex);
|
|
265
|
+
case 15:
|
|
266
|
+
return this.SLOTS_LB_IDENT_sempred(localContext, predIndex);
|
|
267
|
+
case 31:
|
|
268
|
+
return this.B_CLOSE_sempred(localContext, predIndex);
|
|
250
269
|
}
|
|
251
270
|
return true;
|
|
252
271
|
}
|
|
@@ -257,146 +276,175 @@ export class plurnkLexer extends antlr.Lexer {
|
|
|
257
276
|
}
|
|
258
277
|
return true;
|
|
259
278
|
}
|
|
260
|
-
private
|
|
279
|
+
private SLOTS_LB_TAGS_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
|
|
261
280
|
switch (predIndex) {
|
|
262
281
|
case 1:
|
|
282
|
+
return !this.isSendOp() && !this.isExecOp() ;
|
|
283
|
+
}
|
|
284
|
+
return true;
|
|
285
|
+
}
|
|
286
|
+
private SLOTS_LB_INT_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
|
|
287
|
+
switch (predIndex) {
|
|
288
|
+
case 2:
|
|
289
|
+
return this.isSendOp() ;
|
|
290
|
+
}
|
|
291
|
+
return true;
|
|
292
|
+
}
|
|
293
|
+
private SLOTS_LB_IDENT_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
|
|
294
|
+
switch (predIndex) {
|
|
295
|
+
case 3:
|
|
296
|
+
return this.isExecOp() ;
|
|
297
|
+
}
|
|
298
|
+
return true;
|
|
299
|
+
}
|
|
300
|
+
private B_CLOSE_sempred(localContext: antlr.ParserRuleContext | null, predIndex: number): boolean {
|
|
301
|
+
switch (predIndex) {
|
|
302
|
+
case 4:
|
|
263
303
|
return this.atColonCloseTag() ;
|
|
264
304
|
}
|
|
265
305
|
return true;
|
|
266
306
|
}
|
|
267
307
|
|
|
268
308
|
public static readonly _serializedATN: number[] = [
|
|
269
|
-
4,0,
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
16,
|
|
273
|
-
|
|
274
|
-
29,
|
|
275
|
-
1,1,1,1,3,1,
|
|
276
|
-
1,1,1,4,1,
|
|
277
|
-
1,2,1,2,1,2,1,2,3,2,
|
|
278
|
-
1,3,1,3,1,3,3,3,
|
|
279
|
-
1,4,1,4,3,4,
|
|
280
|
-
1,5,3,5,
|
|
281
|
-
3,6,
|
|
282
|
-
|
|
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,
|
|
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,
|
|
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,
|
|
286
|
-
|
|
287
|
-
1,12,1,
|
|
288
|
-
1,15,1,15,1,15,1,
|
|
289
|
-
|
|
290
|
-
1,19,1,
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
1,
|
|
297
|
-
1,
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
0,
|
|
310
|
-
|
|
311
|
-
1,0,0,0,
|
|
312
|
-
0,0,
|
|
313
|
-
|
|
314
|
-
1,0,0,0,
|
|
315
|
-
0,0,
|
|
316
|
-
|
|
317
|
-
0,0,0,
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
0,0,
|
|
326
|
-
0,0,
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
0,
|
|
330
|
-
0,0,0,
|
|
331
|
-
0,
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
1,0,
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
0,
|
|
348
|
-
|
|
349
|
-
0,0,
|
|
350
|
-
|
|
351
|
-
0,0,
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
0,0,
|
|
355
|
-
|
|
356
|
-
1,0,0,0,
|
|
357
|
-
1,0,0,0,
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
0,0,
|
|
362
|
-
|
|
363
|
-
0,0,0,
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
0,
|
|
375
|
-
0,
|
|
376
|
-
0,
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
0,0,0,
|
|
380
|
-
0,0,0,
|
|
381
|
-
1,0,0,0,
|
|
382
|
-
|
|
383
|
-
1,0,0,0,
|
|
384
|
-
|
|
385
|
-
1,0,0,
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
1,0,0,0,
|
|
389
|
-
1,0,0,0,
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
0,
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
0,
|
|
309
|
+
4,0,29,379,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,
|
|
310
|
+
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,9,2,
|
|
311
|
+
10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,
|
|
312
|
+
16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,
|
|
313
|
+
23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,
|
|
314
|
+
29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,1,0,4,0,77,8,0,11,0,12,
|
|
315
|
+
0,78,1,1,1,1,3,1,83,8,1,1,1,4,1,86,8,1,11,1,12,1,87,1,1,1,1,3,1,
|
|
316
|
+
92,8,1,1,1,4,1,95,8,1,11,1,12,1,96,3,1,99,8,1,1,1,1,1,1,2,1,2,1,
|
|
317
|
+
2,1,2,1,2,1,2,1,2,1,2,3,2,111,8,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,
|
|
318
|
+
3,1,3,1,3,1,3,1,3,3,3,125,8,3,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,
|
|
319
|
+
4,1,4,1,4,1,4,3,4,139,8,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,
|
|
320
|
+
5,1,5,1,5,3,5,153,8,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,6,1,6,1,
|
|
321
|
+
6,1,6,3,6,167,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,
|
|
322
|
+
7,3,7,181,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,
|
|
323
|
+
8,195,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,209,
|
|
324
|
+
8,9,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,
|
|
325
|
+
223,8,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,11,1,11,
|
|
326
|
+
4,11,236,8,11,11,11,12,11,237,1,12,4,12,241,8,12,11,12,12,12,242,
|
|
327
|
+
1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,14,1,14,1,14,
|
|
328
|
+
1,14,1,15,1,15,1,15,1,15,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,17,
|
|
329
|
+
1,17,1,17,1,17,1,18,1,18,1,18,1,18,1,18,1,19,4,19,280,8,19,11,19,
|
|
330
|
+
12,19,281,1,19,1,19,1,20,1,20,1,20,1,20,1,21,1,21,1,21,4,21,293,
|
|
331
|
+
8,21,11,21,12,21,294,1,21,1,21,1,22,1,22,1,22,1,22,1,22,1,23,4,23,
|
|
332
|
+
305,8,23,11,23,12,23,306,1,23,1,23,1,24,3,24,312,8,24,1,24,4,24,
|
|
333
|
+
315,8,24,11,24,12,24,316,1,24,1,24,1,25,1,25,1,25,1,25,1,25,1,26,
|
|
334
|
+
4,26,327,8,26,11,26,12,26,328,1,26,1,26,1,27,1,27,5,27,335,8,27,
|
|
335
|
+
10,27,12,27,338,9,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,29,1,29,
|
|
336
|
+
1,29,4,29,350,8,29,11,29,12,29,351,1,29,1,29,1,30,1,30,1,30,1,30,
|
|
337
|
+
1,30,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,32,4,32,370,8,32,
|
|
338
|
+
11,32,12,32,371,1,32,1,32,1,33,1,33,1,33,1,33,0,0,34,7,0,9,0,11,
|
|
339
|
+
15,13,16,15,17,17,18,19,19,21,20,23,21,25,22,27,23,29,14,31,24,33,
|
|
340
|
+
0,35,0,37,0,39,0,41,0,43,0,45,25,47,28,49,0,51,0,53,26,55,0,57,0,
|
|
341
|
+
59,27,61,0,63,0,65,0,67,0,69,0,71,0,73,29,7,0,1,2,3,4,5,6,10,4,0,
|
|
342
|
+
48,57,65,90,95,95,97,122,1,0,48,57,1,0,60,60,3,0,9,10,13,13,32,32,
|
|
343
|
+
2,0,9,9,32,32,6,0,9,10,13,13,32,32,44,44,60,60,93,93,3,0,65,90,95,
|
|
344
|
+
95,97,122,6,0,43,43,45,46,48,57,65,90,95,95,97,122,4,0,10,10,13,
|
|
345
|
+
13,41,41,60,60,1,0,58,58,400,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,
|
|
346
|
+
0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,
|
|
347
|
+
0,0,0,27,1,0,0,0,0,29,1,0,0,0,1,31,1,0,0,0,1,33,1,0,0,0,1,35,1,0,
|
|
348
|
+
0,0,1,37,1,0,0,0,1,39,1,0,0,0,1,41,1,0,0,0,1,43,1,0,0,0,2,45,1,0,
|
|
349
|
+
0,0,2,47,1,0,0,0,2,49,1,0,0,0,2,51,1,0,0,0,3,53,1,0,0,0,3,55,1,0,
|
|
350
|
+
0,0,3,57,1,0,0,0,4,59,1,0,0,0,4,61,1,0,0,0,4,63,1,0,0,0,5,65,1,0,
|
|
351
|
+
0,0,5,67,1,0,0,0,6,69,1,0,0,0,6,71,1,0,0,0,6,73,1,0,0,0,7,76,1,0,
|
|
352
|
+
0,0,9,80,1,0,0,0,11,102,1,0,0,0,13,116,1,0,0,0,15,130,1,0,0,0,17,
|
|
353
|
+
144,1,0,0,0,19,158,1,0,0,0,21,172,1,0,0,0,23,186,1,0,0,0,25,200,
|
|
354
|
+
1,0,0,0,27,214,1,0,0,0,29,235,1,0,0,0,31,240,1,0,0,0,33,246,1,0,
|
|
355
|
+
0,0,35,252,1,0,0,0,37,258,1,0,0,0,39,264,1,0,0,0,41,269,1,0,0,0,
|
|
356
|
+
43,273,1,0,0,0,45,279,1,0,0,0,47,285,1,0,0,0,49,292,1,0,0,0,51,298,
|
|
357
|
+
1,0,0,0,53,304,1,0,0,0,55,311,1,0,0,0,57,320,1,0,0,0,59,326,1,0,
|
|
358
|
+
0,0,61,332,1,0,0,0,63,341,1,0,0,0,65,349,1,0,0,0,67,355,1,0,0,0,
|
|
359
|
+
69,360,1,0,0,0,71,369,1,0,0,0,73,375,1,0,0,0,75,77,7,0,0,0,76,75,
|
|
360
|
+
1,0,0,0,77,78,1,0,0,0,78,76,1,0,0,0,78,79,1,0,0,0,79,8,1,0,0,0,80,
|
|
361
|
+
82,5,60,0,0,81,83,5,45,0,0,82,81,1,0,0,0,82,83,1,0,0,0,83,85,1,0,
|
|
362
|
+
0,0,84,86,7,1,0,0,85,84,1,0,0,0,86,87,1,0,0,0,87,85,1,0,0,0,87,88,
|
|
363
|
+
1,0,0,0,88,98,1,0,0,0,89,91,5,45,0,0,90,92,5,45,0,0,91,90,1,0,0,
|
|
364
|
+
0,91,92,1,0,0,0,92,94,1,0,0,0,93,95,7,1,0,0,94,93,1,0,0,0,95,96,
|
|
365
|
+
1,0,0,0,96,94,1,0,0,0,96,97,1,0,0,0,97,99,1,0,0,0,98,89,1,0,0,0,
|
|
366
|
+
98,99,1,0,0,0,99,100,1,0,0,0,100,101,5,62,0,0,101,10,1,0,0,0,102,
|
|
367
|
+
103,5,60,0,0,103,104,5,60,0,0,104,105,5,70,0,0,105,106,5,73,0,0,
|
|
368
|
+
106,107,5,78,0,0,107,108,5,68,0,0,108,110,1,0,0,0,109,111,3,7,0,
|
|
369
|
+
0,110,109,1,0,0,0,110,111,1,0,0,0,111,112,1,0,0,0,112,113,6,2,0,
|
|
370
|
+
0,113,114,1,0,0,0,114,115,6,2,1,0,115,12,1,0,0,0,116,117,5,60,0,
|
|
371
|
+
0,117,118,5,60,0,0,118,119,5,82,0,0,119,120,5,69,0,0,120,121,5,65,
|
|
372
|
+
0,0,121,122,5,68,0,0,122,124,1,0,0,0,123,125,3,7,0,0,124,123,1,0,
|
|
373
|
+
0,0,124,125,1,0,0,0,125,126,1,0,0,0,126,127,6,3,2,0,127,128,1,0,
|
|
374
|
+
0,0,128,129,6,3,1,0,129,14,1,0,0,0,130,131,5,60,0,0,131,132,5,60,
|
|
375
|
+
0,0,132,133,5,69,0,0,133,134,5,68,0,0,134,135,5,73,0,0,135,136,5,
|
|
376
|
+
84,0,0,136,138,1,0,0,0,137,139,3,7,0,0,138,137,1,0,0,0,138,139,1,
|
|
377
|
+
0,0,0,139,140,1,0,0,0,140,141,6,4,3,0,141,142,1,0,0,0,142,143,6,
|
|
378
|
+
4,1,0,143,16,1,0,0,0,144,145,5,60,0,0,145,146,5,60,0,0,146,147,5,
|
|
379
|
+
67,0,0,147,148,5,79,0,0,148,149,5,80,0,0,149,150,5,89,0,0,150,152,
|
|
380
|
+
1,0,0,0,151,153,3,7,0,0,152,151,1,0,0,0,152,153,1,0,0,0,153,154,
|
|
381
|
+
1,0,0,0,154,155,6,5,4,0,155,156,1,0,0,0,156,157,6,5,1,0,157,18,1,
|
|
382
|
+
0,0,0,158,159,5,60,0,0,159,160,5,60,0,0,160,161,5,77,0,0,161,162,
|
|
383
|
+
5,79,0,0,162,163,5,86,0,0,163,164,5,69,0,0,164,166,1,0,0,0,165,167,
|
|
384
|
+
3,7,0,0,166,165,1,0,0,0,166,167,1,0,0,0,167,168,1,0,0,0,168,169,
|
|
385
|
+
6,6,5,0,169,170,1,0,0,0,170,171,6,6,1,0,171,20,1,0,0,0,172,173,5,
|
|
386
|
+
60,0,0,173,174,5,60,0,0,174,175,5,83,0,0,175,176,5,72,0,0,176,177,
|
|
387
|
+
5,79,0,0,177,178,5,87,0,0,178,180,1,0,0,0,179,181,3,7,0,0,180,179,
|
|
388
|
+
1,0,0,0,180,181,1,0,0,0,181,182,1,0,0,0,182,183,6,7,6,0,183,184,
|
|
389
|
+
1,0,0,0,184,185,6,7,1,0,185,22,1,0,0,0,186,187,5,60,0,0,187,188,
|
|
390
|
+
5,60,0,0,188,189,5,72,0,0,189,190,5,73,0,0,190,191,5,68,0,0,191,
|
|
391
|
+
192,5,69,0,0,192,194,1,0,0,0,193,195,3,7,0,0,194,193,1,0,0,0,194,
|
|
392
|
+
195,1,0,0,0,195,196,1,0,0,0,196,197,6,8,7,0,197,198,1,0,0,0,198,
|
|
393
|
+
199,6,8,1,0,199,24,1,0,0,0,200,201,5,60,0,0,201,202,5,60,0,0,202,
|
|
394
|
+
203,5,83,0,0,203,204,5,69,0,0,204,205,5,78,0,0,205,206,5,68,0,0,
|
|
395
|
+
206,208,1,0,0,0,207,209,3,7,0,0,208,207,1,0,0,0,208,209,1,0,0,0,
|
|
396
|
+
209,210,1,0,0,0,210,211,6,9,8,0,211,212,1,0,0,0,212,213,6,9,1,0,
|
|
397
|
+
213,26,1,0,0,0,214,215,5,60,0,0,215,216,5,60,0,0,216,217,5,69,0,
|
|
398
|
+
0,217,218,5,88,0,0,218,219,5,69,0,0,219,220,5,67,0,0,220,222,1,0,
|
|
399
|
+
0,0,221,223,3,7,0,0,222,221,1,0,0,0,222,223,1,0,0,0,223,224,1,0,
|
|
400
|
+
0,0,224,225,6,10,9,0,225,226,1,0,0,0,226,227,6,10,1,0,227,28,1,0,
|
|
401
|
+
0,0,228,229,5,60,0,0,229,230,5,60,0,0,230,231,1,0,0,0,231,236,4,
|
|
402
|
+
11,0,0,232,233,5,60,0,0,233,236,8,2,0,0,234,236,8,2,0,0,235,228,
|
|
403
|
+
1,0,0,0,235,232,1,0,0,0,235,234,1,0,0,0,236,237,1,0,0,0,237,235,
|
|
404
|
+
1,0,0,0,237,238,1,0,0,0,238,30,1,0,0,0,239,241,7,3,0,0,240,239,1,
|
|
405
|
+
0,0,0,241,242,1,0,0,0,242,240,1,0,0,0,242,243,1,0,0,0,243,244,1,
|
|
406
|
+
0,0,0,244,245,6,12,10,0,245,32,1,0,0,0,246,247,5,91,0,0,247,248,
|
|
407
|
+
4,13,1,0,248,249,1,0,0,0,249,250,6,13,11,0,250,251,6,13,12,0,251,
|
|
408
|
+
34,1,0,0,0,252,253,5,91,0,0,253,254,4,14,2,0,254,255,1,0,0,0,255,
|
|
409
|
+
256,6,14,11,0,256,257,6,14,13,0,257,36,1,0,0,0,258,259,5,91,0,0,
|
|
410
|
+
259,260,4,15,3,0,260,261,1,0,0,0,261,262,6,15,11,0,262,263,6,15,
|
|
411
|
+
14,0,263,38,1,0,0,0,264,265,5,40,0,0,265,266,1,0,0,0,266,267,6,16,
|
|
412
|
+
15,0,267,268,6,16,16,0,268,40,1,0,0,0,269,270,3,9,1,0,270,271,1,
|
|
413
|
+
0,0,0,271,272,6,17,17,0,272,42,1,0,0,0,273,274,5,58,0,0,274,275,
|
|
414
|
+
1,0,0,0,275,276,6,18,18,0,276,277,6,18,19,0,277,44,1,0,0,0,278,280,
|
|
415
|
+
7,4,0,0,279,278,1,0,0,0,280,281,1,0,0,0,281,279,1,0,0,0,281,282,
|
|
416
|
+
1,0,0,0,282,283,1,0,0,0,283,284,6,19,10,0,284,46,1,0,0,0,285,286,
|
|
417
|
+
5,44,0,0,286,287,1,0,0,0,287,288,6,20,20,0,288,48,1,0,0,0,289,293,
|
|
418
|
+
8,5,0,0,290,291,5,60,0,0,291,293,8,5,0,0,292,289,1,0,0,0,292,290,
|
|
419
|
+
1,0,0,0,293,294,1,0,0,0,294,292,1,0,0,0,294,295,1,0,0,0,295,296,
|
|
420
|
+
1,0,0,0,296,297,6,21,21,0,297,50,1,0,0,0,298,299,5,93,0,0,299,300,
|
|
421
|
+
1,0,0,0,300,301,6,22,22,0,301,302,6,22,1,0,302,52,1,0,0,0,303,305,
|
|
422
|
+
7,4,0,0,304,303,1,0,0,0,305,306,1,0,0,0,306,304,1,0,0,0,306,307,
|
|
423
|
+
1,0,0,0,307,308,1,0,0,0,308,309,6,23,10,0,309,54,1,0,0,0,310,312,
|
|
424
|
+
5,45,0,0,311,310,1,0,0,0,311,312,1,0,0,0,312,314,1,0,0,0,313,315,
|
|
425
|
+
7,1,0,0,314,313,1,0,0,0,315,316,1,0,0,0,316,314,1,0,0,0,316,317,
|
|
426
|
+
1,0,0,0,317,318,1,0,0,0,318,319,6,24,23,0,319,56,1,0,0,0,320,321,
|
|
427
|
+
5,93,0,0,321,322,1,0,0,0,322,323,6,25,22,0,323,324,6,25,1,0,324,
|
|
428
|
+
58,1,0,0,0,325,327,7,4,0,0,326,325,1,0,0,0,327,328,1,0,0,0,328,326,
|
|
429
|
+
1,0,0,0,328,329,1,0,0,0,329,330,1,0,0,0,330,331,6,26,10,0,331,60,
|
|
430
|
+
1,0,0,0,332,336,7,6,0,0,333,335,7,7,0,0,334,333,1,0,0,0,335,338,
|
|
431
|
+
1,0,0,0,336,334,1,0,0,0,336,337,1,0,0,0,337,339,1,0,0,0,338,336,
|
|
432
|
+
1,0,0,0,339,340,6,27,24,0,340,62,1,0,0,0,341,342,5,93,0,0,342,343,
|
|
433
|
+
1,0,0,0,343,344,6,28,22,0,344,345,6,28,1,0,345,64,1,0,0,0,346,350,
|
|
434
|
+
8,8,0,0,347,348,5,60,0,0,348,350,8,8,0,0,349,346,1,0,0,0,349,347,
|
|
435
|
+
1,0,0,0,350,351,1,0,0,0,351,349,1,0,0,0,351,352,1,0,0,0,352,353,
|
|
436
|
+
1,0,0,0,353,354,6,29,25,0,354,66,1,0,0,0,355,356,5,41,0,0,356,357,
|
|
437
|
+
1,0,0,0,357,358,6,30,26,0,358,359,6,30,1,0,359,68,1,0,0,0,360,361,
|
|
438
|
+
4,31,4,0,361,362,5,58,0,0,362,363,9,0,0,0,363,364,6,31,27,0,364,
|
|
439
|
+
365,1,0,0,0,365,366,6,31,28,0,366,367,6,31,29,0,367,70,1,0,0,0,368,
|
|
440
|
+
370,8,9,0,0,369,368,1,0,0,0,370,371,1,0,0,0,371,369,1,0,0,0,371,
|
|
441
|
+
372,1,0,0,0,372,373,1,0,0,0,373,374,6,32,30,0,374,72,1,0,0,0,375,
|
|
442
|
+
376,5,58,0,0,376,377,1,0,0,0,377,378,6,33,30,0,378,74,1,0,0,0,36,
|
|
443
|
+
0,1,2,3,4,5,6,78,82,87,91,96,98,110,124,138,152,166,180,194,208,
|
|
444
|
+
222,235,237,242,281,292,294,306,311,316,328,336,349,351,371,31,1,
|
|
445
|
+
2,0,2,1,0,1,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,
|
|
446
|
+
7,1,0,2,2,0,2,3,0,2,4,0,7,3,0,2,5,0,7,5,0,7,6,0,2,6,0,7,7,0,7,10,
|
|
447
|
+
0,7,2,0,7,8,0,7,9,0,7,11,0,7,4,0,1,31,9,7,13,0,2,0,0,7,12,0
|
|
400
448
|
];
|
|
401
449
|
|
|
402
450
|
private static __ATN: antlr.ATN;
|