dt-sql-parser 4.5.1-beta.3 → 4.5.2-beta.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/dist/lib/SQLParserBase.d.ts +9 -0
- package/dist/lib/SQLParserBase.js +15 -0
- package/dist/lib/generic/GenericSqlListener.d.ts +11 -0
- package/dist/lib/generic/GenericSqlParser.d.ts +61 -47
- package/dist/lib/generic/GenericSqlParser.js +1047 -949
- package/dist/lib/generic/GenericSqlVisitor.d.ts +7 -0
- package/dist/lib/hive/HiveSqlParser.d.ts +54 -30
- package/dist/lib/hive/HiveSqlParser.js +5633 -5467
- package/dist/lib/hive/HiveSqlParserListener.d.ts +22 -0
- package/dist/lib/hive/HiveSqlParserVisitor.d.ts +14 -0
- package/dist/lib/mysql/MySqlParser.d.ts +34 -9
- package/dist/lib/mysql/MySqlParser.js +5697 -5550
- package/dist/lib/mysql/MySqlParserListener.d.ts +33 -5
- package/dist/lib/mysql/MySqlParserVisitor.d.ts +20 -3
- package/dist/lib/postgresql/PostgreSqlParser.d.ts +200 -166
- package/dist/lib/postgresql/PostgreSqlParser.js +10389 -10136
- package/dist/lib/postgresql/PostgreSqlParserListener.d.ts +31 -5
- package/dist/lib/postgresql/PostgreSqlParserVisitor.d.ts +19 -3
- package/dist/lib/trino/TrinoSqlListener.d.ts +33 -0
- package/dist/lib/trino/TrinoSqlParser.d.ts +157 -115
- package/dist/lib/trino/TrinoSqlParser.js +4775 -4494
- package/dist/lib/trino/TrinoSqlVisitor.d.ts +21 -0
- package/dist/parser/common/basicSQL.d.ts +3 -0
- package/dist/parser/common/basicSQL.js +47 -1
- package/dist/parser/common/entityCollector.d.ts +37 -2
- package/dist/parser/common/entityCollector.js +303 -2
- package/dist/parser/flink/flinkEntityCollector.d.ts +2 -1
- package/dist/parser/flink/flinkEntityCollector.js +4 -0
- package/dist/parser/flink/index.js +1 -1
- package/dist/parser/generic/genericEntityCollector.d.ts +7 -2
- package/dist/parser/generic/genericEntityCollector.js +65 -15
- package/dist/parser/generic/index.js +13 -1
- package/dist/parser/hive/hiveEntityCollector.d.ts +2 -1
- package/dist/parser/hive/hiveEntityCollector.js +5 -0
- package/dist/parser/hive/index.js +1 -1
- package/dist/parser/impala/impalaEntityCollector.d.ts +2 -1
- package/dist/parser/impala/impalaEntityCollector.js +4 -0
- package/dist/parser/impala/index.js +1 -1
- package/dist/parser/mysql/index.js +15 -1
- package/dist/parser/mysql/mysqlEntityCollector.d.ts +3 -1
- package/dist/parser/mysql/mysqlEntityCollector.js +24 -0
- package/dist/parser/postgresql/index.js +3 -2
- package/dist/parser/postgresql/postgreEntityCollector.d.ts +3 -1
- package/dist/parser/postgresql/postgreEntityCollector.js +10 -0
- package/dist/parser/spark/index.js +1 -1
- package/dist/parser/spark/sparkEntityCollector.d.ts +2 -1
- package/dist/parser/spark/sparkEntityCollector.js +5 -0
- package/dist/parser/trino/index.js +4 -2
- package/dist/parser/trino/trinoEntityCollector.d.ts +2 -1
- package/dist/parser/trino/trinoEntityCollector.js +5 -0
- package/package.json +1 -1
|
@@ -22,21 +22,21 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
22
22
|
try {
|
|
23
23
|
this.enterOuterAlt(localContext, 1);
|
|
24
24
|
{
|
|
25
|
-
this.state =
|
|
25
|
+
this.state = 113;
|
|
26
26
|
this.errorHandler.sync(this);
|
|
27
27
|
_la = this.tokenStream.LA(1);
|
|
28
28
|
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 276824196) !== 0) || _la === 32 || _la === 49 || ((((_la - 76)) & ~0x1F) === 0 && ((1 << (_la - 76)) & 270337) !== 0)) {
|
|
29
29
|
{
|
|
30
30
|
{
|
|
31
|
-
this.state =
|
|
31
|
+
this.state = 110;
|
|
32
32
|
this.statements();
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
this.state =
|
|
35
|
+
this.state = 115;
|
|
36
36
|
this.errorHandler.sync(this);
|
|
37
37
|
_la = this.tokenStream.LA(1);
|
|
38
38
|
}
|
|
39
|
-
this.state =
|
|
39
|
+
this.state = 116;
|
|
40
40
|
this.match(GenericSqlParser.EOF);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -61,7 +61,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
61
61
|
try {
|
|
62
62
|
this.enterOuterAlt(localContext, 1);
|
|
63
63
|
{
|
|
64
|
-
this.state =
|
|
64
|
+
this.state = 118;
|
|
65
65
|
this.singleStatement();
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -87,14 +87,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
87
87
|
try {
|
|
88
88
|
this.enterOuterAlt(localContext, 1);
|
|
89
89
|
{
|
|
90
|
-
this.state = 118;
|
|
91
|
-
this.statement();
|
|
92
90
|
this.state = 120;
|
|
91
|
+
this.statement();
|
|
92
|
+
this.state = 122;
|
|
93
93
|
this.errorHandler.sync(this);
|
|
94
94
|
_la = this.tokenStream.LA(1);
|
|
95
95
|
if (_la === 108) {
|
|
96
96
|
{
|
|
97
|
-
this.state =
|
|
97
|
+
this.state = 121;
|
|
98
98
|
this.match(GenericSqlParser.SEMICOLON);
|
|
99
99
|
}
|
|
100
100
|
}
|
|
@@ -119,7 +119,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
119
119
|
let localContext = new StatementContext(this.context, this.state);
|
|
120
120
|
this.enterRule(localContext, 6, GenericSqlParser.RULE_statement);
|
|
121
121
|
try {
|
|
122
|
-
this.state =
|
|
122
|
+
this.state = 131;
|
|
123
123
|
this.errorHandler.sync(this);
|
|
124
124
|
switch (this.tokenStream.LA(1)) {
|
|
125
125
|
case GenericSqlParser.T__1:
|
|
@@ -128,7 +128,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
128
128
|
localContext = new StatementDefaultContext(localContext);
|
|
129
129
|
this.enterOuterAlt(localContext, 1);
|
|
130
130
|
{
|
|
131
|
-
this.state =
|
|
131
|
+
this.state = 124;
|
|
132
132
|
this.queryStatement();
|
|
133
133
|
}
|
|
134
134
|
break;
|
|
@@ -136,7 +136,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
136
136
|
localContext = new InsertContext(localContext);
|
|
137
137
|
this.enterOuterAlt(localContext, 2);
|
|
138
138
|
{
|
|
139
|
-
this.state =
|
|
139
|
+
this.state = 125;
|
|
140
140
|
this.insertStatement();
|
|
141
141
|
}
|
|
142
142
|
break;
|
|
@@ -144,7 +144,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
144
144
|
localContext = new UpdateContext(localContext);
|
|
145
145
|
this.enterOuterAlt(localContext, 3);
|
|
146
146
|
{
|
|
147
|
-
this.state =
|
|
147
|
+
this.state = 126;
|
|
148
148
|
this.updateStatement();
|
|
149
149
|
}
|
|
150
150
|
break;
|
|
@@ -152,7 +152,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
152
152
|
localContext = new DeleteContext(localContext);
|
|
153
153
|
this.enterOuterAlt(localContext, 4);
|
|
154
154
|
{
|
|
155
|
-
this.state =
|
|
155
|
+
this.state = 127;
|
|
156
156
|
this.deleteStatement();
|
|
157
157
|
}
|
|
158
158
|
break;
|
|
@@ -160,7 +160,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
160
160
|
localContext = new CreateTableContext(localContext);
|
|
161
161
|
this.enterOuterAlt(localContext, 5);
|
|
162
162
|
{
|
|
163
|
-
this.state =
|
|
163
|
+
this.state = 128;
|
|
164
164
|
this.createTableStatement();
|
|
165
165
|
}
|
|
166
166
|
break;
|
|
@@ -168,7 +168,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
168
168
|
localContext = new AlterTableContext(localContext);
|
|
169
169
|
this.enterOuterAlt(localContext, 6);
|
|
170
170
|
{
|
|
171
|
-
this.state =
|
|
171
|
+
this.state = 129;
|
|
172
172
|
this.alterTableStatement();
|
|
173
173
|
}
|
|
174
174
|
break;
|
|
@@ -176,7 +176,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
176
176
|
localContext = new DropTableContext(localContext);
|
|
177
177
|
this.enterOuterAlt(localContext, 7);
|
|
178
178
|
{
|
|
179
|
-
this.state =
|
|
179
|
+
this.state = 130;
|
|
180
180
|
this.dropTableStatement();
|
|
181
181
|
}
|
|
182
182
|
break;
|
|
@@ -206,16 +206,16 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
206
206
|
try {
|
|
207
207
|
this.enterOuterAlt(localContext, 1);
|
|
208
208
|
{
|
|
209
|
-
this.state =
|
|
209
|
+
this.state = 134;
|
|
210
210
|
this.errorHandler.sync(this);
|
|
211
211
|
_la = this.tokenStream.LA(1);
|
|
212
212
|
if (_la === 94) {
|
|
213
213
|
{
|
|
214
|
-
this.state =
|
|
214
|
+
this.state = 133;
|
|
215
215
|
this.withClause();
|
|
216
216
|
}
|
|
217
217
|
}
|
|
218
|
-
this.state =
|
|
218
|
+
this.state = 136;
|
|
219
219
|
this.queryNoWith();
|
|
220
220
|
}
|
|
221
221
|
}
|
|
@@ -241,32 +241,32 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
241
241
|
try {
|
|
242
242
|
this.enterOuterAlt(localContext, 1);
|
|
243
243
|
{
|
|
244
|
-
this.state = 136;
|
|
245
|
-
this.match(GenericSqlParser.KW_WITH);
|
|
246
244
|
this.state = 138;
|
|
245
|
+
this.match(GenericSqlParser.KW_WITH);
|
|
246
|
+
this.state = 140;
|
|
247
247
|
this.errorHandler.sync(this);
|
|
248
248
|
_la = this.tokenStream.LA(1);
|
|
249
249
|
if (_la === 72) {
|
|
250
250
|
{
|
|
251
|
-
this.state =
|
|
251
|
+
this.state = 139;
|
|
252
252
|
this.match(GenericSqlParser.KW_RECURSIVE);
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
|
-
this.state =
|
|
255
|
+
this.state = 142;
|
|
256
256
|
this.namedQuery();
|
|
257
|
-
this.state =
|
|
257
|
+
this.state = 147;
|
|
258
258
|
this.errorHandler.sync(this);
|
|
259
259
|
_la = this.tokenStream.LA(1);
|
|
260
260
|
while (_la === 1) {
|
|
261
261
|
{
|
|
262
262
|
{
|
|
263
|
-
this.state =
|
|
263
|
+
this.state = 143;
|
|
264
264
|
this.match(GenericSqlParser.T__0);
|
|
265
|
-
this.state =
|
|
265
|
+
this.state = 144;
|
|
266
266
|
this.namedQuery();
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
|
-
this.state =
|
|
269
|
+
this.state = 149;
|
|
270
270
|
this.errorHandler.sync(this);
|
|
271
271
|
_la = this.tokenStream.LA(1);
|
|
272
272
|
}
|
|
@@ -290,18 +290,74 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
290
290
|
namedQuery() {
|
|
291
291
|
let localContext = new NamedQueryContext(this.context, this.state);
|
|
292
292
|
this.enterRule(localContext, 12, GenericSqlParser.RULE_namedQuery);
|
|
293
|
+
let _la;
|
|
293
294
|
try {
|
|
294
295
|
this.enterOuterAlt(localContext, 1);
|
|
295
296
|
{
|
|
296
|
-
this.state =
|
|
297
|
+
this.state = 150;
|
|
297
298
|
localContext._name = this.identifier();
|
|
298
|
-
this.state =
|
|
299
|
+
this.state = 152;
|
|
300
|
+
this.errorHandler.sync(this);
|
|
301
|
+
_la = this.tokenStream.LA(1);
|
|
302
|
+
if (_la === 2) {
|
|
303
|
+
{
|
|
304
|
+
this.state = 151;
|
|
305
|
+
this.cteColumnList();
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
this.state = 154;
|
|
299
309
|
this.match(GenericSqlParser.KW_AS);
|
|
300
|
-
this.state =
|
|
310
|
+
this.state = 155;
|
|
301
311
|
this.match(GenericSqlParser.T__1);
|
|
302
|
-
this.state =
|
|
312
|
+
this.state = 156;
|
|
303
313
|
this.queryStatement();
|
|
304
|
-
this.state =
|
|
314
|
+
this.state = 157;
|
|
315
|
+
this.match(GenericSqlParser.T__2);
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
catch (re) {
|
|
319
|
+
if (re instanceof antlr.RecognitionException) {
|
|
320
|
+
localContext.exception = re;
|
|
321
|
+
this.errorHandler.reportError(this, re);
|
|
322
|
+
this.errorHandler.recover(this, re);
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
throw re;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
finally {
|
|
329
|
+
this.exitRule();
|
|
330
|
+
}
|
|
331
|
+
return localContext;
|
|
332
|
+
}
|
|
333
|
+
cteColumnList() {
|
|
334
|
+
let localContext = new CteColumnListContext(this.context, this.state);
|
|
335
|
+
this.enterRule(localContext, 14, GenericSqlParser.RULE_cteColumnList);
|
|
336
|
+
let _la;
|
|
337
|
+
try {
|
|
338
|
+
this.enterOuterAlt(localContext, 1);
|
|
339
|
+
{
|
|
340
|
+
this.state = 159;
|
|
341
|
+
this.match(GenericSqlParser.T__1);
|
|
342
|
+
this.state = 160;
|
|
343
|
+
this.identifier();
|
|
344
|
+
this.state = 165;
|
|
345
|
+
this.errorHandler.sync(this);
|
|
346
|
+
_la = this.tokenStream.LA(1);
|
|
347
|
+
while (_la === 1) {
|
|
348
|
+
{
|
|
349
|
+
{
|
|
350
|
+
this.state = 161;
|
|
351
|
+
this.match(GenericSqlParser.T__0);
|
|
352
|
+
this.state = 162;
|
|
353
|
+
this.identifier();
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
this.state = 167;
|
|
357
|
+
this.errorHandler.sync(this);
|
|
358
|
+
_la = this.tokenStream.LA(1);
|
|
359
|
+
}
|
|
360
|
+
this.state = 168;
|
|
305
361
|
this.match(GenericSqlParser.T__2);
|
|
306
362
|
}
|
|
307
363
|
}
|
|
@@ -322,20 +378,20 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
322
378
|
}
|
|
323
379
|
queryNoWith() {
|
|
324
380
|
let localContext = new QueryNoWithContext(this.context, this.state);
|
|
325
|
-
this.enterRule(localContext,
|
|
381
|
+
this.enterRule(localContext, 16, GenericSqlParser.RULE_queryNoWith);
|
|
326
382
|
let _la;
|
|
327
383
|
try {
|
|
328
384
|
this.enterOuterAlt(localContext, 1);
|
|
329
385
|
{
|
|
330
|
-
this.state =
|
|
386
|
+
this.state = 170;
|
|
331
387
|
this.queryTerm();
|
|
332
|
-
this.state =
|
|
388
|
+
this.state = 178;
|
|
333
389
|
this.errorHandler.sync(this);
|
|
334
390
|
_la = this.tokenStream.LA(1);
|
|
335
391
|
while (_la === 36 || _la === 52 || _la === 87) {
|
|
336
392
|
{
|
|
337
393
|
{
|
|
338
|
-
this.state =
|
|
394
|
+
this.state = 171;
|
|
339
395
|
_la = this.tokenStream.LA(1);
|
|
340
396
|
if (!(_la === 36 || _la === 52 || _la === 87)) {
|
|
341
397
|
this.errorHandler.recoverInline(this);
|
|
@@ -344,20 +400,20 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
344
400
|
this.errorHandler.reportMatch(this);
|
|
345
401
|
this.consume();
|
|
346
402
|
}
|
|
347
|
-
this.state =
|
|
403
|
+
this.state = 173;
|
|
348
404
|
this.errorHandler.sync(this);
|
|
349
405
|
_la = this.tokenStream.LA(1);
|
|
350
406
|
if (_la === 6) {
|
|
351
407
|
{
|
|
352
|
-
this.state =
|
|
408
|
+
this.state = 172;
|
|
353
409
|
this.match(GenericSqlParser.KW_ALL);
|
|
354
410
|
}
|
|
355
411
|
}
|
|
356
|
-
this.state =
|
|
412
|
+
this.state = 175;
|
|
357
413
|
this.queryTerm();
|
|
358
414
|
}
|
|
359
415
|
}
|
|
360
|
-
this.state =
|
|
416
|
+
this.state = 180;
|
|
361
417
|
this.errorHandler.sync(this);
|
|
362
418
|
_la = this.tokenStream.LA(1);
|
|
363
419
|
}
|
|
@@ -380,11 +436,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
380
436
|
}
|
|
381
437
|
queryTerm() {
|
|
382
438
|
let localContext = new QueryTermContext(this.context, this.state);
|
|
383
|
-
this.enterRule(localContext,
|
|
439
|
+
this.enterRule(localContext, 18, GenericSqlParser.RULE_queryTerm);
|
|
384
440
|
try {
|
|
385
441
|
this.enterOuterAlt(localContext, 1);
|
|
386
442
|
{
|
|
387
|
-
this.state =
|
|
443
|
+
this.state = 181;
|
|
388
444
|
this.queryPrimary();
|
|
389
445
|
}
|
|
390
446
|
}
|
|
@@ -405,26 +461,26 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
405
461
|
}
|
|
406
462
|
queryPrimary() {
|
|
407
463
|
let localContext = new QueryPrimaryContext(this.context, this.state);
|
|
408
|
-
this.enterRule(localContext,
|
|
464
|
+
this.enterRule(localContext, 20, GenericSqlParser.RULE_queryPrimary);
|
|
409
465
|
try {
|
|
410
|
-
this.state =
|
|
466
|
+
this.state = 188;
|
|
411
467
|
this.errorHandler.sync(this);
|
|
412
468
|
switch (this.tokenStream.LA(1)) {
|
|
413
469
|
case GenericSqlParser.KW_SELECT:
|
|
414
470
|
this.enterOuterAlt(localContext, 1);
|
|
415
471
|
{
|
|
416
|
-
this.state =
|
|
472
|
+
this.state = 183;
|
|
417
473
|
this.querySpecification();
|
|
418
474
|
}
|
|
419
475
|
break;
|
|
420
476
|
case GenericSqlParser.T__1:
|
|
421
477
|
this.enterOuterAlt(localContext, 2);
|
|
422
478
|
{
|
|
423
|
-
this.state =
|
|
479
|
+
this.state = 184;
|
|
424
480
|
this.match(GenericSqlParser.T__1);
|
|
425
|
-
this.state =
|
|
481
|
+
this.state = 185;
|
|
426
482
|
this.queryStatement();
|
|
427
|
-
this.state =
|
|
483
|
+
this.state = 186;
|
|
428
484
|
this.match(GenericSqlParser.T__2);
|
|
429
485
|
}
|
|
430
486
|
break;
|
|
@@ -449,92 +505,92 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
449
505
|
}
|
|
450
506
|
querySpecification() {
|
|
451
507
|
let localContext = new QuerySpecificationContext(this.context, this.state);
|
|
452
|
-
this.enterRule(localContext,
|
|
508
|
+
this.enterRule(localContext, 22, GenericSqlParser.RULE_querySpecification);
|
|
453
509
|
let _la;
|
|
454
510
|
try {
|
|
455
511
|
this.enterOuterAlt(localContext, 1);
|
|
456
512
|
{
|
|
457
|
-
this.state =
|
|
513
|
+
this.state = 190;
|
|
458
514
|
this.match(GenericSqlParser.KW_SELECT);
|
|
459
|
-
this.state =
|
|
515
|
+
this.state = 192;
|
|
460
516
|
this.errorHandler.sync(this);
|
|
461
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
517
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 11, this.context)) {
|
|
462
518
|
case 1:
|
|
463
519
|
{
|
|
464
|
-
this.state =
|
|
520
|
+
this.state = 191;
|
|
465
521
|
this.setQuantifier();
|
|
466
522
|
}
|
|
467
523
|
break;
|
|
468
524
|
}
|
|
469
|
-
this.state =
|
|
525
|
+
this.state = 194;
|
|
470
526
|
this.selectItem();
|
|
471
|
-
this.state =
|
|
527
|
+
this.state = 199;
|
|
472
528
|
this.errorHandler.sync(this);
|
|
473
529
|
_la = this.tokenStream.LA(1);
|
|
474
530
|
while (_la === 1) {
|
|
475
531
|
{
|
|
476
532
|
{
|
|
477
|
-
this.state =
|
|
533
|
+
this.state = 195;
|
|
478
534
|
this.match(GenericSqlParser.T__0);
|
|
479
|
-
this.state =
|
|
535
|
+
this.state = 196;
|
|
480
536
|
this.selectItem();
|
|
481
537
|
}
|
|
482
538
|
}
|
|
483
|
-
this.state =
|
|
539
|
+
this.state = 201;
|
|
484
540
|
this.errorHandler.sync(this);
|
|
485
541
|
_la = this.tokenStream.LA(1);
|
|
486
542
|
}
|
|
487
|
-
this.state =
|
|
543
|
+
this.state = 203;
|
|
488
544
|
this.errorHandler.sync(this);
|
|
489
545
|
_la = this.tokenStream.LA(1);
|
|
490
546
|
if (_la === 42) {
|
|
491
547
|
{
|
|
492
|
-
this.state =
|
|
548
|
+
this.state = 202;
|
|
493
549
|
this.fromClause();
|
|
494
550
|
}
|
|
495
551
|
}
|
|
496
|
-
this.state =
|
|
552
|
+
this.state = 206;
|
|
497
553
|
this.errorHandler.sync(this);
|
|
498
554
|
_la = this.tokenStream.LA(1);
|
|
499
555
|
if (_la === 93) {
|
|
500
556
|
{
|
|
501
|
-
this.state =
|
|
557
|
+
this.state = 205;
|
|
502
558
|
this.whereClause();
|
|
503
559
|
}
|
|
504
560
|
}
|
|
505
|
-
this.state =
|
|
561
|
+
this.state = 209;
|
|
506
562
|
this.errorHandler.sync(this);
|
|
507
563
|
_la = this.tokenStream.LA(1);
|
|
508
564
|
if (_la === 44) {
|
|
509
565
|
{
|
|
510
|
-
this.state =
|
|
566
|
+
this.state = 208;
|
|
511
567
|
this.groupByClause();
|
|
512
568
|
}
|
|
513
569
|
}
|
|
514
|
-
this.state =
|
|
570
|
+
this.state = 212;
|
|
515
571
|
this.errorHandler.sync(this);
|
|
516
572
|
_la = this.tokenStream.LA(1);
|
|
517
573
|
if (_la === 45) {
|
|
518
574
|
{
|
|
519
|
-
this.state =
|
|
575
|
+
this.state = 211;
|
|
520
576
|
this.havingClause();
|
|
521
577
|
}
|
|
522
578
|
}
|
|
523
|
-
this.state =
|
|
579
|
+
this.state = 215;
|
|
524
580
|
this.errorHandler.sync(this);
|
|
525
581
|
_la = this.tokenStream.LA(1);
|
|
526
582
|
if (_la === 69) {
|
|
527
583
|
{
|
|
528
|
-
this.state =
|
|
584
|
+
this.state = 214;
|
|
529
585
|
this.orderByClause();
|
|
530
586
|
}
|
|
531
587
|
}
|
|
532
|
-
this.state =
|
|
588
|
+
this.state = 218;
|
|
533
589
|
this.errorHandler.sync(this);
|
|
534
590
|
_la = this.tokenStream.LA(1);
|
|
535
591
|
if (_la === 60) {
|
|
536
592
|
{
|
|
537
|
-
this.state =
|
|
593
|
+
this.state = 217;
|
|
538
594
|
this.limitClause();
|
|
539
595
|
}
|
|
540
596
|
}
|
|
@@ -557,12 +613,12 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
557
613
|
}
|
|
558
614
|
setQuantifier() {
|
|
559
615
|
let localContext = new SetQuantifierContext(this.context, this.state);
|
|
560
|
-
this.enterRule(localContext,
|
|
616
|
+
this.enterRule(localContext, 24, GenericSqlParser.RULE_setQuantifier);
|
|
561
617
|
let _la;
|
|
562
618
|
try {
|
|
563
619
|
this.enterOuterAlt(localContext, 1);
|
|
564
620
|
{
|
|
565
|
-
this.state =
|
|
621
|
+
this.state = 220;
|
|
566
622
|
_la = this.tokenStream.LA(1);
|
|
567
623
|
if (!(_la === 6 || _la === 30)) {
|
|
568
624
|
this.errorHandler.recoverInline(this);
|
|
@@ -590,33 +646,33 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
590
646
|
}
|
|
591
647
|
selectItem() {
|
|
592
648
|
let localContext = new SelectItemContext(this.context, this.state);
|
|
593
|
-
this.enterRule(localContext,
|
|
649
|
+
this.enterRule(localContext, 26, GenericSqlParser.RULE_selectItem);
|
|
594
650
|
let _la;
|
|
595
651
|
try {
|
|
596
|
-
this.state =
|
|
652
|
+
this.state = 234;
|
|
597
653
|
this.errorHandler.sync(this);
|
|
598
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
654
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 21, this.context)) {
|
|
599
655
|
case 1:
|
|
600
656
|
this.enterOuterAlt(localContext, 1);
|
|
601
657
|
{
|
|
602
|
-
this.state =
|
|
658
|
+
this.state = 222;
|
|
603
659
|
this.expression();
|
|
604
|
-
this.state =
|
|
660
|
+
this.state = 227;
|
|
605
661
|
this.errorHandler.sync(this);
|
|
606
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
662
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 20, this.context)) {
|
|
607
663
|
case 1:
|
|
608
664
|
{
|
|
609
|
-
this.state =
|
|
665
|
+
this.state = 224;
|
|
610
666
|
this.errorHandler.sync(this);
|
|
611
667
|
_la = this.tokenStream.LA(1);
|
|
612
668
|
if (_la === 9) {
|
|
613
669
|
{
|
|
614
|
-
this.state =
|
|
670
|
+
this.state = 223;
|
|
615
671
|
this.match(GenericSqlParser.KW_AS);
|
|
616
672
|
}
|
|
617
673
|
}
|
|
618
|
-
this.state =
|
|
619
|
-
this.identifier();
|
|
674
|
+
this.state = 226;
|
|
675
|
+
localContext._alias = this.identifier();
|
|
620
676
|
}
|
|
621
677
|
break;
|
|
622
678
|
}
|
|
@@ -625,18 +681,18 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
625
681
|
case 2:
|
|
626
682
|
this.enterOuterAlt(localContext, 2);
|
|
627
683
|
{
|
|
628
|
-
this.state =
|
|
684
|
+
this.state = 229;
|
|
629
685
|
this.qualifiedName();
|
|
630
|
-
this.state =
|
|
686
|
+
this.state = 230;
|
|
631
687
|
this.match(GenericSqlParser.T__3);
|
|
632
|
-
this.state =
|
|
688
|
+
this.state = 231;
|
|
633
689
|
this.match(GenericSqlParser.ASTERISK);
|
|
634
690
|
}
|
|
635
691
|
break;
|
|
636
692
|
case 3:
|
|
637
693
|
this.enterOuterAlt(localContext, 3);
|
|
638
694
|
{
|
|
639
|
-
this.state =
|
|
695
|
+
this.state = 233;
|
|
640
696
|
this.match(GenericSqlParser.ASTERISK);
|
|
641
697
|
}
|
|
642
698
|
break;
|
|
@@ -659,28 +715,28 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
659
715
|
}
|
|
660
716
|
fromClause() {
|
|
661
717
|
let localContext = new FromClauseContext(this.context, this.state);
|
|
662
|
-
this.enterRule(localContext,
|
|
718
|
+
this.enterRule(localContext, 28, GenericSqlParser.RULE_fromClause);
|
|
663
719
|
let _la;
|
|
664
720
|
try {
|
|
665
721
|
this.enterOuterAlt(localContext, 1);
|
|
666
722
|
{
|
|
667
|
-
this.state =
|
|
723
|
+
this.state = 236;
|
|
668
724
|
this.match(GenericSqlParser.KW_FROM);
|
|
669
|
-
this.state =
|
|
725
|
+
this.state = 237;
|
|
670
726
|
this.relation(0);
|
|
671
|
-
this.state =
|
|
727
|
+
this.state = 242;
|
|
672
728
|
this.errorHandler.sync(this);
|
|
673
729
|
_la = this.tokenStream.LA(1);
|
|
674
730
|
while (_la === 1) {
|
|
675
731
|
{
|
|
676
732
|
{
|
|
677
|
-
this.state =
|
|
733
|
+
this.state = 238;
|
|
678
734
|
this.match(GenericSqlParser.T__0);
|
|
679
|
-
this.state =
|
|
735
|
+
this.state = 239;
|
|
680
736
|
this.relation(0);
|
|
681
737
|
}
|
|
682
738
|
}
|
|
683
|
-
this.state =
|
|
739
|
+
this.state = 244;
|
|
684
740
|
this.errorHandler.sync(this);
|
|
685
741
|
_la = this.tokenStream.LA(1);
|
|
686
742
|
}
|
|
@@ -709,8 +765,8 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
709
765
|
let parentState = this.state;
|
|
710
766
|
let localContext = new RelationContext(this.context, parentState);
|
|
711
767
|
let previousContext = localContext;
|
|
712
|
-
let _startState =
|
|
713
|
-
this.enterRecursionRule(localContext,
|
|
768
|
+
let _startState = 30;
|
|
769
|
+
this.enterRecursionRule(localContext, 30, GenericSqlParser.RULE_relation, _p);
|
|
714
770
|
try {
|
|
715
771
|
let alternative;
|
|
716
772
|
this.enterOuterAlt(localContext, 1);
|
|
@@ -719,13 +775,13 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
719
775
|
localContext = new SimpleRelationContext(localContext);
|
|
720
776
|
this.context = localContext;
|
|
721
777
|
previousContext = localContext;
|
|
722
|
-
this.state =
|
|
778
|
+
this.state = 246;
|
|
723
779
|
this.aliasedRelation();
|
|
724
780
|
}
|
|
725
781
|
this.context.stop = this.tokenStream.LT(-1);
|
|
726
|
-
this.state =
|
|
782
|
+
this.state = 257;
|
|
727
783
|
this.errorHandler.sync(this);
|
|
728
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
784
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 23, this.context);
|
|
729
785
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
730
786
|
if (alternative === 1) {
|
|
731
787
|
if (this._parseListeners != null) {
|
|
@@ -737,26 +793,26 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
737
793
|
localContext = new JoinRelationContext(new RelationContext(parentContext, parentState));
|
|
738
794
|
localContext._left = previousContext;
|
|
739
795
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_relation);
|
|
740
|
-
this.state =
|
|
796
|
+
this.state = 248;
|
|
741
797
|
if (!(this.precpred(this.context, 2))) {
|
|
742
798
|
throw this.createFailedPredicateException("this.precpred(this.context, 2)");
|
|
743
799
|
}
|
|
744
|
-
this.state =
|
|
800
|
+
this.state = 249;
|
|
745
801
|
this.joinType();
|
|
746
|
-
this.state =
|
|
802
|
+
this.state = 250;
|
|
747
803
|
this.match(GenericSqlParser.KW_JOIN);
|
|
748
|
-
this.state =
|
|
804
|
+
this.state = 251;
|
|
749
805
|
localContext._right = this.relation(0);
|
|
750
|
-
this.state =
|
|
806
|
+
this.state = 252;
|
|
751
807
|
this.match(GenericSqlParser.KW_ON);
|
|
752
|
-
this.state =
|
|
808
|
+
this.state = 253;
|
|
753
809
|
localContext._condition = this.expression();
|
|
754
810
|
}
|
|
755
811
|
}
|
|
756
812
|
}
|
|
757
|
-
this.state =
|
|
813
|
+
this.state = 259;
|
|
758
814
|
this.errorHandler.sync(this);
|
|
759
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
815
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 23, this.context);
|
|
760
816
|
}
|
|
761
817
|
}
|
|
762
818
|
}
|
|
@@ -777,22 +833,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
777
833
|
}
|
|
778
834
|
joinType() {
|
|
779
835
|
let localContext = new JoinTypeContext(this.context, this.state);
|
|
780
|
-
this.enterRule(localContext,
|
|
836
|
+
this.enterRule(localContext, 32, GenericSqlParser.RULE_joinType);
|
|
781
837
|
let _la;
|
|
782
838
|
try {
|
|
783
|
-
this.state =
|
|
839
|
+
this.state = 276;
|
|
784
840
|
this.errorHandler.sync(this);
|
|
785
841
|
switch (this.tokenStream.LA(1)) {
|
|
786
842
|
case GenericSqlParser.KW_INNER:
|
|
787
843
|
case GenericSqlParser.KW_JOIN:
|
|
788
844
|
this.enterOuterAlt(localContext, 1);
|
|
789
845
|
{
|
|
790
|
-
this.state =
|
|
846
|
+
this.state = 261;
|
|
791
847
|
this.errorHandler.sync(this);
|
|
792
848
|
_la = this.tokenStream.LA(1);
|
|
793
849
|
if (_la === 48) {
|
|
794
850
|
{
|
|
795
|
-
this.state =
|
|
851
|
+
this.state = 260;
|
|
796
852
|
this.match(GenericSqlParser.KW_INNER);
|
|
797
853
|
}
|
|
798
854
|
}
|
|
@@ -801,14 +857,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
801
857
|
case GenericSqlParser.KW_LEFT:
|
|
802
858
|
this.enterOuterAlt(localContext, 2);
|
|
803
859
|
{
|
|
804
|
-
this.state =
|
|
860
|
+
this.state = 263;
|
|
805
861
|
this.match(GenericSqlParser.KW_LEFT);
|
|
806
|
-
this.state =
|
|
862
|
+
this.state = 265;
|
|
807
863
|
this.errorHandler.sync(this);
|
|
808
864
|
_la = this.tokenStream.LA(1);
|
|
809
865
|
if (_la === 70) {
|
|
810
866
|
{
|
|
811
|
-
this.state =
|
|
867
|
+
this.state = 264;
|
|
812
868
|
this.match(GenericSqlParser.KW_OUTER);
|
|
813
869
|
}
|
|
814
870
|
}
|
|
@@ -817,14 +873,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
817
873
|
case GenericSqlParser.KW_RIGHT:
|
|
818
874
|
this.enterOuterAlt(localContext, 3);
|
|
819
875
|
{
|
|
820
|
-
this.state =
|
|
876
|
+
this.state = 267;
|
|
821
877
|
this.match(GenericSqlParser.KW_RIGHT);
|
|
822
|
-
this.state =
|
|
878
|
+
this.state = 269;
|
|
823
879
|
this.errorHandler.sync(this);
|
|
824
880
|
_la = this.tokenStream.LA(1);
|
|
825
881
|
if (_la === 70) {
|
|
826
882
|
{
|
|
827
|
-
this.state =
|
|
883
|
+
this.state = 268;
|
|
828
884
|
this.match(GenericSqlParser.KW_OUTER);
|
|
829
885
|
}
|
|
830
886
|
}
|
|
@@ -833,14 +889,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
833
889
|
case GenericSqlParser.KW_FULL:
|
|
834
890
|
this.enterOuterAlt(localContext, 4);
|
|
835
891
|
{
|
|
836
|
-
this.state =
|
|
892
|
+
this.state = 271;
|
|
837
893
|
this.match(GenericSqlParser.KW_FULL);
|
|
838
|
-
this.state =
|
|
894
|
+
this.state = 273;
|
|
839
895
|
this.errorHandler.sync(this);
|
|
840
896
|
_la = this.tokenStream.LA(1);
|
|
841
897
|
if (_la === 70) {
|
|
842
898
|
{
|
|
843
|
-
this.state =
|
|
899
|
+
this.state = 272;
|
|
844
900
|
this.match(GenericSqlParser.KW_OUTER);
|
|
845
901
|
}
|
|
846
902
|
}
|
|
@@ -849,7 +905,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
849
905
|
case GenericSqlParser.KW_CROSS:
|
|
850
906
|
this.enterOuterAlt(localContext, 5);
|
|
851
907
|
{
|
|
852
|
-
this.state =
|
|
908
|
+
this.state = 275;
|
|
853
909
|
this.match(GenericSqlParser.KW_CROSS);
|
|
854
910
|
}
|
|
855
911
|
break;
|
|
@@ -874,29 +930,29 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
874
930
|
}
|
|
875
931
|
aliasedRelation() {
|
|
876
932
|
let localContext = new AliasedRelationContext(this.context, this.state);
|
|
877
|
-
this.enterRule(localContext,
|
|
933
|
+
this.enterRule(localContext, 34, GenericSqlParser.RULE_aliasedRelation);
|
|
878
934
|
let _la;
|
|
879
935
|
try {
|
|
880
936
|
this.enterOuterAlt(localContext, 1);
|
|
881
937
|
{
|
|
882
|
-
this.state =
|
|
938
|
+
this.state = 278;
|
|
883
939
|
this.relationPrimary();
|
|
884
|
-
this.state =
|
|
940
|
+
this.state = 283;
|
|
885
941
|
this.errorHandler.sync(this);
|
|
886
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
942
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 30, this.context)) {
|
|
887
943
|
case 1:
|
|
888
944
|
{
|
|
889
|
-
this.state =
|
|
945
|
+
this.state = 280;
|
|
890
946
|
this.errorHandler.sync(this);
|
|
891
947
|
_la = this.tokenStream.LA(1);
|
|
892
948
|
if (_la === 9) {
|
|
893
949
|
{
|
|
894
|
-
this.state =
|
|
950
|
+
this.state = 279;
|
|
895
951
|
this.match(GenericSqlParser.KW_AS);
|
|
896
952
|
}
|
|
897
953
|
}
|
|
898
|
-
this.state =
|
|
899
|
-
this.identifier();
|
|
954
|
+
this.state = 282;
|
|
955
|
+
localContext._alias = this.identifier();
|
|
900
956
|
}
|
|
901
957
|
break;
|
|
902
958
|
}
|
|
@@ -919,9 +975,9 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
919
975
|
}
|
|
920
976
|
relationPrimary() {
|
|
921
977
|
let localContext = new RelationPrimaryContext(this.context, this.state);
|
|
922
|
-
this.enterRule(localContext,
|
|
978
|
+
this.enterRule(localContext, 36, GenericSqlParser.RULE_relationPrimary);
|
|
923
979
|
try {
|
|
924
|
-
this.state =
|
|
980
|
+
this.state = 290;
|
|
925
981
|
this.errorHandler.sync(this);
|
|
926
982
|
switch (this.tokenStream.LA(1)) {
|
|
927
983
|
case GenericSqlParser.KW_ADD:
|
|
@@ -974,7 +1030,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
974
1030
|
localContext = new TableNameRelationContext(localContext);
|
|
975
1031
|
this.enterOuterAlt(localContext, 1);
|
|
976
1032
|
{
|
|
977
|
-
this.state =
|
|
1033
|
+
this.state = 285;
|
|
978
1034
|
this.tableName();
|
|
979
1035
|
}
|
|
980
1036
|
break;
|
|
@@ -982,11 +1038,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
982
1038
|
localContext = new SubqueryRelationContext(localContext);
|
|
983
1039
|
this.enterOuterAlt(localContext, 2);
|
|
984
1040
|
{
|
|
985
|
-
this.state =
|
|
1041
|
+
this.state = 286;
|
|
986
1042
|
this.match(GenericSqlParser.T__1);
|
|
987
|
-
this.state =
|
|
1043
|
+
this.state = 287;
|
|
988
1044
|
this.queryStatement();
|
|
989
|
-
this.state =
|
|
1045
|
+
this.state = 288;
|
|
990
1046
|
this.match(GenericSqlParser.T__2);
|
|
991
1047
|
}
|
|
992
1048
|
break;
|
|
@@ -1011,13 +1067,13 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1011
1067
|
}
|
|
1012
1068
|
whereClause() {
|
|
1013
1069
|
let localContext = new WhereClauseContext(this.context, this.state);
|
|
1014
|
-
this.enterRule(localContext,
|
|
1070
|
+
this.enterRule(localContext, 38, GenericSqlParser.RULE_whereClause);
|
|
1015
1071
|
try {
|
|
1016
1072
|
this.enterOuterAlt(localContext, 1);
|
|
1017
1073
|
{
|
|
1018
|
-
this.state =
|
|
1074
|
+
this.state = 292;
|
|
1019
1075
|
this.match(GenericSqlParser.KW_WHERE);
|
|
1020
|
-
this.state =
|
|
1076
|
+
this.state = 293;
|
|
1021
1077
|
this.expression();
|
|
1022
1078
|
}
|
|
1023
1079
|
}
|
|
@@ -1038,40 +1094,40 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1038
1094
|
}
|
|
1039
1095
|
groupByClause() {
|
|
1040
1096
|
let localContext = new GroupByClauseContext(this.context, this.state);
|
|
1041
|
-
this.enterRule(localContext,
|
|
1097
|
+
this.enterRule(localContext, 40, GenericSqlParser.RULE_groupByClause);
|
|
1042
1098
|
let _la;
|
|
1043
1099
|
try {
|
|
1044
1100
|
this.enterOuterAlt(localContext, 1);
|
|
1045
1101
|
{
|
|
1046
|
-
this.state =
|
|
1102
|
+
this.state = 295;
|
|
1047
1103
|
this.match(GenericSqlParser.KW_GROUP);
|
|
1048
|
-
this.state =
|
|
1104
|
+
this.state = 296;
|
|
1049
1105
|
this.match(GenericSqlParser.KW_BY);
|
|
1050
|
-
this.state =
|
|
1106
|
+
this.state = 298;
|
|
1051
1107
|
this.errorHandler.sync(this);
|
|
1052
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1108
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 32, this.context)) {
|
|
1053
1109
|
case 1:
|
|
1054
1110
|
{
|
|
1055
|
-
this.state =
|
|
1111
|
+
this.state = 297;
|
|
1056
1112
|
this.setQuantifier();
|
|
1057
1113
|
}
|
|
1058
1114
|
break;
|
|
1059
1115
|
}
|
|
1060
|
-
this.state =
|
|
1116
|
+
this.state = 300;
|
|
1061
1117
|
this.expression();
|
|
1062
|
-
this.state =
|
|
1118
|
+
this.state = 305;
|
|
1063
1119
|
this.errorHandler.sync(this);
|
|
1064
1120
|
_la = this.tokenStream.LA(1);
|
|
1065
1121
|
while (_la === 1) {
|
|
1066
1122
|
{
|
|
1067
1123
|
{
|
|
1068
|
-
this.state =
|
|
1124
|
+
this.state = 301;
|
|
1069
1125
|
this.match(GenericSqlParser.T__0);
|
|
1070
|
-
this.state =
|
|
1126
|
+
this.state = 302;
|
|
1071
1127
|
this.expression();
|
|
1072
1128
|
}
|
|
1073
1129
|
}
|
|
1074
|
-
this.state =
|
|
1130
|
+
this.state = 307;
|
|
1075
1131
|
this.errorHandler.sync(this);
|
|
1076
1132
|
_la = this.tokenStream.LA(1);
|
|
1077
1133
|
}
|
|
@@ -1094,13 +1150,13 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1094
1150
|
}
|
|
1095
1151
|
havingClause() {
|
|
1096
1152
|
let localContext = new HavingClauseContext(this.context, this.state);
|
|
1097
|
-
this.enterRule(localContext,
|
|
1153
|
+
this.enterRule(localContext, 42, GenericSqlParser.RULE_havingClause);
|
|
1098
1154
|
try {
|
|
1099
1155
|
this.enterOuterAlt(localContext, 1);
|
|
1100
1156
|
{
|
|
1101
|
-
this.state =
|
|
1157
|
+
this.state = 308;
|
|
1102
1158
|
this.match(GenericSqlParser.KW_HAVING);
|
|
1103
|
-
this.state =
|
|
1159
|
+
this.state = 309;
|
|
1104
1160
|
this.expression();
|
|
1105
1161
|
}
|
|
1106
1162
|
}
|
|
@@ -1121,30 +1177,30 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1121
1177
|
}
|
|
1122
1178
|
orderByClause() {
|
|
1123
1179
|
let localContext = new OrderByClauseContext(this.context, this.state);
|
|
1124
|
-
this.enterRule(localContext,
|
|
1180
|
+
this.enterRule(localContext, 44, GenericSqlParser.RULE_orderByClause);
|
|
1125
1181
|
let _la;
|
|
1126
1182
|
try {
|
|
1127
1183
|
this.enterOuterAlt(localContext, 1);
|
|
1128
1184
|
{
|
|
1129
|
-
this.state =
|
|
1185
|
+
this.state = 311;
|
|
1130
1186
|
this.match(GenericSqlParser.KW_ORDER);
|
|
1131
|
-
this.state =
|
|
1187
|
+
this.state = 312;
|
|
1132
1188
|
this.match(GenericSqlParser.KW_BY);
|
|
1133
|
-
this.state =
|
|
1189
|
+
this.state = 313;
|
|
1134
1190
|
this.sortItem();
|
|
1135
|
-
this.state =
|
|
1191
|
+
this.state = 318;
|
|
1136
1192
|
this.errorHandler.sync(this);
|
|
1137
1193
|
_la = this.tokenStream.LA(1);
|
|
1138
1194
|
while (_la === 1) {
|
|
1139
1195
|
{
|
|
1140
1196
|
{
|
|
1141
|
-
this.state =
|
|
1197
|
+
this.state = 314;
|
|
1142
1198
|
this.match(GenericSqlParser.T__0);
|
|
1143
|
-
this.state =
|
|
1199
|
+
this.state = 315;
|
|
1144
1200
|
this.sortItem();
|
|
1145
1201
|
}
|
|
1146
1202
|
}
|
|
1147
|
-
this.state =
|
|
1203
|
+
this.state = 320;
|
|
1148
1204
|
this.errorHandler.sync(this);
|
|
1149
1205
|
_la = this.tokenStream.LA(1);
|
|
1150
1206
|
}
|
|
@@ -1167,19 +1223,19 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1167
1223
|
}
|
|
1168
1224
|
sortItem() {
|
|
1169
1225
|
let localContext = new SortItemContext(this.context, this.state);
|
|
1170
|
-
this.enterRule(localContext,
|
|
1226
|
+
this.enterRule(localContext, 46, GenericSqlParser.RULE_sortItem);
|
|
1171
1227
|
let _la;
|
|
1172
1228
|
try {
|
|
1173
1229
|
this.enterOuterAlt(localContext, 1);
|
|
1174
1230
|
{
|
|
1175
|
-
this.state =
|
|
1231
|
+
this.state = 321;
|
|
1176
1232
|
this.expression();
|
|
1177
|
-
this.state =
|
|
1233
|
+
this.state = 323;
|
|
1178
1234
|
this.errorHandler.sync(this);
|
|
1179
1235
|
_la = this.tokenStream.LA(1);
|
|
1180
1236
|
if (_la === 10 || _la === 29) {
|
|
1181
1237
|
{
|
|
1182
|
-
this.state =
|
|
1238
|
+
this.state = 322;
|
|
1183
1239
|
localContext._ordering = this.tokenStream.LT(1);
|
|
1184
1240
|
_la = this.tokenStream.LA(1);
|
|
1185
1241
|
if (!(_la === 10 || _la === 29)) {
|
|
@@ -1191,14 +1247,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1191
1247
|
}
|
|
1192
1248
|
}
|
|
1193
1249
|
}
|
|
1194
|
-
this.state =
|
|
1250
|
+
this.state = 327;
|
|
1195
1251
|
this.errorHandler.sync(this);
|
|
1196
1252
|
_la = this.tokenStream.LA(1);
|
|
1197
1253
|
if (_la === 64) {
|
|
1198
1254
|
{
|
|
1199
|
-
this.state =
|
|
1255
|
+
this.state = 325;
|
|
1200
1256
|
this.match(GenericSqlParser.KW_NULLS);
|
|
1201
|
-
this.state =
|
|
1257
|
+
this.state = 326;
|
|
1202
1258
|
localContext._nullOrdering = this.tokenStream.LT(1);
|
|
1203
1259
|
_la = this.tokenStream.LA(1);
|
|
1204
1260
|
if (!(_la === 39 || _la === 57)) {
|
|
@@ -1229,23 +1285,23 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1229
1285
|
}
|
|
1230
1286
|
limitClause() {
|
|
1231
1287
|
let localContext = new LimitClauseContext(this.context, this.state);
|
|
1232
|
-
this.enterRule(localContext,
|
|
1288
|
+
this.enterRule(localContext, 48, GenericSqlParser.RULE_limitClause);
|
|
1233
1289
|
let _la;
|
|
1234
1290
|
try {
|
|
1235
1291
|
this.enterOuterAlt(localContext, 1);
|
|
1236
1292
|
{
|
|
1237
|
-
this.state =
|
|
1293
|
+
this.state = 329;
|
|
1238
1294
|
this.match(GenericSqlParser.KW_LIMIT);
|
|
1239
|
-
this.state =
|
|
1295
|
+
this.state = 330;
|
|
1240
1296
|
localContext._limit = this.expression();
|
|
1241
|
-
this.state =
|
|
1297
|
+
this.state = 333;
|
|
1242
1298
|
this.errorHandler.sync(this);
|
|
1243
1299
|
_la = this.tokenStream.LA(1);
|
|
1244
1300
|
if (_la === 66) {
|
|
1245
1301
|
{
|
|
1246
|
-
this.state =
|
|
1302
|
+
this.state = 331;
|
|
1247
1303
|
this.match(GenericSqlParser.KW_OFFSET);
|
|
1248
|
-
this.state =
|
|
1304
|
+
this.state = 332;
|
|
1249
1305
|
localContext._offset = this.expression();
|
|
1250
1306
|
}
|
|
1251
1307
|
}
|
|
@@ -1268,27 +1324,27 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1268
1324
|
}
|
|
1269
1325
|
insertStatement() {
|
|
1270
1326
|
let localContext = new InsertStatementContext(this.context, this.state);
|
|
1271
|
-
this.enterRule(localContext,
|
|
1327
|
+
this.enterRule(localContext, 50, GenericSqlParser.RULE_insertStatement);
|
|
1272
1328
|
try {
|
|
1273
1329
|
this.enterOuterAlt(localContext, 1);
|
|
1274
1330
|
{
|
|
1275
|
-
this.state =
|
|
1331
|
+
this.state = 335;
|
|
1276
1332
|
this.match(GenericSqlParser.KW_INSERT);
|
|
1277
|
-
this.state =
|
|
1333
|
+
this.state = 336;
|
|
1278
1334
|
this.match(GenericSqlParser.KW_INTO);
|
|
1279
|
-
this.state =
|
|
1335
|
+
this.state = 337;
|
|
1280
1336
|
this.tableName();
|
|
1281
|
-
this.state =
|
|
1337
|
+
this.state = 339;
|
|
1282
1338
|
this.errorHandler.sync(this);
|
|
1283
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1339
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 38, this.context)) {
|
|
1284
1340
|
case 1:
|
|
1285
1341
|
{
|
|
1286
|
-
this.state =
|
|
1342
|
+
this.state = 338;
|
|
1287
1343
|
this.columnList();
|
|
1288
1344
|
}
|
|
1289
1345
|
break;
|
|
1290
1346
|
}
|
|
1291
|
-
this.state =
|
|
1347
|
+
this.state = 341;
|
|
1292
1348
|
this.queryStatement();
|
|
1293
1349
|
}
|
|
1294
1350
|
}
|
|
@@ -1309,32 +1365,32 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1309
1365
|
}
|
|
1310
1366
|
columnList() {
|
|
1311
1367
|
let localContext = new ColumnListContext(this.context, this.state);
|
|
1312
|
-
this.enterRule(localContext,
|
|
1368
|
+
this.enterRule(localContext, 52, GenericSqlParser.RULE_columnList);
|
|
1313
1369
|
let _la;
|
|
1314
1370
|
try {
|
|
1315
1371
|
this.enterOuterAlt(localContext, 1);
|
|
1316
1372
|
{
|
|
1317
|
-
this.state =
|
|
1373
|
+
this.state = 343;
|
|
1318
1374
|
this.match(GenericSqlParser.T__1);
|
|
1319
|
-
this.state =
|
|
1375
|
+
this.state = 344;
|
|
1320
1376
|
this.columnRef();
|
|
1321
|
-
this.state =
|
|
1377
|
+
this.state = 349;
|
|
1322
1378
|
this.errorHandler.sync(this);
|
|
1323
1379
|
_la = this.tokenStream.LA(1);
|
|
1324
1380
|
while (_la === 1) {
|
|
1325
1381
|
{
|
|
1326
1382
|
{
|
|
1327
|
-
this.state =
|
|
1383
|
+
this.state = 345;
|
|
1328
1384
|
this.match(GenericSqlParser.T__0);
|
|
1329
|
-
this.state =
|
|
1385
|
+
this.state = 346;
|
|
1330
1386
|
this.columnRef();
|
|
1331
1387
|
}
|
|
1332
1388
|
}
|
|
1333
|
-
this.state =
|
|
1389
|
+
this.state = 351;
|
|
1334
1390
|
this.errorHandler.sync(this);
|
|
1335
1391
|
_la = this.tokenStream.LA(1);
|
|
1336
1392
|
}
|
|
1337
|
-
this.state =
|
|
1393
|
+
this.state = 352;
|
|
1338
1394
|
this.match(GenericSqlParser.T__2);
|
|
1339
1395
|
}
|
|
1340
1396
|
}
|
|
@@ -1355,41 +1411,41 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1355
1411
|
}
|
|
1356
1412
|
updateStatement() {
|
|
1357
1413
|
let localContext = new UpdateStatementContext(this.context, this.state);
|
|
1358
|
-
this.enterRule(localContext,
|
|
1414
|
+
this.enterRule(localContext, 54, GenericSqlParser.RULE_updateStatement);
|
|
1359
1415
|
let _la;
|
|
1360
1416
|
try {
|
|
1361
1417
|
this.enterOuterAlt(localContext, 1);
|
|
1362
1418
|
{
|
|
1363
|
-
this.state =
|
|
1419
|
+
this.state = 354;
|
|
1364
1420
|
this.match(GenericSqlParser.KW_UPDATE);
|
|
1365
|
-
this.state =
|
|
1421
|
+
this.state = 355;
|
|
1366
1422
|
this.tableName();
|
|
1367
|
-
this.state =
|
|
1423
|
+
this.state = 356;
|
|
1368
1424
|
this.match(GenericSqlParser.KW_SET);
|
|
1369
|
-
this.state =
|
|
1425
|
+
this.state = 357;
|
|
1370
1426
|
this.updateAssignment();
|
|
1371
|
-
this.state =
|
|
1427
|
+
this.state = 362;
|
|
1372
1428
|
this.errorHandler.sync(this);
|
|
1373
1429
|
_la = this.tokenStream.LA(1);
|
|
1374
1430
|
while (_la === 1) {
|
|
1375
1431
|
{
|
|
1376
1432
|
{
|
|
1377
|
-
this.state =
|
|
1433
|
+
this.state = 358;
|
|
1378
1434
|
this.match(GenericSqlParser.T__0);
|
|
1379
|
-
this.state =
|
|
1435
|
+
this.state = 359;
|
|
1380
1436
|
this.updateAssignment();
|
|
1381
1437
|
}
|
|
1382
1438
|
}
|
|
1383
|
-
this.state =
|
|
1439
|
+
this.state = 364;
|
|
1384
1440
|
this.errorHandler.sync(this);
|
|
1385
1441
|
_la = this.tokenStream.LA(1);
|
|
1386
1442
|
}
|
|
1387
|
-
this.state =
|
|
1443
|
+
this.state = 366;
|
|
1388
1444
|
this.errorHandler.sync(this);
|
|
1389
1445
|
_la = this.tokenStream.LA(1);
|
|
1390
1446
|
if (_la === 93) {
|
|
1391
1447
|
{
|
|
1392
|
-
this.state =
|
|
1448
|
+
this.state = 365;
|
|
1393
1449
|
this.whereClause();
|
|
1394
1450
|
}
|
|
1395
1451
|
}
|
|
@@ -1412,15 +1468,15 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1412
1468
|
}
|
|
1413
1469
|
updateAssignment() {
|
|
1414
1470
|
let localContext = new UpdateAssignmentContext(this.context, this.state);
|
|
1415
|
-
this.enterRule(localContext,
|
|
1471
|
+
this.enterRule(localContext, 56, GenericSqlParser.RULE_updateAssignment);
|
|
1416
1472
|
try {
|
|
1417
1473
|
this.enterOuterAlt(localContext, 1);
|
|
1418
1474
|
{
|
|
1419
|
-
this.state =
|
|
1475
|
+
this.state = 368;
|
|
1420
1476
|
this.columnRef();
|
|
1421
|
-
this.state =
|
|
1477
|
+
this.state = 369;
|
|
1422
1478
|
this.match(GenericSqlParser.EQ);
|
|
1423
|
-
this.state =
|
|
1479
|
+
this.state = 370;
|
|
1424
1480
|
this.expression();
|
|
1425
1481
|
}
|
|
1426
1482
|
}
|
|
@@ -1441,23 +1497,23 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1441
1497
|
}
|
|
1442
1498
|
deleteStatement() {
|
|
1443
1499
|
let localContext = new DeleteStatementContext(this.context, this.state);
|
|
1444
|
-
this.enterRule(localContext,
|
|
1500
|
+
this.enterRule(localContext, 58, GenericSqlParser.RULE_deleteStatement);
|
|
1445
1501
|
let _la;
|
|
1446
1502
|
try {
|
|
1447
1503
|
this.enterOuterAlt(localContext, 1);
|
|
1448
1504
|
{
|
|
1449
|
-
this.state =
|
|
1505
|
+
this.state = 372;
|
|
1450
1506
|
this.match(GenericSqlParser.KW_DELETE);
|
|
1451
|
-
this.state =
|
|
1507
|
+
this.state = 373;
|
|
1452
1508
|
this.match(GenericSqlParser.KW_FROM);
|
|
1453
|
-
this.state =
|
|
1509
|
+
this.state = 374;
|
|
1454
1510
|
this.tableName();
|
|
1455
|
-
this.state =
|
|
1511
|
+
this.state = 376;
|
|
1456
1512
|
this.errorHandler.sync(this);
|
|
1457
1513
|
_la = this.tokenStream.LA(1);
|
|
1458
1514
|
if (_la === 93) {
|
|
1459
1515
|
{
|
|
1460
|
-
this.state =
|
|
1516
|
+
this.state = 375;
|
|
1461
1517
|
this.whereClause();
|
|
1462
1518
|
}
|
|
1463
1519
|
}
|
|
@@ -1480,61 +1536,61 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1480
1536
|
}
|
|
1481
1537
|
createTableStatement() {
|
|
1482
1538
|
let localContext = new CreateTableStatementContext(this.context, this.state);
|
|
1483
|
-
this.enterRule(localContext,
|
|
1539
|
+
this.enterRule(localContext, 60, GenericSqlParser.RULE_createTableStatement);
|
|
1484
1540
|
let _la;
|
|
1485
1541
|
try {
|
|
1486
1542
|
this.enterOuterAlt(localContext, 1);
|
|
1487
1543
|
{
|
|
1488
|
-
this.state =
|
|
1544
|
+
this.state = 378;
|
|
1489
1545
|
this.match(GenericSqlParser.KW_CREATE);
|
|
1490
|
-
this.state =
|
|
1546
|
+
this.state = 379;
|
|
1491
1547
|
this.match(GenericSqlParser.KW_TABLE);
|
|
1492
|
-
this.state =
|
|
1548
|
+
this.state = 383;
|
|
1493
1549
|
this.errorHandler.sync(this);
|
|
1494
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1550
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 43, this.context)) {
|
|
1495
1551
|
case 1:
|
|
1496
1552
|
{
|
|
1497
|
-
this.state =
|
|
1553
|
+
this.state = 380;
|
|
1498
1554
|
this.match(GenericSqlParser.KW_IF);
|
|
1499
|
-
this.state =
|
|
1555
|
+
this.state = 381;
|
|
1500
1556
|
this.match(GenericSqlParser.KW_NOT);
|
|
1501
|
-
this.state =
|
|
1557
|
+
this.state = 382;
|
|
1502
1558
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
1503
1559
|
}
|
|
1504
1560
|
break;
|
|
1505
1561
|
}
|
|
1506
|
-
this.state =
|
|
1562
|
+
this.state = 385;
|
|
1507
1563
|
this.tableNameCreate();
|
|
1508
|
-
this.state =
|
|
1564
|
+
this.state = 386;
|
|
1509
1565
|
this.match(GenericSqlParser.T__1);
|
|
1510
|
-
this.state =
|
|
1566
|
+
this.state = 387;
|
|
1511
1567
|
this.tableElement();
|
|
1512
|
-
this.state =
|
|
1568
|
+
this.state = 392;
|
|
1513
1569
|
this.errorHandler.sync(this);
|
|
1514
1570
|
_la = this.tokenStream.LA(1);
|
|
1515
1571
|
while (_la === 1) {
|
|
1516
1572
|
{
|
|
1517
1573
|
{
|
|
1518
|
-
this.state =
|
|
1574
|
+
this.state = 388;
|
|
1519
1575
|
this.match(GenericSqlParser.T__0);
|
|
1520
|
-
this.state =
|
|
1576
|
+
this.state = 389;
|
|
1521
1577
|
this.tableElement();
|
|
1522
1578
|
}
|
|
1523
1579
|
}
|
|
1524
|
-
this.state =
|
|
1580
|
+
this.state = 394;
|
|
1525
1581
|
this.errorHandler.sync(this);
|
|
1526
1582
|
_la = this.tokenStream.LA(1);
|
|
1527
1583
|
}
|
|
1528
|
-
this.state =
|
|
1584
|
+
this.state = 395;
|
|
1529
1585
|
this.match(GenericSqlParser.T__2);
|
|
1530
|
-
this.state =
|
|
1586
|
+
this.state = 398;
|
|
1531
1587
|
this.errorHandler.sync(this);
|
|
1532
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1588
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 45, this.context)) {
|
|
1533
1589
|
case 1:
|
|
1534
1590
|
{
|
|
1535
|
-
this.state =
|
|
1591
|
+
this.state = 396;
|
|
1536
1592
|
this.match(GenericSqlParser.KW_WITH);
|
|
1537
|
-
this.state =
|
|
1593
|
+
this.state = 397;
|
|
1538
1594
|
this.properties();
|
|
1539
1595
|
}
|
|
1540
1596
|
break;
|
|
@@ -1558,22 +1614,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1558
1614
|
}
|
|
1559
1615
|
tableElement() {
|
|
1560
1616
|
let localContext = new TableElementContext(this.context, this.state);
|
|
1561
|
-
this.enterRule(localContext,
|
|
1617
|
+
this.enterRule(localContext, 62, GenericSqlParser.RULE_tableElement);
|
|
1562
1618
|
try {
|
|
1563
|
-
this.state =
|
|
1619
|
+
this.state = 402;
|
|
1564
1620
|
this.errorHandler.sync(this);
|
|
1565
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1621
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 46, this.context)) {
|
|
1566
1622
|
case 1:
|
|
1567
1623
|
this.enterOuterAlt(localContext, 1);
|
|
1568
1624
|
{
|
|
1569
|
-
this.state =
|
|
1625
|
+
this.state = 400;
|
|
1570
1626
|
this.columnDefinition();
|
|
1571
1627
|
}
|
|
1572
1628
|
break;
|
|
1573
1629
|
case 2:
|
|
1574
1630
|
this.enterOuterAlt(localContext, 2);
|
|
1575
1631
|
{
|
|
1576
|
-
this.state =
|
|
1632
|
+
this.state = 401;
|
|
1577
1633
|
this.tableConstraint();
|
|
1578
1634
|
}
|
|
1579
1635
|
break;
|
|
@@ -1596,45 +1652,45 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1596
1652
|
}
|
|
1597
1653
|
columnDefinition() {
|
|
1598
1654
|
let localContext = new ColumnDefinitionContext(this.context, this.state);
|
|
1599
|
-
this.enterRule(localContext,
|
|
1655
|
+
this.enterRule(localContext, 64, GenericSqlParser.RULE_columnDefinition);
|
|
1600
1656
|
let _la;
|
|
1601
1657
|
try {
|
|
1602
1658
|
this.enterOuterAlt(localContext, 1);
|
|
1603
1659
|
{
|
|
1604
|
-
this.state =
|
|
1660
|
+
this.state = 404;
|
|
1605
1661
|
this.columnRef();
|
|
1606
|
-
this.state =
|
|
1662
|
+
this.state = 405;
|
|
1607
1663
|
this.dataType();
|
|
1608
|
-
this.state =
|
|
1664
|
+
this.state = 408;
|
|
1609
1665
|
this.errorHandler.sync(this);
|
|
1610
1666
|
_la = this.tokenStream.LA(1);
|
|
1611
1667
|
if (_la === 61) {
|
|
1612
1668
|
{
|
|
1613
|
-
this.state =
|
|
1669
|
+
this.state = 406;
|
|
1614
1670
|
this.match(GenericSqlParser.KW_NOT);
|
|
1615
|
-
this.state =
|
|
1671
|
+
this.state = 407;
|
|
1616
1672
|
this.match(GenericSqlParser.KW_NULL);
|
|
1617
1673
|
}
|
|
1618
1674
|
}
|
|
1619
|
-
this.state =
|
|
1675
|
+
this.state = 412;
|
|
1620
1676
|
this.errorHandler.sync(this);
|
|
1621
1677
|
_la = this.tokenStream.LA(1);
|
|
1622
1678
|
if (_la === 27) {
|
|
1623
1679
|
{
|
|
1624
|
-
this.state =
|
|
1680
|
+
this.state = 410;
|
|
1625
1681
|
this.match(GenericSqlParser.KW_DEFAULT);
|
|
1626
|
-
this.state =
|
|
1682
|
+
this.state = 411;
|
|
1627
1683
|
this.expression();
|
|
1628
1684
|
}
|
|
1629
1685
|
}
|
|
1630
|
-
this.state =
|
|
1686
|
+
this.state = 416;
|
|
1631
1687
|
this.errorHandler.sync(this);
|
|
1632
1688
|
_la = this.tokenStream.LA(1);
|
|
1633
1689
|
if (_la === 71) {
|
|
1634
1690
|
{
|
|
1635
|
-
this.state =
|
|
1691
|
+
this.state = 414;
|
|
1636
1692
|
this.match(GenericSqlParser.KW_PRIMARY);
|
|
1637
|
-
this.state =
|
|
1693
|
+
this.state = 415;
|
|
1638
1694
|
this.match(GenericSqlParser.KW_KEY);
|
|
1639
1695
|
}
|
|
1640
1696
|
}
|
|
@@ -1657,148 +1713,148 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1657
1713
|
}
|
|
1658
1714
|
tableConstraint() {
|
|
1659
1715
|
let localContext = new TableConstraintContext(this.context, this.state);
|
|
1660
|
-
this.enterRule(localContext,
|
|
1716
|
+
this.enterRule(localContext, 66, GenericSqlParser.RULE_tableConstraint);
|
|
1661
1717
|
let _la;
|
|
1662
1718
|
try {
|
|
1663
1719
|
this.enterOuterAlt(localContext, 1);
|
|
1664
1720
|
{
|
|
1665
|
-
this.state =
|
|
1721
|
+
this.state = 420;
|
|
1666
1722
|
this.errorHandler.sync(this);
|
|
1667
1723
|
_la = this.tokenStream.LA(1);
|
|
1668
1724
|
if (_la === 22) {
|
|
1669
1725
|
{
|
|
1670
|
-
this.state =
|
|
1726
|
+
this.state = 418;
|
|
1671
1727
|
this.match(GenericSqlParser.KW_CONSTRAINT);
|
|
1672
|
-
this.state =
|
|
1728
|
+
this.state = 419;
|
|
1673
1729
|
this.identifier();
|
|
1674
1730
|
}
|
|
1675
1731
|
}
|
|
1676
|
-
this.state =
|
|
1732
|
+
this.state = 477;
|
|
1677
1733
|
this.errorHandler.sync(this);
|
|
1678
1734
|
switch (this.tokenStream.LA(1)) {
|
|
1679
1735
|
case GenericSqlParser.KW_PRIMARY:
|
|
1680
1736
|
{
|
|
1681
|
-
this.state =
|
|
1737
|
+
this.state = 422;
|
|
1682
1738
|
this.match(GenericSqlParser.KW_PRIMARY);
|
|
1683
|
-
this.state =
|
|
1739
|
+
this.state = 423;
|
|
1684
1740
|
this.match(GenericSqlParser.KW_KEY);
|
|
1685
|
-
this.state =
|
|
1741
|
+
this.state = 424;
|
|
1686
1742
|
this.match(GenericSqlParser.T__1);
|
|
1687
|
-
this.state =
|
|
1743
|
+
this.state = 425;
|
|
1688
1744
|
this.columnRef();
|
|
1689
|
-
this.state =
|
|
1745
|
+
this.state = 430;
|
|
1690
1746
|
this.errorHandler.sync(this);
|
|
1691
1747
|
_la = this.tokenStream.LA(1);
|
|
1692
1748
|
while (_la === 1) {
|
|
1693
1749
|
{
|
|
1694
1750
|
{
|
|
1695
|
-
this.state =
|
|
1751
|
+
this.state = 426;
|
|
1696
1752
|
this.match(GenericSqlParser.T__0);
|
|
1697
|
-
this.state =
|
|
1753
|
+
this.state = 427;
|
|
1698
1754
|
this.columnRef();
|
|
1699
1755
|
}
|
|
1700
1756
|
}
|
|
1701
|
-
this.state =
|
|
1757
|
+
this.state = 432;
|
|
1702
1758
|
this.errorHandler.sync(this);
|
|
1703
1759
|
_la = this.tokenStream.LA(1);
|
|
1704
1760
|
}
|
|
1705
|
-
this.state =
|
|
1761
|
+
this.state = 433;
|
|
1706
1762
|
this.match(GenericSqlParser.T__2);
|
|
1707
1763
|
}
|
|
1708
1764
|
break;
|
|
1709
1765
|
case GenericSqlParser.KW_UNIQUE:
|
|
1710
1766
|
{
|
|
1711
|
-
this.state =
|
|
1767
|
+
this.state = 435;
|
|
1712
1768
|
this.match(GenericSqlParser.KW_UNIQUE);
|
|
1713
|
-
this.state =
|
|
1769
|
+
this.state = 436;
|
|
1714
1770
|
this.match(GenericSqlParser.T__1);
|
|
1715
|
-
this.state =
|
|
1771
|
+
this.state = 437;
|
|
1716
1772
|
this.columnRef();
|
|
1717
|
-
this.state =
|
|
1773
|
+
this.state = 442;
|
|
1718
1774
|
this.errorHandler.sync(this);
|
|
1719
1775
|
_la = this.tokenStream.LA(1);
|
|
1720
1776
|
while (_la === 1) {
|
|
1721
1777
|
{
|
|
1722
1778
|
{
|
|
1723
|
-
this.state =
|
|
1779
|
+
this.state = 438;
|
|
1724
1780
|
this.match(GenericSqlParser.T__0);
|
|
1725
|
-
this.state =
|
|
1781
|
+
this.state = 439;
|
|
1726
1782
|
this.columnRef();
|
|
1727
1783
|
}
|
|
1728
1784
|
}
|
|
1729
|
-
this.state =
|
|
1785
|
+
this.state = 444;
|
|
1730
1786
|
this.errorHandler.sync(this);
|
|
1731
1787
|
_la = this.tokenStream.LA(1);
|
|
1732
1788
|
}
|
|
1733
|
-
this.state =
|
|
1789
|
+
this.state = 445;
|
|
1734
1790
|
this.match(GenericSqlParser.T__2);
|
|
1735
1791
|
}
|
|
1736
1792
|
break;
|
|
1737
1793
|
case GenericSqlParser.KW_CHECK:
|
|
1738
1794
|
{
|
|
1739
|
-
this.state =
|
|
1795
|
+
this.state = 447;
|
|
1740
1796
|
this.match(GenericSqlParser.KW_CHECK);
|
|
1741
|
-
this.state =
|
|
1797
|
+
this.state = 448;
|
|
1742
1798
|
this.match(GenericSqlParser.T__1);
|
|
1743
|
-
this.state =
|
|
1799
|
+
this.state = 449;
|
|
1744
1800
|
this.expression();
|
|
1745
|
-
this.state =
|
|
1801
|
+
this.state = 450;
|
|
1746
1802
|
this.match(GenericSqlParser.T__2);
|
|
1747
1803
|
}
|
|
1748
1804
|
break;
|
|
1749
1805
|
case GenericSqlParser.KW_FOREIGN:
|
|
1750
1806
|
{
|
|
1751
|
-
this.state =
|
|
1807
|
+
this.state = 452;
|
|
1752
1808
|
this.match(GenericSqlParser.KW_FOREIGN);
|
|
1753
|
-
this.state =
|
|
1809
|
+
this.state = 453;
|
|
1754
1810
|
this.match(GenericSqlParser.KW_KEY);
|
|
1755
|
-
this.state =
|
|
1811
|
+
this.state = 454;
|
|
1756
1812
|
this.match(GenericSqlParser.T__1);
|
|
1757
|
-
this.state =
|
|
1813
|
+
this.state = 455;
|
|
1758
1814
|
this.columnRef();
|
|
1759
|
-
this.state =
|
|
1815
|
+
this.state = 460;
|
|
1760
1816
|
this.errorHandler.sync(this);
|
|
1761
1817
|
_la = this.tokenStream.LA(1);
|
|
1762
1818
|
while (_la === 1) {
|
|
1763
1819
|
{
|
|
1764
1820
|
{
|
|
1765
|
-
this.state =
|
|
1821
|
+
this.state = 456;
|
|
1766
1822
|
this.match(GenericSqlParser.T__0);
|
|
1767
|
-
this.state =
|
|
1823
|
+
this.state = 457;
|
|
1768
1824
|
this.columnRef();
|
|
1769
1825
|
}
|
|
1770
1826
|
}
|
|
1771
|
-
this.state =
|
|
1827
|
+
this.state = 462;
|
|
1772
1828
|
this.errorHandler.sync(this);
|
|
1773
1829
|
_la = this.tokenStream.LA(1);
|
|
1774
1830
|
}
|
|
1775
|
-
this.state =
|
|
1831
|
+
this.state = 463;
|
|
1776
1832
|
this.match(GenericSqlParser.T__2);
|
|
1777
|
-
this.state =
|
|
1833
|
+
this.state = 464;
|
|
1778
1834
|
this.match(GenericSqlParser.KW_REFERENCES);
|
|
1779
|
-
this.state =
|
|
1835
|
+
this.state = 465;
|
|
1780
1836
|
this.tableName();
|
|
1781
|
-
this.state =
|
|
1837
|
+
this.state = 466;
|
|
1782
1838
|
this.match(GenericSqlParser.T__1);
|
|
1783
|
-
this.state =
|
|
1839
|
+
this.state = 467;
|
|
1784
1840
|
this.columnRef();
|
|
1785
|
-
this.state =
|
|
1841
|
+
this.state = 472;
|
|
1786
1842
|
this.errorHandler.sync(this);
|
|
1787
1843
|
_la = this.tokenStream.LA(1);
|
|
1788
1844
|
while (_la === 1) {
|
|
1789
1845
|
{
|
|
1790
1846
|
{
|
|
1791
|
-
this.state =
|
|
1847
|
+
this.state = 468;
|
|
1792
1848
|
this.match(GenericSqlParser.T__0);
|
|
1793
|
-
this.state =
|
|
1849
|
+
this.state = 469;
|
|
1794
1850
|
this.columnRef();
|
|
1795
1851
|
}
|
|
1796
1852
|
}
|
|
1797
|
-
this.state =
|
|
1853
|
+
this.state = 474;
|
|
1798
1854
|
this.errorHandler.sync(this);
|
|
1799
1855
|
_la = this.tokenStream.LA(1);
|
|
1800
1856
|
}
|
|
1801
|
-
this.state =
|
|
1857
|
+
this.state = 475;
|
|
1802
1858
|
this.match(GenericSqlParser.T__2);
|
|
1803
1859
|
}
|
|
1804
1860
|
break;
|
|
@@ -1824,114 +1880,114 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1824
1880
|
}
|
|
1825
1881
|
alterTableStatement() {
|
|
1826
1882
|
let localContext = new AlterTableStatementContext(this.context, this.state);
|
|
1827
|
-
this.enterRule(localContext,
|
|
1883
|
+
this.enterRule(localContext, 68, GenericSqlParser.RULE_alterTableStatement);
|
|
1828
1884
|
try {
|
|
1829
1885
|
this.enterOuterAlt(localContext, 1);
|
|
1830
1886
|
{
|
|
1831
|
-
this.state =
|
|
1887
|
+
this.state = 479;
|
|
1832
1888
|
this.match(GenericSqlParser.KW_ALTER);
|
|
1833
|
-
this.state =
|
|
1889
|
+
this.state = 480;
|
|
1834
1890
|
this.match(GenericSqlParser.KW_TABLE);
|
|
1835
|
-
this.state =
|
|
1891
|
+
this.state = 483;
|
|
1836
1892
|
this.errorHandler.sync(this);
|
|
1837
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1893
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 56, this.context)) {
|
|
1838
1894
|
case 1:
|
|
1839
1895
|
{
|
|
1840
|
-
this.state =
|
|
1896
|
+
this.state = 481;
|
|
1841
1897
|
this.match(GenericSqlParser.KW_IF);
|
|
1842
|
-
this.state =
|
|
1898
|
+
this.state = 482;
|
|
1843
1899
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
1844
1900
|
}
|
|
1845
1901
|
break;
|
|
1846
1902
|
}
|
|
1847
|
-
this.state =
|
|
1903
|
+
this.state = 485;
|
|
1848
1904
|
this.tableName();
|
|
1849
|
-
this.state =
|
|
1905
|
+
this.state = 517;
|
|
1850
1906
|
this.errorHandler.sync(this);
|
|
1851
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1907
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 59, this.context)) {
|
|
1852
1908
|
case 1:
|
|
1853
1909
|
{
|
|
1854
|
-
this.state =
|
|
1910
|
+
this.state = 486;
|
|
1855
1911
|
this.match(GenericSqlParser.KW_ADD);
|
|
1856
|
-
this.state =
|
|
1912
|
+
this.state = 487;
|
|
1857
1913
|
this.match(GenericSqlParser.KW_COLUMN);
|
|
1858
|
-
this.state =
|
|
1914
|
+
this.state = 491;
|
|
1859
1915
|
this.errorHandler.sync(this);
|
|
1860
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1916
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 57, this.context)) {
|
|
1861
1917
|
case 1:
|
|
1862
1918
|
{
|
|
1863
|
-
this.state =
|
|
1919
|
+
this.state = 488;
|
|
1864
1920
|
this.match(GenericSqlParser.KW_IF);
|
|
1865
|
-
this.state =
|
|
1921
|
+
this.state = 489;
|
|
1866
1922
|
this.match(GenericSqlParser.KW_NOT);
|
|
1867
|
-
this.state =
|
|
1923
|
+
this.state = 490;
|
|
1868
1924
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
1869
1925
|
}
|
|
1870
1926
|
break;
|
|
1871
1927
|
}
|
|
1872
|
-
this.state =
|
|
1928
|
+
this.state = 493;
|
|
1873
1929
|
this.columnDefinition();
|
|
1874
1930
|
}
|
|
1875
1931
|
break;
|
|
1876
1932
|
case 2:
|
|
1877
1933
|
{
|
|
1878
|
-
this.state =
|
|
1934
|
+
this.state = 494;
|
|
1879
1935
|
this.match(GenericSqlParser.KW_DROP);
|
|
1880
|
-
this.state =
|
|
1936
|
+
this.state = 495;
|
|
1881
1937
|
this.match(GenericSqlParser.KW_COLUMN);
|
|
1882
|
-
this.state =
|
|
1938
|
+
this.state = 498;
|
|
1883
1939
|
this.errorHandler.sync(this);
|
|
1884
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1940
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 58, this.context)) {
|
|
1885
1941
|
case 1:
|
|
1886
1942
|
{
|
|
1887
|
-
this.state =
|
|
1943
|
+
this.state = 496;
|
|
1888
1944
|
this.match(GenericSqlParser.KW_IF);
|
|
1889
|
-
this.state =
|
|
1945
|
+
this.state = 497;
|
|
1890
1946
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
1891
1947
|
}
|
|
1892
1948
|
break;
|
|
1893
1949
|
}
|
|
1894
|
-
this.state =
|
|
1950
|
+
this.state = 500;
|
|
1895
1951
|
this.columnRef();
|
|
1896
1952
|
}
|
|
1897
1953
|
break;
|
|
1898
1954
|
case 3:
|
|
1899
1955
|
{
|
|
1900
|
-
this.state =
|
|
1956
|
+
this.state = 501;
|
|
1901
1957
|
this.match(GenericSqlParser.KW_RENAME);
|
|
1902
|
-
this.state =
|
|
1958
|
+
this.state = 502;
|
|
1903
1959
|
this.match(GenericSqlParser.KW_TO);
|
|
1904
|
-
this.state =
|
|
1960
|
+
this.state = 503;
|
|
1905
1961
|
this.tableNameCreate();
|
|
1906
1962
|
}
|
|
1907
1963
|
break;
|
|
1908
1964
|
case 4:
|
|
1909
1965
|
{
|
|
1910
|
-
this.state =
|
|
1966
|
+
this.state = 504;
|
|
1911
1967
|
this.match(GenericSqlParser.KW_ALTER);
|
|
1912
|
-
this.state =
|
|
1968
|
+
this.state = 505;
|
|
1913
1969
|
this.match(GenericSqlParser.KW_COLUMN);
|
|
1914
|
-
this.state =
|
|
1970
|
+
this.state = 506;
|
|
1915
1971
|
this.columnRef();
|
|
1916
|
-
this.state =
|
|
1972
|
+
this.state = 507;
|
|
1917
1973
|
this.match(GenericSqlParser.KW_SET);
|
|
1918
|
-
this.state =
|
|
1974
|
+
this.state = 508;
|
|
1919
1975
|
this.match(GenericSqlParser.KW_DEFAULT);
|
|
1920
|
-
this.state =
|
|
1976
|
+
this.state = 509;
|
|
1921
1977
|
this.expression();
|
|
1922
1978
|
}
|
|
1923
1979
|
break;
|
|
1924
1980
|
case 5:
|
|
1925
1981
|
{
|
|
1926
|
-
this.state =
|
|
1982
|
+
this.state = 511;
|
|
1927
1983
|
this.match(GenericSqlParser.KW_ALTER);
|
|
1928
|
-
this.state =
|
|
1984
|
+
this.state = 512;
|
|
1929
1985
|
this.match(GenericSqlParser.KW_COLUMN);
|
|
1930
|
-
this.state =
|
|
1986
|
+
this.state = 513;
|
|
1931
1987
|
this.columnRef();
|
|
1932
|
-
this.state =
|
|
1988
|
+
this.state = 514;
|
|
1933
1989
|
this.match(GenericSqlParser.KW_DROP);
|
|
1934
|
-
this.state =
|
|
1990
|
+
this.state = 515;
|
|
1935
1991
|
this.match(GenericSqlParser.KW_DEFAULT);
|
|
1936
1992
|
}
|
|
1937
1993
|
break;
|
|
@@ -1955,27 +2011,27 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1955
2011
|
}
|
|
1956
2012
|
dropTableStatement() {
|
|
1957
2013
|
let localContext = new DropTableStatementContext(this.context, this.state);
|
|
1958
|
-
this.enterRule(localContext,
|
|
2014
|
+
this.enterRule(localContext, 70, GenericSqlParser.RULE_dropTableStatement);
|
|
1959
2015
|
try {
|
|
1960
2016
|
this.enterOuterAlt(localContext, 1);
|
|
1961
2017
|
{
|
|
1962
|
-
this.state =
|
|
2018
|
+
this.state = 519;
|
|
1963
2019
|
this.match(GenericSqlParser.KW_DROP);
|
|
1964
|
-
this.state =
|
|
2020
|
+
this.state = 520;
|
|
1965
2021
|
this.match(GenericSqlParser.KW_TABLE);
|
|
1966
|
-
this.state =
|
|
2022
|
+
this.state = 523;
|
|
1967
2023
|
this.errorHandler.sync(this);
|
|
1968
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2024
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 60, this.context)) {
|
|
1969
2025
|
case 1:
|
|
1970
2026
|
{
|
|
1971
|
-
this.state =
|
|
2027
|
+
this.state = 521;
|
|
1972
2028
|
this.match(GenericSqlParser.KW_IF);
|
|
1973
|
-
this.state =
|
|
2029
|
+
this.state = 522;
|
|
1974
2030
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
1975
2031
|
}
|
|
1976
2032
|
break;
|
|
1977
2033
|
}
|
|
1978
|
-
this.state =
|
|
2034
|
+
this.state = 525;
|
|
1979
2035
|
this.tableName();
|
|
1980
2036
|
}
|
|
1981
2037
|
}
|
|
@@ -1996,11 +2052,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
1996
2052
|
}
|
|
1997
2053
|
expression() {
|
|
1998
2054
|
let localContext = new ExpressionContext(this.context, this.state);
|
|
1999
|
-
this.enterRule(localContext,
|
|
2055
|
+
this.enterRule(localContext, 72, GenericSqlParser.RULE_expression);
|
|
2000
2056
|
try {
|
|
2001
2057
|
this.enterOuterAlt(localContext, 1);
|
|
2002
2058
|
{
|
|
2003
|
-
this.state =
|
|
2059
|
+
this.state = 527;
|
|
2004
2060
|
this.booleanExpression(0);
|
|
2005
2061
|
}
|
|
2006
2062
|
}
|
|
@@ -2027,13 +2083,13 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2027
2083
|
let parentState = this.state;
|
|
2028
2084
|
let localContext = new BooleanExpressionContext(this.context, parentState);
|
|
2029
2085
|
let previousContext = localContext;
|
|
2030
|
-
let _startState =
|
|
2031
|
-
this.enterRecursionRule(localContext,
|
|
2086
|
+
let _startState = 74;
|
|
2087
|
+
this.enterRecursionRule(localContext, 74, GenericSqlParser.RULE_booleanExpression, _p);
|
|
2032
2088
|
try {
|
|
2033
2089
|
let alternative;
|
|
2034
2090
|
this.enterOuterAlt(localContext, 1);
|
|
2035
2091
|
{
|
|
2036
|
-
this.state =
|
|
2092
|
+
this.state = 533;
|
|
2037
2093
|
this.errorHandler.sync(this);
|
|
2038
2094
|
switch (this.tokenStream.LA(1)) {
|
|
2039
2095
|
case GenericSqlParser.T__1:
|
|
@@ -2099,7 +2155,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2099
2155
|
localContext = new PredicatedContext(localContext);
|
|
2100
2156
|
this.context = localContext;
|
|
2101
2157
|
previousContext = localContext;
|
|
2102
|
-
this.state =
|
|
2158
|
+
this.state = 530;
|
|
2103
2159
|
this.predicatedExpression();
|
|
2104
2160
|
}
|
|
2105
2161
|
break;
|
|
@@ -2108,9 +2164,9 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2108
2164
|
localContext = new NotExpressionContext(localContext);
|
|
2109
2165
|
this.context = localContext;
|
|
2110
2166
|
previousContext = localContext;
|
|
2111
|
-
this.state =
|
|
2167
|
+
this.state = 531;
|
|
2112
2168
|
this.match(GenericSqlParser.KW_NOT);
|
|
2113
|
-
this.state =
|
|
2169
|
+
this.state = 532;
|
|
2114
2170
|
this.booleanExpression(3);
|
|
2115
2171
|
}
|
|
2116
2172
|
break;
|
|
@@ -2118,9 +2174,9 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2118
2174
|
throw new antlr.NoViableAltException(this);
|
|
2119
2175
|
}
|
|
2120
2176
|
this.context.stop = this.tokenStream.LT(-1);
|
|
2121
|
-
this.state =
|
|
2177
|
+
this.state = 543;
|
|
2122
2178
|
this.errorHandler.sync(this);
|
|
2123
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2179
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 63, this.context);
|
|
2124
2180
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2125
2181
|
if (alternative === 1) {
|
|
2126
2182
|
if (this._parseListeners != null) {
|
|
@@ -2128,21 +2184,21 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2128
2184
|
}
|
|
2129
2185
|
previousContext = localContext;
|
|
2130
2186
|
{
|
|
2131
|
-
this.state =
|
|
2187
|
+
this.state = 541;
|
|
2132
2188
|
this.errorHandler.sync(this);
|
|
2133
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2189
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 62, this.context)) {
|
|
2134
2190
|
case 1:
|
|
2135
2191
|
{
|
|
2136
2192
|
localContext = new AndExpressionContext(new BooleanExpressionContext(parentContext, parentState));
|
|
2137
2193
|
localContext._left = previousContext;
|
|
2138
2194
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_booleanExpression);
|
|
2139
|
-
this.state =
|
|
2195
|
+
this.state = 535;
|
|
2140
2196
|
if (!(this.precpred(this.context, 2))) {
|
|
2141
2197
|
throw this.createFailedPredicateException("this.precpred(this.context, 2)");
|
|
2142
2198
|
}
|
|
2143
|
-
this.state =
|
|
2199
|
+
this.state = 536;
|
|
2144
2200
|
this.match(GenericSqlParser.KW_AND);
|
|
2145
|
-
this.state =
|
|
2201
|
+
this.state = 537;
|
|
2146
2202
|
localContext._right = this.booleanExpression(3);
|
|
2147
2203
|
}
|
|
2148
2204
|
break;
|
|
@@ -2151,22 +2207,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2151
2207
|
localContext = new OrExpressionContext(new BooleanExpressionContext(parentContext, parentState));
|
|
2152
2208
|
localContext._left = previousContext;
|
|
2153
2209
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_booleanExpression);
|
|
2154
|
-
this.state =
|
|
2210
|
+
this.state = 538;
|
|
2155
2211
|
if (!(this.precpred(this.context, 1))) {
|
|
2156
2212
|
throw this.createFailedPredicateException("this.precpred(this.context, 1)");
|
|
2157
2213
|
}
|
|
2158
|
-
this.state =
|
|
2214
|
+
this.state = 539;
|
|
2159
2215
|
this.match(GenericSqlParser.KW_OR);
|
|
2160
|
-
this.state =
|
|
2216
|
+
this.state = 540;
|
|
2161
2217
|
localContext._right = this.booleanExpression(2);
|
|
2162
2218
|
}
|
|
2163
2219
|
break;
|
|
2164
2220
|
}
|
|
2165
2221
|
}
|
|
2166
2222
|
}
|
|
2167
|
-
this.state =
|
|
2223
|
+
this.state = 545;
|
|
2168
2224
|
this.errorHandler.sync(this);
|
|
2169
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2225
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 63, this.context);
|
|
2170
2226
|
}
|
|
2171
2227
|
}
|
|
2172
2228
|
}
|
|
@@ -2187,18 +2243,18 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2187
2243
|
}
|
|
2188
2244
|
predicatedExpression() {
|
|
2189
2245
|
let localContext = new PredicatedExpressionContext(this.context, this.state);
|
|
2190
|
-
this.enterRule(localContext,
|
|
2246
|
+
this.enterRule(localContext, 76, GenericSqlParser.RULE_predicatedExpression);
|
|
2191
2247
|
try {
|
|
2192
2248
|
this.enterOuterAlt(localContext, 1);
|
|
2193
2249
|
{
|
|
2194
|
-
this.state =
|
|
2250
|
+
this.state = 546;
|
|
2195
2251
|
this.valueExpression(0);
|
|
2196
|
-
this.state =
|
|
2252
|
+
this.state = 548;
|
|
2197
2253
|
this.errorHandler.sync(this);
|
|
2198
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2254
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 64, this.context)) {
|
|
2199
2255
|
case 1:
|
|
2200
2256
|
{
|
|
2201
|
-
this.state =
|
|
2257
|
+
this.state = 547;
|
|
2202
2258
|
this.predicate();
|
|
2203
2259
|
}
|
|
2204
2260
|
break;
|
|
@@ -2222,19 +2278,19 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2222
2278
|
}
|
|
2223
2279
|
predicate() {
|
|
2224
2280
|
let localContext = new PredicateContext(this.context, this.state);
|
|
2225
|
-
this.enterRule(localContext,
|
|
2281
|
+
this.enterRule(localContext, 78, GenericSqlParser.RULE_predicate);
|
|
2226
2282
|
let _la;
|
|
2227
2283
|
try {
|
|
2228
|
-
this.state =
|
|
2284
|
+
this.state = 605;
|
|
2229
2285
|
this.errorHandler.sync(this);
|
|
2230
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2286
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 73, this.context)) {
|
|
2231
2287
|
case 1:
|
|
2232
2288
|
localContext = new ComparisonPredicateContext(localContext);
|
|
2233
2289
|
this.enterOuterAlt(localContext, 1);
|
|
2234
2290
|
{
|
|
2235
|
-
this.state =
|
|
2291
|
+
this.state = 550;
|
|
2236
2292
|
this.comparisonOperator();
|
|
2237
|
-
this.state =
|
|
2293
|
+
this.state = 551;
|
|
2238
2294
|
localContext._right = this.valueExpression(0);
|
|
2239
2295
|
}
|
|
2240
2296
|
break;
|
|
@@ -2242,38 +2298,38 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2242
2298
|
localContext = new InPredicateContext(localContext);
|
|
2243
2299
|
this.enterOuterAlt(localContext, 2);
|
|
2244
2300
|
{
|
|
2245
|
-
this.state =
|
|
2301
|
+
this.state = 554;
|
|
2246
2302
|
this.errorHandler.sync(this);
|
|
2247
2303
|
_la = this.tokenStream.LA(1);
|
|
2248
2304
|
if (_la === 61) {
|
|
2249
2305
|
{
|
|
2250
|
-
this.state =
|
|
2306
|
+
this.state = 553;
|
|
2251
2307
|
this.match(GenericSqlParser.KW_NOT);
|
|
2252
2308
|
}
|
|
2253
2309
|
}
|
|
2254
|
-
this.state =
|
|
2310
|
+
this.state = 556;
|
|
2255
2311
|
this.match(GenericSqlParser.KW_IN);
|
|
2256
|
-
this.state =
|
|
2312
|
+
this.state = 557;
|
|
2257
2313
|
this.match(GenericSqlParser.T__1);
|
|
2258
|
-
this.state =
|
|
2314
|
+
this.state = 558;
|
|
2259
2315
|
this.expression();
|
|
2260
|
-
this.state =
|
|
2316
|
+
this.state = 563;
|
|
2261
2317
|
this.errorHandler.sync(this);
|
|
2262
2318
|
_la = this.tokenStream.LA(1);
|
|
2263
2319
|
while (_la === 1) {
|
|
2264
2320
|
{
|
|
2265
2321
|
{
|
|
2266
|
-
this.state =
|
|
2322
|
+
this.state = 559;
|
|
2267
2323
|
this.match(GenericSqlParser.T__0);
|
|
2268
|
-
this.state =
|
|
2324
|
+
this.state = 560;
|
|
2269
2325
|
this.expression();
|
|
2270
2326
|
}
|
|
2271
2327
|
}
|
|
2272
|
-
this.state =
|
|
2328
|
+
this.state = 565;
|
|
2273
2329
|
this.errorHandler.sync(this);
|
|
2274
2330
|
_la = this.tokenStream.LA(1);
|
|
2275
2331
|
}
|
|
2276
|
-
this.state =
|
|
2332
|
+
this.state = 566;
|
|
2277
2333
|
this.match(GenericSqlParser.T__2);
|
|
2278
2334
|
}
|
|
2279
2335
|
break;
|
|
@@ -2281,22 +2337,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2281
2337
|
localContext = new InSubqueryPredicateContext(localContext);
|
|
2282
2338
|
this.enterOuterAlt(localContext, 3);
|
|
2283
2339
|
{
|
|
2284
|
-
this.state =
|
|
2340
|
+
this.state = 569;
|
|
2285
2341
|
this.errorHandler.sync(this);
|
|
2286
2342
|
_la = this.tokenStream.LA(1);
|
|
2287
2343
|
if (_la === 61) {
|
|
2288
2344
|
{
|
|
2289
|
-
this.state =
|
|
2345
|
+
this.state = 568;
|
|
2290
2346
|
this.match(GenericSqlParser.KW_NOT);
|
|
2291
2347
|
}
|
|
2292
2348
|
}
|
|
2293
|
-
this.state =
|
|
2349
|
+
this.state = 571;
|
|
2294
2350
|
this.match(GenericSqlParser.KW_IN);
|
|
2295
|
-
this.state =
|
|
2351
|
+
this.state = 572;
|
|
2296
2352
|
this.match(GenericSqlParser.T__1);
|
|
2297
|
-
this.state =
|
|
2353
|
+
this.state = 573;
|
|
2298
2354
|
this.queryStatement();
|
|
2299
|
-
this.state =
|
|
2355
|
+
this.state = 574;
|
|
2300
2356
|
this.match(GenericSqlParser.T__2);
|
|
2301
2357
|
}
|
|
2302
2358
|
break;
|
|
@@ -2304,22 +2360,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2304
2360
|
localContext = new BetweenPredicateContext(localContext);
|
|
2305
2361
|
this.enterOuterAlt(localContext, 4);
|
|
2306
2362
|
{
|
|
2307
|
-
this.state =
|
|
2363
|
+
this.state = 577;
|
|
2308
2364
|
this.errorHandler.sync(this);
|
|
2309
2365
|
_la = this.tokenStream.LA(1);
|
|
2310
2366
|
if (_la === 61) {
|
|
2311
2367
|
{
|
|
2312
|
-
this.state =
|
|
2368
|
+
this.state = 576;
|
|
2313
2369
|
this.match(GenericSqlParser.KW_NOT);
|
|
2314
2370
|
}
|
|
2315
2371
|
}
|
|
2316
|
-
this.state =
|
|
2372
|
+
this.state = 579;
|
|
2317
2373
|
this.match(GenericSqlParser.KW_BETWEEN);
|
|
2318
|
-
this.state =
|
|
2374
|
+
this.state = 580;
|
|
2319
2375
|
localContext._lower = this.valueExpression(0);
|
|
2320
|
-
this.state =
|
|
2376
|
+
this.state = 581;
|
|
2321
2377
|
this.match(GenericSqlParser.KW_AND);
|
|
2322
|
-
this.state =
|
|
2378
|
+
this.state = 582;
|
|
2323
2379
|
localContext._upper = this.valueExpression(0);
|
|
2324
2380
|
}
|
|
2325
2381
|
break;
|
|
@@ -2327,27 +2383,27 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2327
2383
|
localContext = new LikePredicateContext(localContext);
|
|
2328
2384
|
this.enterOuterAlt(localContext, 5);
|
|
2329
2385
|
{
|
|
2330
|
-
this.state =
|
|
2386
|
+
this.state = 585;
|
|
2331
2387
|
this.errorHandler.sync(this);
|
|
2332
2388
|
_la = this.tokenStream.LA(1);
|
|
2333
2389
|
if (_la === 61) {
|
|
2334
2390
|
{
|
|
2335
|
-
this.state =
|
|
2391
|
+
this.state = 584;
|
|
2336
2392
|
this.match(GenericSqlParser.KW_NOT);
|
|
2337
2393
|
}
|
|
2338
2394
|
}
|
|
2339
|
-
this.state =
|
|
2395
|
+
this.state = 587;
|
|
2340
2396
|
this.match(GenericSqlParser.KW_LIKE);
|
|
2341
|
-
this.state =
|
|
2397
|
+
this.state = 588;
|
|
2342
2398
|
localContext._pattern = this.valueExpression(0);
|
|
2343
|
-
this.state =
|
|
2399
|
+
this.state = 591;
|
|
2344
2400
|
this.errorHandler.sync(this);
|
|
2345
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2401
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 70, this.context)) {
|
|
2346
2402
|
case 1:
|
|
2347
2403
|
{
|
|
2348
|
-
this.state =
|
|
2404
|
+
this.state = 589;
|
|
2349
2405
|
this.match(GenericSqlParser.KW_ESCAPE);
|
|
2350
|
-
this.state =
|
|
2406
|
+
this.state = 590;
|
|
2351
2407
|
localContext._escape = this.valueExpression(0);
|
|
2352
2408
|
}
|
|
2353
2409
|
break;
|
|
@@ -2358,18 +2414,18 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2358
2414
|
localContext = new NullPredicateContext(localContext);
|
|
2359
2415
|
this.enterOuterAlt(localContext, 6);
|
|
2360
2416
|
{
|
|
2361
|
-
this.state =
|
|
2417
|
+
this.state = 593;
|
|
2362
2418
|
this.match(GenericSqlParser.KW_IS);
|
|
2363
|
-
this.state =
|
|
2419
|
+
this.state = 595;
|
|
2364
2420
|
this.errorHandler.sync(this);
|
|
2365
2421
|
_la = this.tokenStream.LA(1);
|
|
2366
2422
|
if (_la === 61) {
|
|
2367
2423
|
{
|
|
2368
|
-
this.state =
|
|
2424
|
+
this.state = 594;
|
|
2369
2425
|
this.match(GenericSqlParser.KW_NOT);
|
|
2370
2426
|
}
|
|
2371
2427
|
}
|
|
2372
|
-
this.state =
|
|
2428
|
+
this.state = 597;
|
|
2373
2429
|
this.match(GenericSqlParser.KW_NULL);
|
|
2374
2430
|
}
|
|
2375
2431
|
break;
|
|
@@ -2377,22 +2433,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2377
2433
|
localContext = new DistinctFromPredicateContext(localContext);
|
|
2378
2434
|
this.enterOuterAlt(localContext, 7);
|
|
2379
2435
|
{
|
|
2380
|
-
this.state =
|
|
2436
|
+
this.state = 598;
|
|
2381
2437
|
this.match(GenericSqlParser.KW_IS);
|
|
2382
|
-
this.state =
|
|
2438
|
+
this.state = 600;
|
|
2383
2439
|
this.errorHandler.sync(this);
|
|
2384
2440
|
_la = this.tokenStream.LA(1);
|
|
2385
2441
|
if (_la === 61) {
|
|
2386
2442
|
{
|
|
2387
|
-
this.state =
|
|
2443
|
+
this.state = 599;
|
|
2388
2444
|
this.match(GenericSqlParser.KW_NOT);
|
|
2389
2445
|
}
|
|
2390
2446
|
}
|
|
2391
|
-
this.state =
|
|
2447
|
+
this.state = 602;
|
|
2392
2448
|
this.match(GenericSqlParser.KW_DISTINCT);
|
|
2393
|
-
this.state =
|
|
2449
|
+
this.state = 603;
|
|
2394
2450
|
this.match(GenericSqlParser.KW_FROM);
|
|
2395
|
-
this.state =
|
|
2451
|
+
this.state = 604;
|
|
2396
2452
|
localContext._right = this.valueExpression(0);
|
|
2397
2453
|
}
|
|
2398
2454
|
break;
|
|
@@ -2415,12 +2471,12 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2415
2471
|
}
|
|
2416
2472
|
comparisonOperator() {
|
|
2417
2473
|
let localContext = new ComparisonOperatorContext(this.context, this.state);
|
|
2418
|
-
this.enterRule(localContext,
|
|
2474
|
+
this.enterRule(localContext, 80, GenericSqlParser.RULE_comparisonOperator);
|
|
2419
2475
|
let _la;
|
|
2420
2476
|
try {
|
|
2421
2477
|
this.enterOuterAlt(localContext, 1);
|
|
2422
2478
|
{
|
|
2423
|
-
this.state =
|
|
2479
|
+
this.state = 607;
|
|
2424
2480
|
_la = this.tokenStream.LA(1);
|
|
2425
2481
|
if (!(((((_la - 95)) & ~0x1F) === 0 && ((1 << (_la - 95)) & 63) !== 0))) {
|
|
2426
2482
|
this.errorHandler.recoverInline(this);
|
|
@@ -2454,14 +2510,14 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2454
2510
|
let parentState = this.state;
|
|
2455
2511
|
let localContext = new ValueExpressionContext(this.context, parentState);
|
|
2456
2512
|
let previousContext = localContext;
|
|
2457
|
-
let _startState =
|
|
2458
|
-
this.enterRecursionRule(localContext,
|
|
2513
|
+
let _startState = 82;
|
|
2514
|
+
this.enterRecursionRule(localContext, 82, GenericSqlParser.RULE_valueExpression, _p);
|
|
2459
2515
|
let _la;
|
|
2460
2516
|
try {
|
|
2461
2517
|
let alternative;
|
|
2462
2518
|
this.enterOuterAlt(localContext, 1);
|
|
2463
2519
|
{
|
|
2464
|
-
this.state =
|
|
2520
|
+
this.state = 613;
|
|
2465
2521
|
this.errorHandler.sync(this);
|
|
2466
2522
|
switch (this.tokenStream.LA(1)) {
|
|
2467
2523
|
case GenericSqlParser.T__1:
|
|
@@ -2525,7 +2581,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2525
2581
|
localContext = new ValueExpressionDefaultContext(localContext);
|
|
2526
2582
|
this.context = localContext;
|
|
2527
2583
|
previousContext = localContext;
|
|
2528
|
-
this.state =
|
|
2584
|
+
this.state = 610;
|
|
2529
2585
|
this.primaryExpression();
|
|
2530
2586
|
}
|
|
2531
2587
|
break;
|
|
@@ -2535,7 +2591,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2535
2591
|
localContext = new ArithmeticUnaryContext(localContext);
|
|
2536
2592
|
this.context = localContext;
|
|
2537
2593
|
previousContext = localContext;
|
|
2538
|
-
this.state =
|
|
2594
|
+
this.state = 611;
|
|
2539
2595
|
localContext._operator = this.tokenStream.LT(1);
|
|
2540
2596
|
_la = this.tokenStream.LA(1);
|
|
2541
2597
|
if (!(_la === 101 || _la === 102)) {
|
|
@@ -2545,7 +2601,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2545
2601
|
this.errorHandler.reportMatch(this);
|
|
2546
2602
|
this.consume();
|
|
2547
2603
|
}
|
|
2548
|
-
this.state =
|
|
2604
|
+
this.state = 612;
|
|
2549
2605
|
this.valueExpression(4);
|
|
2550
2606
|
}
|
|
2551
2607
|
break;
|
|
@@ -2553,9 +2609,9 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2553
2609
|
throw new antlr.NoViableAltException(this);
|
|
2554
2610
|
}
|
|
2555
2611
|
this.context.stop = this.tokenStream.LT(-1);
|
|
2556
|
-
this.state =
|
|
2612
|
+
this.state = 626;
|
|
2557
2613
|
this.errorHandler.sync(this);
|
|
2558
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2614
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 76, this.context);
|
|
2559
2615
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2560
2616
|
if (alternative === 1) {
|
|
2561
2617
|
if (this._parseListeners != null) {
|
|
@@ -2563,19 +2619,19 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2563
2619
|
}
|
|
2564
2620
|
previousContext = localContext;
|
|
2565
2621
|
{
|
|
2566
|
-
this.state =
|
|
2622
|
+
this.state = 624;
|
|
2567
2623
|
this.errorHandler.sync(this);
|
|
2568
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2624
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 75, this.context)) {
|
|
2569
2625
|
case 1:
|
|
2570
2626
|
{
|
|
2571
2627
|
localContext = new ArithmeticBinaryContext(new ValueExpressionContext(parentContext, parentState));
|
|
2572
2628
|
localContext._left = previousContext;
|
|
2573
2629
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_valueExpression);
|
|
2574
|
-
this.state =
|
|
2630
|
+
this.state = 615;
|
|
2575
2631
|
if (!(this.precpred(this.context, 3))) {
|
|
2576
2632
|
throw this.createFailedPredicateException("this.precpred(this.context, 3)");
|
|
2577
2633
|
}
|
|
2578
|
-
this.state =
|
|
2634
|
+
this.state = 616;
|
|
2579
2635
|
localContext._operator = this.tokenStream.LT(1);
|
|
2580
2636
|
_la = this.tokenStream.LA(1);
|
|
2581
2637
|
if (!(((((_la - 103)) & ~0x1F) === 0 && ((1 << (_la - 103)) & 7) !== 0))) {
|
|
@@ -2585,7 +2641,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2585
2641
|
this.errorHandler.reportMatch(this);
|
|
2586
2642
|
this.consume();
|
|
2587
2643
|
}
|
|
2588
|
-
this.state =
|
|
2644
|
+
this.state = 617;
|
|
2589
2645
|
localContext._right = this.valueExpression(4);
|
|
2590
2646
|
}
|
|
2591
2647
|
break;
|
|
@@ -2594,11 +2650,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2594
2650
|
localContext = new ArithmeticBinaryContext(new ValueExpressionContext(parentContext, parentState));
|
|
2595
2651
|
localContext._left = previousContext;
|
|
2596
2652
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_valueExpression);
|
|
2597
|
-
this.state =
|
|
2653
|
+
this.state = 618;
|
|
2598
2654
|
if (!(this.precpred(this.context, 2))) {
|
|
2599
2655
|
throw this.createFailedPredicateException("this.precpred(this.context, 2)");
|
|
2600
2656
|
}
|
|
2601
|
-
this.state =
|
|
2657
|
+
this.state = 619;
|
|
2602
2658
|
localContext._operator = this.tokenStream.LT(1);
|
|
2603
2659
|
_la = this.tokenStream.LA(1);
|
|
2604
2660
|
if (!(_la === 101 || _la === 102)) {
|
|
@@ -2608,7 +2664,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2608
2664
|
this.errorHandler.reportMatch(this);
|
|
2609
2665
|
this.consume();
|
|
2610
2666
|
}
|
|
2611
|
-
this.state =
|
|
2667
|
+
this.state = 620;
|
|
2612
2668
|
localContext._right = this.valueExpression(3);
|
|
2613
2669
|
}
|
|
2614
2670
|
break;
|
|
@@ -2617,22 +2673,22 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2617
2673
|
localContext = new ConcatenationContext(new ValueExpressionContext(parentContext, parentState));
|
|
2618
2674
|
localContext._left = previousContext;
|
|
2619
2675
|
this.pushNewRecursionContext(localContext, _startState, GenericSqlParser.RULE_valueExpression);
|
|
2620
|
-
this.state =
|
|
2676
|
+
this.state = 621;
|
|
2621
2677
|
if (!(this.precpred(this.context, 1))) {
|
|
2622
2678
|
throw this.createFailedPredicateException("this.precpred(this.context, 1)");
|
|
2623
2679
|
}
|
|
2624
|
-
this.state =
|
|
2680
|
+
this.state = 622;
|
|
2625
2681
|
this.match(GenericSqlParser.CONCAT);
|
|
2626
|
-
this.state =
|
|
2682
|
+
this.state = 623;
|
|
2627
2683
|
localContext._right = this.valueExpression(2);
|
|
2628
2684
|
}
|
|
2629
2685
|
break;
|
|
2630
2686
|
}
|
|
2631
2687
|
}
|
|
2632
2688
|
}
|
|
2633
|
-
this.state =
|
|
2689
|
+
this.state = 628;
|
|
2634
2690
|
this.errorHandler.sync(this);
|
|
2635
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2691
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 76, this.context);
|
|
2636
2692
|
}
|
|
2637
2693
|
}
|
|
2638
2694
|
}
|
|
@@ -2653,17 +2709,17 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2653
2709
|
}
|
|
2654
2710
|
primaryExpression() {
|
|
2655
2711
|
let localContext = new PrimaryExpressionContext(this.context, this.state);
|
|
2656
|
-
this.enterRule(localContext,
|
|
2712
|
+
this.enterRule(localContext, 84, GenericSqlParser.RULE_primaryExpression);
|
|
2657
2713
|
let _la;
|
|
2658
2714
|
try {
|
|
2659
|
-
this.state =
|
|
2715
|
+
this.state = 709;
|
|
2660
2716
|
this.errorHandler.sync(this);
|
|
2661
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2717
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 85, this.context)) {
|
|
2662
2718
|
case 1:
|
|
2663
2719
|
localContext = new LiteralExpressionContext(localContext);
|
|
2664
2720
|
this.enterOuterAlt(localContext, 1);
|
|
2665
2721
|
{
|
|
2666
|
-
this.state =
|
|
2722
|
+
this.state = 629;
|
|
2667
2723
|
this.literal();
|
|
2668
2724
|
}
|
|
2669
2725
|
break;
|
|
@@ -2671,46 +2727,46 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2671
2727
|
localContext = new FunctionCallContext(localContext);
|
|
2672
2728
|
this.enterOuterAlt(localContext, 2);
|
|
2673
2729
|
{
|
|
2674
|
-
this.state =
|
|
2730
|
+
this.state = 630;
|
|
2675
2731
|
this.qualifiedName();
|
|
2676
|
-
this.state =
|
|
2732
|
+
this.state = 631;
|
|
2677
2733
|
this.match(GenericSqlParser.T__1);
|
|
2678
|
-
this.state =
|
|
2734
|
+
this.state = 643;
|
|
2679
2735
|
this.errorHandler.sync(this);
|
|
2680
2736
|
_la = this.tokenStream.LA(1);
|
|
2681
2737
|
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4013421668) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 1069048399) !== 0) || ((((_la - 70)) & ~0x1F) === 0 && ((1 << (_la - 70)) & 2151019809) !== 0) || ((((_la - 102)) & ~0x1F) === 0 && ((1 << (_la - 102)) & 65409) !== 0)) {
|
|
2682
2738
|
{
|
|
2683
|
-
this.state =
|
|
2739
|
+
this.state = 633;
|
|
2684
2740
|
this.errorHandler.sync(this);
|
|
2685
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2741
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 77, this.context)) {
|
|
2686
2742
|
case 1:
|
|
2687
2743
|
{
|
|
2688
|
-
this.state =
|
|
2744
|
+
this.state = 632;
|
|
2689
2745
|
this.setQuantifier();
|
|
2690
2746
|
}
|
|
2691
2747
|
break;
|
|
2692
2748
|
}
|
|
2693
|
-
this.state =
|
|
2749
|
+
this.state = 635;
|
|
2694
2750
|
this.expression();
|
|
2695
|
-
this.state =
|
|
2751
|
+
this.state = 640;
|
|
2696
2752
|
this.errorHandler.sync(this);
|
|
2697
2753
|
_la = this.tokenStream.LA(1);
|
|
2698
2754
|
while (_la === 1) {
|
|
2699
2755
|
{
|
|
2700
2756
|
{
|
|
2701
|
-
this.state =
|
|
2757
|
+
this.state = 636;
|
|
2702
2758
|
this.match(GenericSqlParser.T__0);
|
|
2703
|
-
this.state =
|
|
2759
|
+
this.state = 637;
|
|
2704
2760
|
this.expression();
|
|
2705
2761
|
}
|
|
2706
2762
|
}
|
|
2707
|
-
this.state =
|
|
2763
|
+
this.state = 642;
|
|
2708
2764
|
this.errorHandler.sync(this);
|
|
2709
2765
|
_la = this.tokenStream.LA(1);
|
|
2710
2766
|
}
|
|
2711
2767
|
}
|
|
2712
2768
|
}
|
|
2713
|
-
this.state =
|
|
2769
|
+
this.state = 645;
|
|
2714
2770
|
this.match(GenericSqlParser.T__2);
|
|
2715
2771
|
}
|
|
2716
2772
|
break;
|
|
@@ -2718,34 +2774,34 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2718
2774
|
localContext = new SearchedCaseExpressionContext(localContext);
|
|
2719
2775
|
this.enterOuterAlt(localContext, 3);
|
|
2720
2776
|
{
|
|
2721
|
-
this.state =
|
|
2777
|
+
this.state = 647;
|
|
2722
2778
|
this.match(GenericSqlParser.KW_CASE);
|
|
2723
|
-
this.state =
|
|
2779
|
+
this.state = 649;
|
|
2724
2780
|
this.errorHandler.sync(this);
|
|
2725
2781
|
_la = this.tokenStream.LA(1);
|
|
2726
2782
|
do {
|
|
2727
2783
|
{
|
|
2728
2784
|
{
|
|
2729
|
-
this.state =
|
|
2785
|
+
this.state = 648;
|
|
2730
2786
|
this.whenClause();
|
|
2731
2787
|
}
|
|
2732
2788
|
}
|
|
2733
|
-
this.state =
|
|
2789
|
+
this.state = 651;
|
|
2734
2790
|
this.errorHandler.sync(this);
|
|
2735
2791
|
_la = this.tokenStream.LA(1);
|
|
2736
2792
|
} while (_la === 92);
|
|
2737
|
-
this.state =
|
|
2793
|
+
this.state = 655;
|
|
2738
2794
|
this.errorHandler.sync(this);
|
|
2739
2795
|
_la = this.tokenStream.LA(1);
|
|
2740
2796
|
if (_la === 33) {
|
|
2741
2797
|
{
|
|
2742
|
-
this.state =
|
|
2798
|
+
this.state = 653;
|
|
2743
2799
|
this.match(GenericSqlParser.KW_ELSE);
|
|
2744
|
-
this.state =
|
|
2800
|
+
this.state = 654;
|
|
2745
2801
|
this.expression();
|
|
2746
2802
|
}
|
|
2747
2803
|
}
|
|
2748
|
-
this.state =
|
|
2804
|
+
this.state = 657;
|
|
2749
2805
|
this.match(GenericSqlParser.KW_END);
|
|
2750
2806
|
}
|
|
2751
2807
|
break;
|
|
@@ -2753,36 +2809,36 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2753
2809
|
localContext = new SimpleCaseExpressionContext(localContext);
|
|
2754
2810
|
this.enterOuterAlt(localContext, 4);
|
|
2755
2811
|
{
|
|
2756
|
-
this.state =
|
|
2812
|
+
this.state = 659;
|
|
2757
2813
|
this.match(GenericSqlParser.KW_CASE);
|
|
2758
|
-
this.state =
|
|
2814
|
+
this.state = 660;
|
|
2759
2815
|
this.expression();
|
|
2760
|
-
this.state =
|
|
2816
|
+
this.state = 662;
|
|
2761
2817
|
this.errorHandler.sync(this);
|
|
2762
2818
|
_la = this.tokenStream.LA(1);
|
|
2763
2819
|
do {
|
|
2764
2820
|
{
|
|
2765
2821
|
{
|
|
2766
|
-
this.state =
|
|
2822
|
+
this.state = 661;
|
|
2767
2823
|
this.whenClause();
|
|
2768
2824
|
}
|
|
2769
2825
|
}
|
|
2770
|
-
this.state =
|
|
2826
|
+
this.state = 664;
|
|
2771
2827
|
this.errorHandler.sync(this);
|
|
2772
2828
|
_la = this.tokenStream.LA(1);
|
|
2773
2829
|
} while (_la === 92);
|
|
2774
|
-
this.state =
|
|
2830
|
+
this.state = 668;
|
|
2775
2831
|
this.errorHandler.sync(this);
|
|
2776
2832
|
_la = this.tokenStream.LA(1);
|
|
2777
2833
|
if (_la === 33) {
|
|
2778
2834
|
{
|
|
2779
|
-
this.state =
|
|
2835
|
+
this.state = 666;
|
|
2780
2836
|
this.match(GenericSqlParser.KW_ELSE);
|
|
2781
|
-
this.state =
|
|
2837
|
+
this.state = 667;
|
|
2782
2838
|
this.expression();
|
|
2783
2839
|
}
|
|
2784
2840
|
}
|
|
2785
|
-
this.state =
|
|
2841
|
+
this.state = 670;
|
|
2786
2842
|
this.match(GenericSqlParser.KW_END);
|
|
2787
2843
|
}
|
|
2788
2844
|
break;
|
|
@@ -2790,17 +2846,17 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2790
2846
|
localContext = new CastExpressionContext(localContext);
|
|
2791
2847
|
this.enterOuterAlt(localContext, 5);
|
|
2792
2848
|
{
|
|
2793
|
-
this.state =
|
|
2849
|
+
this.state = 672;
|
|
2794
2850
|
this.match(GenericSqlParser.KW_CAST);
|
|
2795
|
-
this.state =
|
|
2851
|
+
this.state = 673;
|
|
2796
2852
|
this.match(GenericSqlParser.T__1);
|
|
2797
|
-
this.state =
|
|
2853
|
+
this.state = 674;
|
|
2798
2854
|
this.expression();
|
|
2799
|
-
this.state =
|
|
2855
|
+
this.state = 675;
|
|
2800
2856
|
this.match(GenericSqlParser.KW_AS);
|
|
2801
|
-
this.state =
|
|
2857
|
+
this.state = 676;
|
|
2802
2858
|
this.dataType();
|
|
2803
|
-
this.state =
|
|
2859
|
+
this.state = 677;
|
|
2804
2860
|
this.match(GenericSqlParser.T__2);
|
|
2805
2861
|
}
|
|
2806
2862
|
break;
|
|
@@ -2808,29 +2864,29 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2808
2864
|
localContext = new CoalesceExpressionContext(localContext);
|
|
2809
2865
|
this.enterOuterAlt(localContext, 6);
|
|
2810
2866
|
{
|
|
2811
|
-
this.state =
|
|
2867
|
+
this.state = 679;
|
|
2812
2868
|
this.match(GenericSqlParser.KW_COALESCE);
|
|
2813
|
-
this.state =
|
|
2869
|
+
this.state = 680;
|
|
2814
2870
|
this.match(GenericSqlParser.T__1);
|
|
2815
|
-
this.state =
|
|
2871
|
+
this.state = 681;
|
|
2816
2872
|
this.expression();
|
|
2817
|
-
this.state =
|
|
2873
|
+
this.state = 686;
|
|
2818
2874
|
this.errorHandler.sync(this);
|
|
2819
2875
|
_la = this.tokenStream.LA(1);
|
|
2820
2876
|
while (_la === 1) {
|
|
2821
2877
|
{
|
|
2822
2878
|
{
|
|
2823
|
-
this.state =
|
|
2879
|
+
this.state = 682;
|
|
2824
2880
|
this.match(GenericSqlParser.T__0);
|
|
2825
|
-
this.state =
|
|
2881
|
+
this.state = 683;
|
|
2826
2882
|
this.expression();
|
|
2827
2883
|
}
|
|
2828
2884
|
}
|
|
2829
|
-
this.state =
|
|
2885
|
+
this.state = 688;
|
|
2830
2886
|
this.errorHandler.sync(this);
|
|
2831
2887
|
_la = this.tokenStream.LA(1);
|
|
2832
2888
|
}
|
|
2833
|
-
this.state =
|
|
2889
|
+
this.state = 689;
|
|
2834
2890
|
this.match(GenericSqlParser.T__2);
|
|
2835
2891
|
}
|
|
2836
2892
|
break;
|
|
@@ -2838,17 +2894,17 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2838
2894
|
localContext = new NullIfExpressionContext(localContext);
|
|
2839
2895
|
this.enterOuterAlt(localContext, 7);
|
|
2840
2896
|
{
|
|
2841
|
-
this.state =
|
|
2897
|
+
this.state = 691;
|
|
2842
2898
|
this.match(GenericSqlParser.KW_NULLIF);
|
|
2843
|
-
this.state =
|
|
2899
|
+
this.state = 692;
|
|
2844
2900
|
this.match(GenericSqlParser.T__1);
|
|
2845
|
-
this.state =
|
|
2901
|
+
this.state = 693;
|
|
2846
2902
|
this.valueExpression(0);
|
|
2847
|
-
this.state =
|
|
2903
|
+
this.state = 694;
|
|
2848
2904
|
this.match(GenericSqlParser.T__0);
|
|
2849
|
-
this.state =
|
|
2905
|
+
this.state = 695;
|
|
2850
2906
|
this.valueExpression(0);
|
|
2851
|
-
this.state =
|
|
2907
|
+
this.state = 696;
|
|
2852
2908
|
this.match(GenericSqlParser.T__2);
|
|
2853
2909
|
}
|
|
2854
2910
|
break;
|
|
@@ -2856,11 +2912,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2856
2912
|
localContext = new ParenthesizedExpressionContext(localContext);
|
|
2857
2913
|
this.enterOuterAlt(localContext, 8);
|
|
2858
2914
|
{
|
|
2859
|
-
this.state =
|
|
2915
|
+
this.state = 698;
|
|
2860
2916
|
this.match(GenericSqlParser.T__1);
|
|
2861
|
-
this.state =
|
|
2917
|
+
this.state = 699;
|
|
2862
2918
|
this.expression();
|
|
2863
|
-
this.state =
|
|
2919
|
+
this.state = 700;
|
|
2864
2920
|
this.match(GenericSqlParser.T__2);
|
|
2865
2921
|
}
|
|
2866
2922
|
break;
|
|
@@ -2868,13 +2924,13 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2868
2924
|
localContext = new ExistsExpressionContext(localContext);
|
|
2869
2925
|
this.enterOuterAlt(localContext, 9);
|
|
2870
2926
|
{
|
|
2871
|
-
this.state =
|
|
2927
|
+
this.state = 702;
|
|
2872
2928
|
this.match(GenericSqlParser.KW_EXISTS);
|
|
2873
|
-
this.state =
|
|
2929
|
+
this.state = 703;
|
|
2874
2930
|
this.match(GenericSqlParser.T__1);
|
|
2875
|
-
this.state =
|
|
2931
|
+
this.state = 704;
|
|
2876
2932
|
this.queryStatement();
|
|
2877
|
-
this.state =
|
|
2933
|
+
this.state = 705;
|
|
2878
2934
|
this.match(GenericSqlParser.T__2);
|
|
2879
2935
|
}
|
|
2880
2936
|
break;
|
|
@@ -2882,7 +2938,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2882
2938
|
localContext = new SubqueryExpressionDefaultContext(localContext);
|
|
2883
2939
|
this.enterOuterAlt(localContext, 10);
|
|
2884
2940
|
{
|
|
2885
|
-
this.state =
|
|
2941
|
+
this.state = 707;
|
|
2886
2942
|
this.subqueryExpression();
|
|
2887
2943
|
}
|
|
2888
2944
|
break;
|
|
@@ -2890,7 +2946,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2890
2946
|
localContext = new ColumnReferenceContext(localContext);
|
|
2891
2947
|
this.enterOuterAlt(localContext, 11);
|
|
2892
2948
|
{
|
|
2893
|
-
this.state =
|
|
2949
|
+
this.state = 708;
|
|
2894
2950
|
this.qualifiedName();
|
|
2895
2951
|
}
|
|
2896
2952
|
break;
|
|
@@ -2913,17 +2969,17 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2913
2969
|
}
|
|
2914
2970
|
whenClause() {
|
|
2915
2971
|
let localContext = new WhenClauseContext(this.context, this.state);
|
|
2916
|
-
this.enterRule(localContext,
|
|
2972
|
+
this.enterRule(localContext, 86, GenericSqlParser.RULE_whenClause);
|
|
2917
2973
|
try {
|
|
2918
2974
|
this.enterOuterAlt(localContext, 1);
|
|
2919
2975
|
{
|
|
2920
|
-
this.state =
|
|
2976
|
+
this.state = 711;
|
|
2921
2977
|
this.match(GenericSqlParser.KW_WHEN);
|
|
2922
|
-
this.state =
|
|
2978
|
+
this.state = 712;
|
|
2923
2979
|
localContext._condition = this.expression();
|
|
2924
|
-
this.state =
|
|
2980
|
+
this.state = 713;
|
|
2925
2981
|
this.match(GenericSqlParser.KW_THEN);
|
|
2926
|
-
this.state =
|
|
2982
|
+
this.state = 714;
|
|
2927
2983
|
localContext._result = this.expression();
|
|
2928
2984
|
}
|
|
2929
2985
|
}
|
|
@@ -2944,15 +3000,15 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2944
3000
|
}
|
|
2945
3001
|
subqueryExpression() {
|
|
2946
3002
|
let localContext = new SubqueryExpressionContext(this.context, this.state);
|
|
2947
|
-
this.enterRule(localContext,
|
|
3003
|
+
this.enterRule(localContext, 88, GenericSqlParser.RULE_subqueryExpression);
|
|
2948
3004
|
try {
|
|
2949
3005
|
this.enterOuterAlt(localContext, 1);
|
|
2950
3006
|
{
|
|
2951
|
-
this.state =
|
|
3007
|
+
this.state = 716;
|
|
2952
3008
|
this.match(GenericSqlParser.T__1);
|
|
2953
|
-
this.state =
|
|
3009
|
+
this.state = 717;
|
|
2954
3010
|
this.queryStatement();
|
|
2955
|
-
this.state =
|
|
3011
|
+
this.state = 718;
|
|
2956
3012
|
this.match(GenericSqlParser.T__2);
|
|
2957
3013
|
}
|
|
2958
3014
|
}
|
|
@@ -2973,94 +3029,94 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
2973
3029
|
}
|
|
2974
3030
|
dataType() {
|
|
2975
3031
|
let localContext = new DataTypeContext(this.context, this.state);
|
|
2976
|
-
this.enterRule(localContext,
|
|
3032
|
+
this.enterRule(localContext, 90, GenericSqlParser.RULE_dataType);
|
|
2977
3033
|
let _la;
|
|
2978
3034
|
try {
|
|
2979
|
-
this.state =
|
|
3035
|
+
this.state = 766;
|
|
2980
3036
|
this.errorHandler.sync(this);
|
|
2981
3037
|
switch (this.tokenStream.LA(1)) {
|
|
2982
3038
|
case GenericSqlParser.KW_BOOLEAN:
|
|
2983
3039
|
this.enterOuterAlt(localContext, 1);
|
|
2984
3040
|
{
|
|
2985
|
-
this.state =
|
|
3041
|
+
this.state = 720;
|
|
2986
3042
|
this.match(GenericSqlParser.KW_BOOLEAN);
|
|
2987
3043
|
}
|
|
2988
3044
|
break;
|
|
2989
3045
|
case GenericSqlParser.KW_TINYINT:
|
|
2990
3046
|
this.enterOuterAlt(localContext, 2);
|
|
2991
3047
|
{
|
|
2992
|
-
this.state =
|
|
3048
|
+
this.state = 721;
|
|
2993
3049
|
this.match(GenericSqlParser.KW_TINYINT);
|
|
2994
3050
|
}
|
|
2995
3051
|
break;
|
|
2996
3052
|
case GenericSqlParser.KW_SMALLINT:
|
|
2997
3053
|
this.enterOuterAlt(localContext, 3);
|
|
2998
3054
|
{
|
|
2999
|
-
this.state =
|
|
3055
|
+
this.state = 722;
|
|
3000
3056
|
this.match(GenericSqlParser.KW_SMALLINT);
|
|
3001
3057
|
}
|
|
3002
3058
|
break;
|
|
3003
3059
|
case GenericSqlParser.KW_INT:
|
|
3004
3060
|
this.enterOuterAlt(localContext, 4);
|
|
3005
3061
|
{
|
|
3006
|
-
this.state =
|
|
3062
|
+
this.state = 723;
|
|
3007
3063
|
this.match(GenericSqlParser.KW_INT);
|
|
3008
3064
|
}
|
|
3009
3065
|
break;
|
|
3010
3066
|
case GenericSqlParser.KW_INTEGER:
|
|
3011
3067
|
this.enterOuterAlt(localContext, 5);
|
|
3012
3068
|
{
|
|
3013
|
-
this.state =
|
|
3069
|
+
this.state = 724;
|
|
3014
3070
|
this.match(GenericSqlParser.KW_INTEGER);
|
|
3015
3071
|
}
|
|
3016
3072
|
break;
|
|
3017
3073
|
case GenericSqlParser.KW_BIGINT:
|
|
3018
3074
|
this.enterOuterAlt(localContext, 6);
|
|
3019
3075
|
{
|
|
3020
|
-
this.state =
|
|
3076
|
+
this.state = 725;
|
|
3021
3077
|
this.match(GenericSqlParser.KW_BIGINT);
|
|
3022
3078
|
}
|
|
3023
3079
|
break;
|
|
3024
3080
|
case GenericSqlParser.KW_FLOAT:
|
|
3025
3081
|
this.enterOuterAlt(localContext, 7);
|
|
3026
3082
|
{
|
|
3027
|
-
this.state =
|
|
3083
|
+
this.state = 726;
|
|
3028
3084
|
this.match(GenericSqlParser.KW_FLOAT);
|
|
3029
3085
|
}
|
|
3030
3086
|
break;
|
|
3031
3087
|
case GenericSqlParser.KW_DOUBLE:
|
|
3032
3088
|
this.enterOuterAlt(localContext, 8);
|
|
3033
3089
|
{
|
|
3034
|
-
this.state =
|
|
3090
|
+
this.state = 727;
|
|
3035
3091
|
this.match(GenericSqlParser.KW_DOUBLE);
|
|
3036
3092
|
}
|
|
3037
3093
|
break;
|
|
3038
3094
|
case GenericSqlParser.KW_DECIMAL:
|
|
3039
3095
|
this.enterOuterAlt(localContext, 9);
|
|
3040
3096
|
{
|
|
3041
|
-
this.state =
|
|
3097
|
+
this.state = 728;
|
|
3042
3098
|
this.match(GenericSqlParser.KW_DECIMAL);
|
|
3043
|
-
this.state =
|
|
3099
|
+
this.state = 736;
|
|
3044
3100
|
this.errorHandler.sync(this);
|
|
3045
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
3101
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 87, this.context)) {
|
|
3046
3102
|
case 1:
|
|
3047
3103
|
{
|
|
3048
|
-
this.state =
|
|
3104
|
+
this.state = 729;
|
|
3049
3105
|
this.match(GenericSqlParser.T__1);
|
|
3050
|
-
this.state =
|
|
3106
|
+
this.state = 730;
|
|
3051
3107
|
localContext._precision = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3052
|
-
this.state =
|
|
3108
|
+
this.state = 733;
|
|
3053
3109
|
this.errorHandler.sync(this);
|
|
3054
3110
|
_la = this.tokenStream.LA(1);
|
|
3055
3111
|
if (_la === 1) {
|
|
3056
3112
|
{
|
|
3057
|
-
this.state =
|
|
3113
|
+
this.state = 731;
|
|
3058
3114
|
this.match(GenericSqlParser.T__0);
|
|
3059
|
-
this.state =
|
|
3115
|
+
this.state = 732;
|
|
3060
3116
|
localContext._scale = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3061
3117
|
}
|
|
3062
3118
|
}
|
|
3063
|
-
this.state =
|
|
3119
|
+
this.state = 735;
|
|
3064
3120
|
this.match(GenericSqlParser.T__2);
|
|
3065
3121
|
}
|
|
3066
3122
|
break;
|
|
@@ -3070,29 +3126,29 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3070
3126
|
case GenericSqlParser.KW_NUMERIC:
|
|
3071
3127
|
this.enterOuterAlt(localContext, 10);
|
|
3072
3128
|
{
|
|
3073
|
-
this.state =
|
|
3129
|
+
this.state = 738;
|
|
3074
3130
|
this.match(GenericSqlParser.KW_NUMERIC);
|
|
3075
|
-
this.state =
|
|
3131
|
+
this.state = 746;
|
|
3076
3132
|
this.errorHandler.sync(this);
|
|
3077
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
3133
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 89, this.context)) {
|
|
3078
3134
|
case 1:
|
|
3079
3135
|
{
|
|
3080
|
-
this.state =
|
|
3136
|
+
this.state = 739;
|
|
3081
3137
|
this.match(GenericSqlParser.T__1);
|
|
3082
|
-
this.state =
|
|
3138
|
+
this.state = 740;
|
|
3083
3139
|
localContext._precision = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3084
|
-
this.state =
|
|
3140
|
+
this.state = 743;
|
|
3085
3141
|
this.errorHandler.sync(this);
|
|
3086
3142
|
_la = this.tokenStream.LA(1);
|
|
3087
3143
|
if (_la === 1) {
|
|
3088
3144
|
{
|
|
3089
|
-
this.state =
|
|
3145
|
+
this.state = 741;
|
|
3090
3146
|
this.match(GenericSqlParser.T__0);
|
|
3091
|
-
this.state =
|
|
3147
|
+
this.state = 742;
|
|
3092
3148
|
localContext._scale = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3093
3149
|
}
|
|
3094
3150
|
}
|
|
3095
|
-
this.state =
|
|
3151
|
+
this.state = 745;
|
|
3096
3152
|
this.match(GenericSqlParser.T__2);
|
|
3097
3153
|
}
|
|
3098
3154
|
break;
|
|
@@ -3102,18 +3158,18 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3102
3158
|
case GenericSqlParser.KW_VARCHAR:
|
|
3103
3159
|
this.enterOuterAlt(localContext, 11);
|
|
3104
3160
|
{
|
|
3105
|
-
this.state =
|
|
3161
|
+
this.state = 748;
|
|
3106
3162
|
this.match(GenericSqlParser.KW_VARCHAR);
|
|
3107
|
-
this.state =
|
|
3163
|
+
this.state = 752;
|
|
3108
3164
|
this.errorHandler.sync(this);
|
|
3109
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
3165
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 90, this.context)) {
|
|
3110
3166
|
case 1:
|
|
3111
3167
|
{
|
|
3112
|
-
this.state =
|
|
3168
|
+
this.state = 749;
|
|
3113
3169
|
this.match(GenericSqlParser.T__1);
|
|
3114
|
-
this.state =
|
|
3170
|
+
this.state = 750;
|
|
3115
3171
|
localContext._maxLength = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3116
|
-
this.state =
|
|
3172
|
+
this.state = 751;
|
|
3117
3173
|
this.match(GenericSqlParser.T__2);
|
|
3118
3174
|
}
|
|
3119
3175
|
break;
|
|
@@ -3123,18 +3179,18 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3123
3179
|
case GenericSqlParser.KW_CHAR:
|
|
3124
3180
|
this.enterOuterAlt(localContext, 12);
|
|
3125
3181
|
{
|
|
3126
|
-
this.state =
|
|
3182
|
+
this.state = 754;
|
|
3127
3183
|
this.match(GenericSqlParser.KW_CHAR);
|
|
3128
|
-
this.state =
|
|
3184
|
+
this.state = 758;
|
|
3129
3185
|
this.errorHandler.sync(this);
|
|
3130
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
3186
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 91, this.context)) {
|
|
3131
3187
|
case 1:
|
|
3132
3188
|
{
|
|
3133
|
-
this.state =
|
|
3189
|
+
this.state = 755;
|
|
3134
3190
|
this.match(GenericSqlParser.T__1);
|
|
3135
|
-
this.state =
|
|
3191
|
+
this.state = 756;
|
|
3136
3192
|
localContext._length = this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3137
|
-
this.state =
|
|
3193
|
+
this.state = 757;
|
|
3138
3194
|
this.match(GenericSqlParser.T__2);
|
|
3139
3195
|
}
|
|
3140
3196
|
break;
|
|
@@ -3144,42 +3200,42 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3144
3200
|
case GenericSqlParser.KW_TEXT:
|
|
3145
3201
|
this.enterOuterAlt(localContext, 13);
|
|
3146
3202
|
{
|
|
3147
|
-
this.state =
|
|
3203
|
+
this.state = 760;
|
|
3148
3204
|
this.match(GenericSqlParser.KW_TEXT);
|
|
3149
3205
|
}
|
|
3150
3206
|
break;
|
|
3151
3207
|
case GenericSqlParser.KW_DATE:
|
|
3152
3208
|
this.enterOuterAlt(localContext, 14);
|
|
3153
3209
|
{
|
|
3154
|
-
this.state =
|
|
3210
|
+
this.state = 761;
|
|
3155
3211
|
this.match(GenericSqlParser.KW_DATE);
|
|
3156
3212
|
}
|
|
3157
3213
|
break;
|
|
3158
3214
|
case GenericSqlParser.KW_TIME:
|
|
3159
3215
|
this.enterOuterAlt(localContext, 15);
|
|
3160
3216
|
{
|
|
3161
|
-
this.state =
|
|
3217
|
+
this.state = 762;
|
|
3162
3218
|
this.match(GenericSqlParser.KW_TIME);
|
|
3163
3219
|
}
|
|
3164
3220
|
break;
|
|
3165
3221
|
case GenericSqlParser.KW_TIMESTAMP:
|
|
3166
3222
|
this.enterOuterAlt(localContext, 16);
|
|
3167
3223
|
{
|
|
3168
|
-
this.state =
|
|
3224
|
+
this.state = 763;
|
|
3169
3225
|
this.match(GenericSqlParser.KW_TIMESTAMP);
|
|
3170
3226
|
}
|
|
3171
3227
|
break;
|
|
3172
3228
|
case GenericSqlParser.KW_BINARY:
|
|
3173
3229
|
this.enterOuterAlt(localContext, 17);
|
|
3174
3230
|
{
|
|
3175
|
-
this.state =
|
|
3231
|
+
this.state = 764;
|
|
3176
3232
|
this.match(GenericSqlParser.KW_BINARY);
|
|
3177
3233
|
}
|
|
3178
3234
|
break;
|
|
3179
3235
|
case GenericSqlParser.KW_VARBINARY:
|
|
3180
3236
|
this.enterOuterAlt(localContext, 18);
|
|
3181
3237
|
{
|
|
3182
|
-
this.state =
|
|
3238
|
+
this.state = 765;
|
|
3183
3239
|
this.match(GenericSqlParser.KW_VARBINARY);
|
|
3184
3240
|
}
|
|
3185
3241
|
break;
|
|
@@ -3204,32 +3260,32 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3204
3260
|
}
|
|
3205
3261
|
properties() {
|
|
3206
3262
|
let localContext = new PropertiesContext(this.context, this.state);
|
|
3207
|
-
this.enterRule(localContext,
|
|
3263
|
+
this.enterRule(localContext, 92, GenericSqlParser.RULE_properties);
|
|
3208
3264
|
let _la;
|
|
3209
3265
|
try {
|
|
3210
3266
|
this.enterOuterAlt(localContext, 1);
|
|
3211
3267
|
{
|
|
3212
|
-
this.state =
|
|
3268
|
+
this.state = 768;
|
|
3213
3269
|
this.match(GenericSqlParser.T__1);
|
|
3214
|
-
this.state =
|
|
3270
|
+
this.state = 769;
|
|
3215
3271
|
this.property();
|
|
3216
|
-
this.state =
|
|
3272
|
+
this.state = 774;
|
|
3217
3273
|
this.errorHandler.sync(this);
|
|
3218
3274
|
_la = this.tokenStream.LA(1);
|
|
3219
3275
|
while (_la === 1) {
|
|
3220
3276
|
{
|
|
3221
3277
|
{
|
|
3222
|
-
this.state =
|
|
3278
|
+
this.state = 770;
|
|
3223
3279
|
this.match(GenericSqlParser.T__0);
|
|
3224
|
-
this.state =
|
|
3280
|
+
this.state = 771;
|
|
3225
3281
|
this.property();
|
|
3226
3282
|
}
|
|
3227
3283
|
}
|
|
3228
|
-
this.state =
|
|
3284
|
+
this.state = 776;
|
|
3229
3285
|
this.errorHandler.sync(this);
|
|
3230
3286
|
_la = this.tokenStream.LA(1);
|
|
3231
3287
|
}
|
|
3232
|
-
this.state =
|
|
3288
|
+
this.state = 777;
|
|
3233
3289
|
this.match(GenericSqlParser.T__2);
|
|
3234
3290
|
}
|
|
3235
3291
|
}
|
|
@@ -3250,15 +3306,15 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3250
3306
|
}
|
|
3251
3307
|
property() {
|
|
3252
3308
|
let localContext = new PropertyContext(this.context, this.state);
|
|
3253
|
-
this.enterRule(localContext,
|
|
3309
|
+
this.enterRule(localContext, 94, GenericSqlParser.RULE_property);
|
|
3254
3310
|
try {
|
|
3255
3311
|
this.enterOuterAlt(localContext, 1);
|
|
3256
3312
|
{
|
|
3257
|
-
this.state =
|
|
3313
|
+
this.state = 779;
|
|
3258
3314
|
this.identifier();
|
|
3259
|
-
this.state =
|
|
3315
|
+
this.state = 780;
|
|
3260
3316
|
this.match(GenericSqlParser.EQ);
|
|
3261
|
-
this.state =
|
|
3317
|
+
this.state = 781;
|
|
3262
3318
|
this.literal();
|
|
3263
3319
|
}
|
|
3264
3320
|
}
|
|
@@ -3279,16 +3335,16 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3279
3335
|
}
|
|
3280
3336
|
literal() {
|
|
3281
3337
|
let localContext = new LiteralContext(this.context, this.state);
|
|
3282
|
-
this.enterRule(localContext,
|
|
3338
|
+
this.enterRule(localContext, 96, GenericSqlParser.RULE_literal);
|
|
3283
3339
|
try {
|
|
3284
|
-
this.state =
|
|
3340
|
+
this.state = 791;
|
|
3285
3341
|
this.errorHandler.sync(this);
|
|
3286
3342
|
switch (this.tokenStream.LA(1)) {
|
|
3287
3343
|
case GenericSqlParser.KW_NULL:
|
|
3288
3344
|
localContext = new NullLiteralContext(localContext);
|
|
3289
3345
|
this.enterOuterAlt(localContext, 1);
|
|
3290
3346
|
{
|
|
3291
|
-
this.state =
|
|
3347
|
+
this.state = 783;
|
|
3292
3348
|
this.match(GenericSqlParser.KW_NULL);
|
|
3293
3349
|
}
|
|
3294
3350
|
break;
|
|
@@ -3296,7 +3352,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3296
3352
|
localContext = new BooleanLiteralContext(localContext);
|
|
3297
3353
|
this.enterOuterAlt(localContext, 2);
|
|
3298
3354
|
{
|
|
3299
|
-
this.state =
|
|
3355
|
+
this.state = 784;
|
|
3300
3356
|
this.match(GenericSqlParser.KW_TRUE);
|
|
3301
3357
|
}
|
|
3302
3358
|
break;
|
|
@@ -3304,7 +3360,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3304
3360
|
localContext = new BooleanLiteralContext(localContext);
|
|
3305
3361
|
this.enterOuterAlt(localContext, 3);
|
|
3306
3362
|
{
|
|
3307
|
-
this.state =
|
|
3363
|
+
this.state = 785;
|
|
3308
3364
|
this.match(GenericSqlParser.KW_FALSE);
|
|
3309
3365
|
}
|
|
3310
3366
|
break;
|
|
@@ -3312,7 +3368,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3312
3368
|
localContext = new IntegerLiteralContext(localContext);
|
|
3313
3369
|
this.enterOuterAlt(localContext, 4);
|
|
3314
3370
|
{
|
|
3315
|
-
this.state =
|
|
3371
|
+
this.state = 786;
|
|
3316
3372
|
this.match(GenericSqlParser.INTEGER_VALUE);
|
|
3317
3373
|
}
|
|
3318
3374
|
break;
|
|
@@ -3320,7 +3376,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3320
3376
|
localContext = new DecimalLiteralContext(localContext);
|
|
3321
3377
|
this.enterOuterAlt(localContext, 5);
|
|
3322
3378
|
{
|
|
3323
|
-
this.state =
|
|
3379
|
+
this.state = 787;
|
|
3324
3380
|
this.match(GenericSqlParser.DECIMAL_VALUE);
|
|
3325
3381
|
}
|
|
3326
3382
|
break;
|
|
@@ -3328,7 +3384,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3328
3384
|
localContext = new DoubleLiteralContext(localContext);
|
|
3329
3385
|
this.enterOuterAlt(localContext, 6);
|
|
3330
3386
|
{
|
|
3331
|
-
this.state =
|
|
3387
|
+
this.state = 788;
|
|
3332
3388
|
this.match(GenericSqlParser.DOUBLE_VALUE);
|
|
3333
3389
|
}
|
|
3334
3390
|
break;
|
|
@@ -3336,7 +3392,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3336
3392
|
localContext = new StringLiteralContext(localContext);
|
|
3337
3393
|
this.enterOuterAlt(localContext, 7);
|
|
3338
3394
|
{
|
|
3339
|
-
this.state =
|
|
3395
|
+
this.state = 789;
|
|
3340
3396
|
this.match(GenericSqlParser.STRING);
|
|
3341
3397
|
}
|
|
3342
3398
|
break;
|
|
@@ -3344,7 +3400,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3344
3400
|
localContext = new BinaryLiteralContext(localContext);
|
|
3345
3401
|
this.enterOuterAlt(localContext, 8);
|
|
3346
3402
|
{
|
|
3347
|
-
this.state =
|
|
3403
|
+
this.state = 790;
|
|
3348
3404
|
this.match(GenericSqlParser.BINARY_LITERAL);
|
|
3349
3405
|
}
|
|
3350
3406
|
break;
|
|
@@ -3369,36 +3425,36 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3369
3425
|
}
|
|
3370
3426
|
identifier() {
|
|
3371
3427
|
let localContext = new IdentifierContext(this.context, this.state);
|
|
3372
|
-
this.enterRule(localContext,
|
|
3428
|
+
this.enterRule(localContext, 98, GenericSqlParser.RULE_identifier);
|
|
3373
3429
|
try {
|
|
3374
|
-
this.state =
|
|
3430
|
+
this.state = 798;
|
|
3375
3431
|
this.errorHandler.sync(this);
|
|
3376
3432
|
switch (this.tokenStream.LA(1)) {
|
|
3377
3433
|
case GenericSqlParser.IDENTIFIER:
|
|
3378
3434
|
this.enterOuterAlt(localContext, 1);
|
|
3379
3435
|
{
|
|
3380
|
-
this.state =
|
|
3436
|
+
this.state = 793;
|
|
3381
3437
|
this.match(GenericSqlParser.IDENTIFIER);
|
|
3382
3438
|
}
|
|
3383
3439
|
break;
|
|
3384
3440
|
case GenericSqlParser.DIGIT_IDENTIFIER:
|
|
3385
3441
|
this.enterOuterAlt(localContext, 2);
|
|
3386
3442
|
{
|
|
3387
|
-
this.state =
|
|
3443
|
+
this.state = 794;
|
|
3388
3444
|
this.match(GenericSqlParser.DIGIT_IDENTIFIER);
|
|
3389
3445
|
}
|
|
3390
3446
|
break;
|
|
3391
3447
|
case GenericSqlParser.QUOTED_IDENTIFIER:
|
|
3392
3448
|
this.enterOuterAlt(localContext, 3);
|
|
3393
3449
|
{
|
|
3394
|
-
this.state =
|
|
3450
|
+
this.state = 795;
|
|
3395
3451
|
this.match(GenericSqlParser.QUOTED_IDENTIFIER);
|
|
3396
3452
|
}
|
|
3397
3453
|
break;
|
|
3398
3454
|
case GenericSqlParser.BACKQUOTED_IDENTIFIER:
|
|
3399
3455
|
this.enterOuterAlt(localContext, 4);
|
|
3400
3456
|
{
|
|
3401
|
-
this.state =
|
|
3457
|
+
this.state = 796;
|
|
3402
3458
|
this.match(GenericSqlParser.BACKQUOTED_IDENTIFIER);
|
|
3403
3459
|
}
|
|
3404
3460
|
break;
|
|
@@ -3447,7 +3503,7 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3447
3503
|
case GenericSqlParser.KW_VARBINARY:
|
|
3448
3504
|
this.enterOuterAlt(localContext, 5);
|
|
3449
3505
|
{
|
|
3450
|
-
this.state =
|
|
3506
|
+
this.state = 797;
|
|
3451
3507
|
this.nonReserved();
|
|
3452
3508
|
}
|
|
3453
3509
|
break;
|
|
@@ -3472,30 +3528,30 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3472
3528
|
}
|
|
3473
3529
|
qualifiedName() {
|
|
3474
3530
|
let localContext = new QualifiedNameContext(this.context, this.state);
|
|
3475
|
-
this.enterRule(localContext,
|
|
3531
|
+
this.enterRule(localContext, 100, GenericSqlParser.RULE_qualifiedName);
|
|
3476
3532
|
try {
|
|
3477
3533
|
let alternative;
|
|
3478
3534
|
this.enterOuterAlt(localContext, 1);
|
|
3479
3535
|
{
|
|
3480
|
-
this.state =
|
|
3536
|
+
this.state = 800;
|
|
3481
3537
|
this.identifier();
|
|
3482
|
-
this.state =
|
|
3538
|
+
this.state = 805;
|
|
3483
3539
|
this.errorHandler.sync(this);
|
|
3484
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
3540
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 96, this.context);
|
|
3485
3541
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3486
3542
|
if (alternative === 1) {
|
|
3487
3543
|
{
|
|
3488
3544
|
{
|
|
3489
|
-
this.state =
|
|
3545
|
+
this.state = 801;
|
|
3490
3546
|
this.match(GenericSqlParser.T__3);
|
|
3491
|
-
this.state =
|
|
3547
|
+
this.state = 802;
|
|
3492
3548
|
this.identifier();
|
|
3493
3549
|
}
|
|
3494
3550
|
}
|
|
3495
3551
|
}
|
|
3496
|
-
this.state =
|
|
3552
|
+
this.state = 807;
|
|
3497
3553
|
this.errorHandler.sync(this);
|
|
3498
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
3554
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 96, this.context);
|
|
3499
3555
|
}
|
|
3500
3556
|
}
|
|
3501
3557
|
}
|
|
@@ -3516,11 +3572,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3516
3572
|
}
|
|
3517
3573
|
columnRef() {
|
|
3518
3574
|
let localContext = new ColumnRefContext(this.context, this.state);
|
|
3519
|
-
this.enterRule(localContext,
|
|
3575
|
+
this.enterRule(localContext, 102, GenericSqlParser.RULE_columnRef);
|
|
3520
3576
|
try {
|
|
3521
3577
|
this.enterOuterAlt(localContext, 1);
|
|
3522
3578
|
{
|
|
3523
|
-
this.state =
|
|
3579
|
+
this.state = 808;
|
|
3524
3580
|
this.identifier();
|
|
3525
3581
|
}
|
|
3526
3582
|
}
|
|
@@ -3541,11 +3597,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3541
3597
|
}
|
|
3542
3598
|
tableName() {
|
|
3543
3599
|
let localContext = new TableNameContext(this.context, this.state);
|
|
3544
|
-
this.enterRule(localContext,
|
|
3600
|
+
this.enterRule(localContext, 104, GenericSqlParser.RULE_tableName);
|
|
3545
3601
|
try {
|
|
3546
3602
|
this.enterOuterAlt(localContext, 1);
|
|
3547
3603
|
{
|
|
3548
|
-
this.state =
|
|
3604
|
+
this.state = 810;
|
|
3549
3605
|
this.qualifiedName();
|
|
3550
3606
|
}
|
|
3551
3607
|
}
|
|
@@ -3566,11 +3622,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3566
3622
|
}
|
|
3567
3623
|
tableNameCreate() {
|
|
3568
3624
|
let localContext = new TableNameCreateContext(this.context, this.state);
|
|
3569
|
-
this.enterRule(localContext,
|
|
3625
|
+
this.enterRule(localContext, 106, GenericSqlParser.RULE_tableNameCreate);
|
|
3570
3626
|
try {
|
|
3571
3627
|
this.enterOuterAlt(localContext, 1);
|
|
3572
3628
|
{
|
|
3573
|
-
this.state =
|
|
3629
|
+
this.state = 812;
|
|
3574
3630
|
this.qualifiedName();
|
|
3575
3631
|
}
|
|
3576
3632
|
}
|
|
@@ -3591,12 +3647,12 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3591
3647
|
}
|
|
3592
3648
|
nonReserved() {
|
|
3593
3649
|
let localContext = new NonReservedContext(this.context, this.state);
|
|
3594
|
-
this.enterRule(localContext,
|
|
3650
|
+
this.enterRule(localContext, 108, GenericSqlParser.RULE_nonReserved);
|
|
3595
3651
|
let _la;
|
|
3596
3652
|
try {
|
|
3597
3653
|
this.enterOuterAlt(localContext, 1);
|
|
3598
3654
|
{
|
|
3599
|
-
this.state =
|
|
3655
|
+
this.state = 814;
|
|
3600
3656
|
_la = this.tokenStream.LA(1);
|
|
3601
3657
|
if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & 2939483232) !== 0) || ((((_la - 38)) & ~0x1F) === 0 && ((1 << (_la - 38)) & 509358375) !== 0) || ((((_la - 70)) & ~0x1F) === 0 && ((1 << (_la - 70)) & 3536161) !== 0))) {
|
|
3602
3658
|
this.errorHandler.recoverInline(this);
|
|
@@ -3624,11 +3680,11 @@ export class GenericSqlParser extends SQLParserBase {
|
|
|
3624
3680
|
}
|
|
3625
3681
|
sempred(localContext, ruleIndex, predIndex) {
|
|
3626
3682
|
switch (ruleIndex) {
|
|
3627
|
-
case
|
|
3683
|
+
case 15:
|
|
3628
3684
|
return this.relation_sempred(localContext, predIndex);
|
|
3629
|
-
case
|
|
3685
|
+
case 37:
|
|
3630
3686
|
return this.booleanExpression_sempred(localContext, predIndex);
|
|
3631
|
-
case
|
|
3687
|
+
case 41:
|
|
3632
3688
|
return this.valueExpression_sempred(localContext, predIndex);
|
|
3633
3689
|
}
|
|
3634
3690
|
return true;
|
|
@@ -3799,53 +3855,54 @@ GenericSqlParser.RULE_statement = 3;
|
|
|
3799
3855
|
GenericSqlParser.RULE_queryStatement = 4;
|
|
3800
3856
|
GenericSqlParser.RULE_withClause = 5;
|
|
3801
3857
|
GenericSqlParser.RULE_namedQuery = 6;
|
|
3802
|
-
GenericSqlParser.
|
|
3803
|
-
GenericSqlParser.
|
|
3804
|
-
GenericSqlParser.
|
|
3805
|
-
GenericSqlParser.
|
|
3806
|
-
GenericSqlParser.
|
|
3807
|
-
GenericSqlParser.
|
|
3808
|
-
GenericSqlParser.
|
|
3809
|
-
GenericSqlParser.
|
|
3810
|
-
GenericSqlParser.
|
|
3811
|
-
GenericSqlParser.
|
|
3812
|
-
GenericSqlParser.
|
|
3813
|
-
GenericSqlParser.
|
|
3814
|
-
GenericSqlParser.
|
|
3815
|
-
GenericSqlParser.
|
|
3816
|
-
GenericSqlParser.
|
|
3817
|
-
GenericSqlParser.
|
|
3818
|
-
GenericSqlParser.
|
|
3819
|
-
GenericSqlParser.
|
|
3820
|
-
GenericSqlParser.
|
|
3821
|
-
GenericSqlParser.
|
|
3822
|
-
GenericSqlParser.
|
|
3823
|
-
GenericSqlParser.
|
|
3824
|
-
GenericSqlParser.
|
|
3825
|
-
GenericSqlParser.
|
|
3826
|
-
GenericSqlParser.
|
|
3827
|
-
GenericSqlParser.
|
|
3828
|
-
GenericSqlParser.
|
|
3829
|
-
GenericSqlParser.
|
|
3830
|
-
GenericSqlParser.
|
|
3831
|
-
GenericSqlParser.
|
|
3832
|
-
GenericSqlParser.
|
|
3833
|
-
GenericSqlParser.
|
|
3834
|
-
GenericSqlParser.
|
|
3835
|
-
GenericSqlParser.
|
|
3836
|
-
GenericSqlParser.
|
|
3837
|
-
GenericSqlParser.
|
|
3838
|
-
GenericSqlParser.
|
|
3839
|
-
GenericSqlParser.
|
|
3840
|
-
GenericSqlParser.
|
|
3841
|
-
GenericSqlParser.
|
|
3842
|
-
GenericSqlParser.
|
|
3843
|
-
GenericSqlParser.
|
|
3844
|
-
GenericSqlParser.
|
|
3845
|
-
GenericSqlParser.
|
|
3846
|
-
GenericSqlParser.
|
|
3847
|
-
GenericSqlParser.
|
|
3848
|
-
GenericSqlParser.
|
|
3858
|
+
GenericSqlParser.RULE_cteColumnList = 7;
|
|
3859
|
+
GenericSqlParser.RULE_queryNoWith = 8;
|
|
3860
|
+
GenericSqlParser.RULE_queryTerm = 9;
|
|
3861
|
+
GenericSqlParser.RULE_queryPrimary = 10;
|
|
3862
|
+
GenericSqlParser.RULE_querySpecification = 11;
|
|
3863
|
+
GenericSqlParser.RULE_setQuantifier = 12;
|
|
3864
|
+
GenericSqlParser.RULE_selectItem = 13;
|
|
3865
|
+
GenericSqlParser.RULE_fromClause = 14;
|
|
3866
|
+
GenericSqlParser.RULE_relation = 15;
|
|
3867
|
+
GenericSqlParser.RULE_joinType = 16;
|
|
3868
|
+
GenericSqlParser.RULE_aliasedRelation = 17;
|
|
3869
|
+
GenericSqlParser.RULE_relationPrimary = 18;
|
|
3870
|
+
GenericSqlParser.RULE_whereClause = 19;
|
|
3871
|
+
GenericSqlParser.RULE_groupByClause = 20;
|
|
3872
|
+
GenericSqlParser.RULE_havingClause = 21;
|
|
3873
|
+
GenericSqlParser.RULE_orderByClause = 22;
|
|
3874
|
+
GenericSqlParser.RULE_sortItem = 23;
|
|
3875
|
+
GenericSqlParser.RULE_limitClause = 24;
|
|
3876
|
+
GenericSqlParser.RULE_insertStatement = 25;
|
|
3877
|
+
GenericSqlParser.RULE_columnList = 26;
|
|
3878
|
+
GenericSqlParser.RULE_updateStatement = 27;
|
|
3879
|
+
GenericSqlParser.RULE_updateAssignment = 28;
|
|
3880
|
+
GenericSqlParser.RULE_deleteStatement = 29;
|
|
3881
|
+
GenericSqlParser.RULE_createTableStatement = 30;
|
|
3882
|
+
GenericSqlParser.RULE_tableElement = 31;
|
|
3883
|
+
GenericSqlParser.RULE_columnDefinition = 32;
|
|
3884
|
+
GenericSqlParser.RULE_tableConstraint = 33;
|
|
3885
|
+
GenericSqlParser.RULE_alterTableStatement = 34;
|
|
3886
|
+
GenericSqlParser.RULE_dropTableStatement = 35;
|
|
3887
|
+
GenericSqlParser.RULE_expression = 36;
|
|
3888
|
+
GenericSqlParser.RULE_booleanExpression = 37;
|
|
3889
|
+
GenericSqlParser.RULE_predicatedExpression = 38;
|
|
3890
|
+
GenericSqlParser.RULE_predicate = 39;
|
|
3891
|
+
GenericSqlParser.RULE_comparisonOperator = 40;
|
|
3892
|
+
GenericSqlParser.RULE_valueExpression = 41;
|
|
3893
|
+
GenericSqlParser.RULE_primaryExpression = 42;
|
|
3894
|
+
GenericSqlParser.RULE_whenClause = 43;
|
|
3895
|
+
GenericSqlParser.RULE_subqueryExpression = 44;
|
|
3896
|
+
GenericSqlParser.RULE_dataType = 45;
|
|
3897
|
+
GenericSqlParser.RULE_properties = 46;
|
|
3898
|
+
GenericSqlParser.RULE_property = 47;
|
|
3899
|
+
GenericSqlParser.RULE_literal = 48;
|
|
3900
|
+
GenericSqlParser.RULE_identifier = 49;
|
|
3901
|
+
GenericSqlParser.RULE_qualifiedName = 50;
|
|
3902
|
+
GenericSqlParser.RULE_columnRef = 51;
|
|
3903
|
+
GenericSqlParser.RULE_tableName = 52;
|
|
3904
|
+
GenericSqlParser.RULE_tableNameCreate = 53;
|
|
3905
|
+
GenericSqlParser.RULE_nonReserved = 54;
|
|
3849
3906
|
GenericSqlParser.literalNames = [
|
|
3850
3907
|
null, "','", "'('", "')'", "'.'", "'ADD'", "'ALL'", "'ALTER'", "'AND'",
|
|
3851
3908
|
"'AS'", "'ASC'", "'BETWEEN'", "'BIGINT'", "'BINARY'", "'BOOLEAN'",
|
|
@@ -3891,13 +3948,13 @@ GenericSqlParser.symbolicNames = [
|
|
|
3891
3948
|
];
|
|
3892
3949
|
GenericSqlParser.ruleNames = [
|
|
3893
3950
|
"program", "statements", "singleStatement", "statement", "queryStatement",
|
|
3894
|
-
"withClause", "namedQuery", "
|
|
3895
|
-
"
|
|
3896
|
-
"relation", "joinType", "aliasedRelation", "relationPrimary",
|
|
3897
|
-
"
|
|
3898
|
-
"
|
|
3899
|
-
"
|
|
3900
|
-
"tableConstraint", "alterTableStatement", "dropTableStatement",
|
|
3951
|
+
"withClause", "namedQuery", "cteColumnList", "queryNoWith", "queryTerm",
|
|
3952
|
+
"queryPrimary", "querySpecification", "setQuantifier", "selectItem",
|
|
3953
|
+
"fromClause", "relation", "joinType", "aliasedRelation", "relationPrimary",
|
|
3954
|
+
"whereClause", "groupByClause", "havingClause", "orderByClause",
|
|
3955
|
+
"sortItem", "limitClause", "insertStatement", "columnList", "updateStatement",
|
|
3956
|
+
"updateAssignment", "deleteStatement", "createTableStatement", "tableElement",
|
|
3957
|
+
"columnDefinition", "tableConstraint", "alterTableStatement", "dropTableStatement",
|
|
3901
3958
|
"expression", "booleanExpression", "predicatedExpression", "predicate",
|
|
3902
3959
|
"comparisonOperator", "valueExpression", "primaryExpression", "whenClause",
|
|
3903
3960
|
"subqueryExpression", "dataType", "properties", "property", "literal",
|
|
@@ -3905,7 +3962,7 @@ GenericSqlParser.ruleNames = [
|
|
|
3905
3962
|
"nonReserved",
|
|
3906
3963
|
];
|
|
3907
3964
|
GenericSqlParser._serializedATN = [
|
|
3908
|
-
4, 1, 122,
|
|
3965
|
+
4, 1, 122, 817, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6,
|
|
3909
3966
|
7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7,
|
|
3910
3967
|
13, 2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2,
|
|
3911
3968
|
20, 7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7,
|
|
@@ -3913,305 +3970,311 @@ GenericSqlParser._serializedATN = [
|
|
|
3913
3970
|
33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7,
|
|
3914
3971
|
39, 2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2,
|
|
3915
3972
|
46, 7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, 52, 7,
|
|
3916
|
-
52, 2, 53, 7, 53, 1, 0, 5, 0,
|
|
3917
|
-
2, 1, 2, 3, 2,
|
|
3918
|
-
4,
|
|
3919
|
-
5, 12, 5,
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
10,
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
13,
|
|
3927
|
-
14, 5, 14,
|
|
3928
|
-
15,
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
19, 1,
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
25,
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
1, 29, 1, 29, 1, 29,
|
|
3940
|
-
|
|
3941
|
-
|
|
3942
|
-
32,
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3952
|
-
1,
|
|
3953
|
-
1, 37, 3, 37,
|
|
3954
|
-
|
|
3955
|
-
|
|
3956
|
-
|
|
3957
|
-
|
|
3958
|
-
1,
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3962
|
-
|
|
3963
|
-
|
|
3964
|
-
|
|
3965
|
-
|
|
3966
|
-
1,
|
|
3967
|
-
|
|
3968
|
-
1,
|
|
3969
|
-
1,
|
|
3970
|
-
|
|
3971
|
-
8,
|
|
3972
|
-
|
|
3973
|
-
|
|
3974
|
-
1,
|
|
3975
|
-
|
|
3976
|
-
|
|
3977
|
-
|
|
3978
|
-
|
|
3979
|
-
|
|
3980
|
-
|
|
3981
|
-
|
|
3982
|
-
|
|
3983
|
-
|
|
3984
|
-
|
|
3985
|
-
1, 0, 0, 0,
|
|
3986
|
-
0,
|
|
3987
|
-
|
|
3988
|
-
1, 0, 0, 0,
|
|
3989
|
-
0, 0,
|
|
3990
|
-
|
|
3991
|
-
1, 0, 0, 0,
|
|
3992
|
-
0, 0,
|
|
3993
|
-
|
|
3994
|
-
1, 0, 0, 0,
|
|
3995
|
-
0, 0,
|
|
3996
|
-
0, 0, 0,
|
|
3997
|
-
|
|
3998
|
-
|
|
3999
|
-
0, 0,
|
|
4000
|
-
|
|
4001
|
-
|
|
4002
|
-
|
|
4003
|
-
0,
|
|
4004
|
-
0, 0, 0,
|
|
4005
|
-
|
|
4006
|
-
|
|
4007
|
-
1, 0, 0, 0,
|
|
4008
|
-
|
|
4009
|
-
|
|
4010
|
-
|
|
4011
|
-
1, 0, 0, 0,
|
|
4012
|
-
|
|
4013
|
-
|
|
4014
|
-
|
|
4015
|
-
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
1, 0, 0, 0,
|
|
4019
|
-
|
|
4020
|
-
|
|
4021
|
-
|
|
4022
|
-
|
|
4023
|
-
3,
|
|
4024
|
-
|
|
4025
|
-
|
|
4026
|
-
1, 0, 0, 0,
|
|
4027
|
-
1, 0, 0, 0,
|
|
4028
|
-
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4035
|
-
|
|
4036
|
-
|
|
4037
|
-
0, 0,
|
|
4038
|
-
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
0, 0, 0,
|
|
4042
|
-
0, 0, 0,
|
|
4043
|
-
0, 0, 262,
|
|
4044
|
-
0, 0, 0, 265, 266, 1, 0, 0, 0, 266,
|
|
4045
|
-
|
|
4046
|
-
|
|
4047
|
-
1, 0, 0, 0, 275,
|
|
4048
|
-
1, 0, 0, 0,
|
|
4049
|
-
|
|
4050
|
-
|
|
4051
|
-
|
|
4052
|
-
5,
|
|
4053
|
-
|
|
4054
|
-
|
|
4055
|
-
|
|
4056
|
-
|
|
4057
|
-
|
|
4058
|
-
|
|
4059
|
-
|
|
4060
|
-
|
|
4061
|
-
|
|
4062
|
-
|
|
4063
|
-
|
|
4064
|
-
|
|
4065
|
-
|
|
4066
|
-
|
|
4067
|
-
|
|
4068
|
-
|
|
4069
|
-
1, 0, 0, 0,
|
|
4070
|
-
|
|
4071
|
-
|
|
4072
|
-
|
|
4073
|
-
0, 0,
|
|
4074
|
-
|
|
4075
|
-
|
|
4076
|
-
|
|
4077
|
-
|
|
4078
|
-
|
|
4079
|
-
|
|
4080
|
-
|
|
4081
|
-
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
|
|
4086
|
-
|
|
4087
|
-
0,
|
|
4088
|
-
0,
|
|
4089
|
-
0,
|
|
4090
|
-
|
|
4091
|
-
0, 0,
|
|
4092
|
-
|
|
4093
|
-
|
|
4094
|
-
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
|
|
4098
|
-
0,
|
|
4099
|
-
0, 0,
|
|
4100
|
-
0, 0, 460,
|
|
4101
|
-
0, 0,
|
|
4102
|
-
0, 0,
|
|
4103
|
-
|
|
4104
|
-
|
|
4105
|
-
472, 1, 0, 0, 0,
|
|
4106
|
-
|
|
4107
|
-
|
|
4108
|
-
0,
|
|
4109
|
-
|
|
4110
|
-
5,
|
|
4111
|
-
|
|
4112
|
-
|
|
4113
|
-
|
|
4114
|
-
|
|
4115
|
-
|
|
4116
|
-
|
|
4117
|
-
|
|
4118
|
-
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
1, 0, 0, 0,
|
|
4122
|
-
3,
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4126
|
-
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
|
|
4131
|
-
|
|
4132
|
-
|
|
4133
|
-
|
|
4134
|
-
|
|
4135
|
-
|
|
4136
|
-
1, 0, 0, 0,
|
|
4137
|
-
|
|
4138
|
-
|
|
4139
|
-
|
|
4140
|
-
|
|
4141
|
-
|
|
4142
|
-
|
|
4143
|
-
|
|
4144
|
-
|
|
4145
|
-
|
|
4146
|
-
|
|
4147
|
-
|
|
4148
|
-
|
|
4149
|
-
0, 0,
|
|
4150
|
-
|
|
4151
|
-
|
|
4152
|
-
1, 0, 0, 0,
|
|
4153
|
-
|
|
4154
|
-
|
|
4155
|
-
|
|
4156
|
-
|
|
4157
|
-
|
|
4158
|
-
|
|
4159
|
-
|
|
4160
|
-
|
|
4161
|
-
|
|
4162
|
-
|
|
4163
|
-
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
|
|
4168
|
-
|
|
4169
|
-
|
|
4170
|
-
|
|
4171
|
-
|
|
4172
|
-
|
|
4173
|
-
|
|
4174
|
-
0, 0,
|
|
4175
|
-
|
|
4176
|
-
0, 0,
|
|
4177
|
-
|
|
4178
|
-
|
|
4179
|
-
|
|
4180
|
-
|
|
4181
|
-
|
|
4182
|
-
|
|
4183
|
-
|
|
4184
|
-
5,
|
|
4185
|
-
|
|
4186
|
-
1, 0, 0, 0,
|
|
4187
|
-
5,
|
|
4188
|
-
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4192
|
-
|
|
4193
|
-
5,
|
|
4194
|
-
|
|
4195
|
-
|
|
4196
|
-
|
|
4197
|
-
|
|
4198
|
-
|
|
4199
|
-
|
|
4200
|
-
1, 0, 0, 0,
|
|
4201
|
-
1, 0, 0, 0, 776,
|
|
4202
|
-
|
|
4203
|
-
|
|
4204
|
-
|
|
4205
|
-
|
|
4206
|
-
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
|
|
4210
|
-
|
|
4211
|
-
|
|
4212
|
-
|
|
4213
|
-
|
|
4214
|
-
|
|
3973
|
+
52, 2, 53, 7, 53, 2, 54, 7, 54, 1, 0, 5, 0, 112, 8, 0, 10, 0, 12, 0, 115, 9, 0, 1, 0, 1, 0,
|
|
3974
|
+
1, 1, 1, 1, 1, 2, 1, 2, 3, 2, 123, 8, 2, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 3, 132,
|
|
3975
|
+
8, 3, 1, 4, 3, 4, 135, 8, 4, 1, 4, 1, 4, 1, 5, 1, 5, 3, 5, 141, 8, 5, 1, 5, 1, 5, 1, 5, 5, 5,
|
|
3976
|
+
146, 8, 5, 10, 5, 12, 5, 149, 9, 5, 1, 6, 1, 6, 3, 6, 153, 8, 6, 1, 6, 1, 6, 1, 6, 1, 6, 1,
|
|
3977
|
+
6, 1, 7, 1, 7, 1, 7, 1, 7, 5, 7, 164, 8, 7, 10, 7, 12, 7, 167, 9, 7, 1, 7, 1, 7, 1, 8, 1, 8,
|
|
3978
|
+
1, 8, 3, 8, 174, 8, 8, 1, 8, 5, 8, 177, 8, 8, 10, 8, 12, 8, 180, 9, 8, 1, 9, 1, 9, 1, 10, 1,
|
|
3979
|
+
10, 1, 10, 1, 10, 1, 10, 3, 10, 189, 8, 10, 1, 11, 1, 11, 3, 11, 193, 8, 11, 1, 11, 1, 11,
|
|
3980
|
+
1, 11, 5, 11, 198, 8, 11, 10, 11, 12, 11, 201, 9, 11, 1, 11, 3, 11, 204, 8, 11, 1, 11,
|
|
3981
|
+
3, 11, 207, 8, 11, 1, 11, 3, 11, 210, 8, 11, 1, 11, 3, 11, 213, 8, 11, 1, 11, 3, 11, 216,
|
|
3982
|
+
8, 11, 1, 11, 3, 11, 219, 8, 11, 1, 12, 1, 12, 1, 13, 1, 13, 3, 13, 225, 8, 13, 1, 13, 3,
|
|
3983
|
+
13, 228, 8, 13, 1, 13, 1, 13, 1, 13, 1, 13, 1, 13, 3, 13, 235, 8, 13, 1, 14, 1, 14, 1, 14,
|
|
3984
|
+
1, 14, 5, 14, 241, 8, 14, 10, 14, 12, 14, 244, 9, 14, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15,
|
|
3985
|
+
1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 5, 15, 256, 8, 15, 10, 15, 12, 15, 259, 9, 15, 1, 16,
|
|
3986
|
+
3, 16, 262, 8, 16, 1, 16, 1, 16, 3, 16, 266, 8, 16, 1, 16, 1, 16, 3, 16, 270, 8, 16, 1,
|
|
3987
|
+
16, 1, 16, 3, 16, 274, 8, 16, 1, 16, 3, 16, 277, 8, 16, 1, 17, 1, 17, 3, 17, 281, 8, 17,
|
|
3988
|
+
1, 17, 3, 17, 284, 8, 17, 1, 18, 1, 18, 1, 18, 1, 18, 1, 18, 3, 18, 291, 8, 18, 1, 19, 1,
|
|
3989
|
+
19, 1, 19, 1, 20, 1, 20, 1, 20, 3, 20, 299, 8, 20, 1, 20, 1, 20, 1, 20, 5, 20, 304, 8, 20,
|
|
3990
|
+
10, 20, 12, 20, 307, 9, 20, 1, 21, 1, 21, 1, 21, 1, 22, 1, 22, 1, 22, 1, 22, 1, 22, 5, 22,
|
|
3991
|
+
317, 8, 22, 10, 22, 12, 22, 320, 9, 22, 1, 23, 1, 23, 3, 23, 324, 8, 23, 1, 23, 1, 23,
|
|
3992
|
+
3, 23, 328, 8, 23, 1, 24, 1, 24, 1, 24, 1, 24, 3, 24, 334, 8, 24, 1, 25, 1, 25, 1, 25, 1,
|
|
3993
|
+
25, 3, 25, 340, 8, 25, 1, 25, 1, 25, 1, 26, 1, 26, 1, 26, 1, 26, 5, 26, 348, 8, 26, 10,
|
|
3994
|
+
26, 12, 26, 351, 9, 26, 1, 26, 1, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 5, 27, 361,
|
|
3995
|
+
8, 27, 10, 27, 12, 27, 364, 9, 27, 1, 27, 3, 27, 367, 8, 27, 1, 28, 1, 28, 1, 28, 1, 28,
|
|
3996
|
+
1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 377, 8, 29, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 3, 30,
|
|
3997
|
+
384, 8, 30, 1, 30, 1, 30, 1, 30, 1, 30, 1, 30, 5, 30, 391, 8, 30, 10, 30, 12, 30, 394,
|
|
3998
|
+
9, 30, 1, 30, 1, 30, 1, 30, 3, 30, 399, 8, 30, 1, 31, 1, 31, 3, 31, 403, 8, 31, 1, 32, 1,
|
|
3999
|
+
32, 1, 32, 1, 32, 3, 32, 409, 8, 32, 1, 32, 1, 32, 3, 32, 413, 8, 32, 1, 32, 1, 32, 3, 32,
|
|
4000
|
+
417, 8, 32, 1, 33, 1, 33, 3, 33, 421, 8, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 5,
|
|
4001
|
+
33, 429, 8, 33, 10, 33, 12, 33, 432, 9, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1,
|
|
4002
|
+
33, 5, 33, 441, 8, 33, 10, 33, 12, 33, 444, 9, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1,
|
|
4003
|
+
33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 5, 33, 459, 8, 33, 10, 33, 12, 33,
|
|
4004
|
+
462, 9, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33, 5, 33, 471, 8, 33, 10, 33,
|
|
4005
|
+
12, 33, 474, 9, 33, 1, 33, 1, 33, 3, 33, 478, 8, 33, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34,
|
|
4006
|
+
484, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 492, 8, 34, 1, 34, 1, 34, 1,
|
|
4007
|
+
34, 1, 34, 1, 34, 3, 34, 499, 8, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1,
|
|
4008
|
+
34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 1, 34, 3, 34, 518, 8, 34, 1,
|
|
4009
|
+
35, 1, 35, 1, 35, 1, 35, 3, 35, 524, 8, 35, 1, 35, 1, 35, 1, 36, 1, 36, 1, 37, 1, 37, 1,
|
|
4010
|
+
37, 1, 37, 3, 37, 534, 8, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 5, 37, 542, 8, 37,
|
|
4011
|
+
10, 37, 12, 37, 545, 9, 37, 1, 38, 1, 38, 3, 38, 549, 8, 38, 1, 39, 1, 39, 1, 39, 1, 39,
|
|
4012
|
+
3, 39, 555, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 5, 39, 562, 8, 39, 10, 39, 12, 39,
|
|
4013
|
+
565, 9, 39, 1, 39, 1, 39, 1, 39, 3, 39, 570, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1,
|
|
4014
|
+
39, 3, 39, 578, 8, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 1, 39, 3, 39, 586, 8, 39, 1, 39,
|
|
4015
|
+
1, 39, 1, 39, 1, 39, 3, 39, 592, 8, 39, 1, 39, 1, 39, 3, 39, 596, 8, 39, 1, 39, 1, 39, 1,
|
|
4016
|
+
39, 3, 39, 601, 8, 39, 1, 39, 1, 39, 1, 39, 3, 39, 606, 8, 39, 1, 40, 1, 40, 1, 41, 1, 41,
|
|
4017
|
+
1, 41, 1, 41, 3, 41, 614, 8, 41, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41, 1, 41,
|
|
4018
|
+
1, 41, 5, 41, 625, 8, 41, 10, 41, 12, 41, 628, 9, 41, 1, 42, 1, 42, 1, 42, 1, 42, 3, 42,
|
|
4019
|
+
634, 8, 42, 1, 42, 1, 42, 1, 42, 5, 42, 639, 8, 42, 10, 42, 12, 42, 642, 9, 42, 3, 42,
|
|
4020
|
+
644, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 4, 42, 650, 8, 42, 11, 42, 12, 42, 651, 1, 42,
|
|
4021
|
+
1, 42, 3, 42, 656, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 4, 42, 663, 8, 42, 11, 42,
|
|
4022
|
+
12, 42, 664, 1, 42, 1, 42, 3, 42, 669, 8, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42,
|
|
4023
|
+
1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 5, 42, 685, 8, 42, 10, 42, 12, 42,
|
|
4024
|
+
688, 9, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42,
|
|
4025
|
+
1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 1, 42, 3, 42, 710, 8, 42, 1, 43,
|
|
4026
|
+
1, 43, 1, 43, 1, 43, 1, 43, 1, 44, 1, 44, 1, 44, 1, 44, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45,
|
|
4027
|
+
1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 3, 45, 734, 8, 45, 1, 45, 3, 45,
|
|
4028
|
+
737, 8, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 3, 45, 744, 8, 45, 1, 45, 3, 45, 747, 8,
|
|
4029
|
+
45, 1, 45, 1, 45, 1, 45, 1, 45, 3, 45, 753, 8, 45, 1, 45, 1, 45, 1, 45, 1, 45, 3, 45, 759,
|
|
4030
|
+
8, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 1, 45, 3, 45, 767, 8, 45, 1, 46, 1, 46, 1, 46,
|
|
4031
|
+
1, 46, 5, 46, 773, 8, 46, 10, 46, 12, 46, 776, 9, 46, 1, 46, 1, 46, 1, 47, 1, 47, 1, 47,
|
|
4032
|
+
1, 47, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 1, 48, 3, 48, 792, 8, 48, 1, 49,
|
|
4033
|
+
1, 49, 1, 49, 1, 49, 1, 49, 3, 49, 799, 8, 49, 1, 50, 1, 50, 1, 50, 5, 50, 804, 8, 50, 10,
|
|
4034
|
+
50, 12, 50, 807, 9, 50, 1, 51, 1, 51, 1, 52, 1, 52, 1, 53, 1, 53, 1, 54, 1, 54, 1, 54, 0,
|
|
4035
|
+
3, 30, 74, 82, 55, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36,
|
|
4036
|
+
38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80,
|
|
4037
|
+
82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108, 0, 8, 3, 0, 36, 36, 52,
|
|
4038
|
+
52, 87, 87, 2, 0, 6, 6, 30, 30, 2, 0, 10, 10, 29, 29, 2, 0, 39, 39, 57, 57, 1, 0, 95, 100,
|
|
4039
|
+
1, 0, 101, 102, 1, 0, 103, 105, 22, 0, 5, 6, 10, 10, 12, 15, 18, 18, 20, 21, 24, 27, 29,
|
|
4040
|
+
29, 31, 31, 38, 40, 43, 43, 46, 46, 50, 51, 56, 58, 60, 60, 63, 66, 70, 70, 75, 75, 78,
|
|
4041
|
+
78, 80, 80, 82, 86, 88, 88, 90, 91, 912, 0, 113, 1, 0, 0, 0, 2, 118, 1, 0, 0, 0, 4, 120,
|
|
4042
|
+
1, 0, 0, 0, 6, 131, 1, 0, 0, 0, 8, 134, 1, 0, 0, 0, 10, 138, 1, 0, 0, 0, 12, 150, 1, 0, 0,
|
|
4043
|
+
0, 14, 159, 1, 0, 0, 0, 16, 170, 1, 0, 0, 0, 18, 181, 1, 0, 0, 0, 20, 188, 1, 0, 0, 0, 22,
|
|
4044
|
+
190, 1, 0, 0, 0, 24, 220, 1, 0, 0, 0, 26, 234, 1, 0, 0, 0, 28, 236, 1, 0, 0, 0, 30, 245,
|
|
4045
|
+
1, 0, 0, 0, 32, 276, 1, 0, 0, 0, 34, 278, 1, 0, 0, 0, 36, 290, 1, 0, 0, 0, 38, 292, 1, 0,
|
|
4046
|
+
0, 0, 40, 295, 1, 0, 0, 0, 42, 308, 1, 0, 0, 0, 44, 311, 1, 0, 0, 0, 46, 321, 1, 0, 0, 0,
|
|
4047
|
+
48, 329, 1, 0, 0, 0, 50, 335, 1, 0, 0, 0, 52, 343, 1, 0, 0, 0, 54, 354, 1, 0, 0, 0, 56, 368,
|
|
4048
|
+
1, 0, 0, 0, 58, 372, 1, 0, 0, 0, 60, 378, 1, 0, 0, 0, 62, 402, 1, 0, 0, 0, 64, 404, 1, 0,
|
|
4049
|
+
0, 0, 66, 420, 1, 0, 0, 0, 68, 479, 1, 0, 0, 0, 70, 519, 1, 0, 0, 0, 72, 527, 1, 0, 0, 0,
|
|
4050
|
+
74, 533, 1, 0, 0, 0, 76, 546, 1, 0, 0, 0, 78, 605, 1, 0, 0, 0, 80, 607, 1, 0, 0, 0, 82, 613,
|
|
4051
|
+
1, 0, 0, 0, 84, 709, 1, 0, 0, 0, 86, 711, 1, 0, 0, 0, 88, 716, 1, 0, 0, 0, 90, 766, 1, 0,
|
|
4052
|
+
0, 0, 92, 768, 1, 0, 0, 0, 94, 779, 1, 0, 0, 0, 96, 791, 1, 0, 0, 0, 98, 798, 1, 0, 0, 0,
|
|
4053
|
+
100, 800, 1, 0, 0, 0, 102, 808, 1, 0, 0, 0, 104, 810, 1, 0, 0, 0, 106, 812, 1, 0, 0, 0,
|
|
4054
|
+
108, 814, 1, 0, 0, 0, 110, 112, 3, 2, 1, 0, 111, 110, 1, 0, 0, 0, 112, 115, 1, 0, 0, 0,
|
|
4055
|
+
113, 111, 1, 0, 0, 0, 113, 114, 1, 0, 0, 0, 114, 116, 1, 0, 0, 0, 115, 113, 1, 0, 0, 0,
|
|
4056
|
+
116, 117, 5, 0, 0, 1, 117, 1, 1, 0, 0, 0, 118, 119, 3, 4, 2, 0, 119, 3, 1, 0, 0, 0, 120,
|
|
4057
|
+
122, 3, 6, 3, 0, 121, 123, 5, 108, 0, 0, 122, 121, 1, 0, 0, 0, 122, 123, 1, 0, 0, 0, 123,
|
|
4058
|
+
5, 1, 0, 0, 0, 124, 132, 3, 8, 4, 0, 125, 132, 3, 50, 25, 0, 126, 132, 3, 54, 27, 0, 127,
|
|
4059
|
+
132, 3, 58, 29, 0, 128, 132, 3, 60, 30, 0, 129, 132, 3, 68, 34, 0, 130, 132, 3, 70, 35,
|
|
4060
|
+
0, 131, 124, 1, 0, 0, 0, 131, 125, 1, 0, 0, 0, 131, 126, 1, 0, 0, 0, 131, 127, 1, 0, 0,
|
|
4061
|
+
0, 131, 128, 1, 0, 0, 0, 131, 129, 1, 0, 0, 0, 131, 130, 1, 0, 0, 0, 132, 7, 1, 0, 0, 0,
|
|
4062
|
+
133, 135, 3, 10, 5, 0, 134, 133, 1, 0, 0, 0, 134, 135, 1, 0, 0, 0, 135, 136, 1, 0, 0, 0,
|
|
4063
|
+
136, 137, 3, 16, 8, 0, 137, 9, 1, 0, 0, 0, 138, 140, 5, 94, 0, 0, 139, 141, 5, 72, 0, 0,
|
|
4064
|
+
140, 139, 1, 0, 0, 0, 140, 141, 1, 0, 0, 0, 141, 142, 1, 0, 0, 0, 142, 147, 3, 12, 6, 0,
|
|
4065
|
+
143, 144, 5, 1, 0, 0, 144, 146, 3, 12, 6, 0, 145, 143, 1, 0, 0, 0, 146, 149, 1, 0, 0, 0,
|
|
4066
|
+
147, 145, 1, 0, 0, 0, 147, 148, 1, 0, 0, 0, 148, 11, 1, 0, 0, 0, 149, 147, 1, 0, 0, 0, 150,
|
|
4067
|
+
152, 3, 98, 49, 0, 151, 153, 3, 14, 7, 0, 152, 151, 1, 0, 0, 0, 152, 153, 1, 0, 0, 0, 153,
|
|
4068
|
+
154, 1, 0, 0, 0, 154, 155, 5, 9, 0, 0, 155, 156, 5, 2, 0, 0, 156, 157, 3, 8, 4, 0, 157,
|
|
4069
|
+
158, 5, 3, 0, 0, 158, 13, 1, 0, 0, 0, 159, 160, 5, 2, 0, 0, 160, 165, 3, 98, 49, 0, 161,
|
|
4070
|
+
162, 5, 1, 0, 0, 162, 164, 3, 98, 49, 0, 163, 161, 1, 0, 0, 0, 164, 167, 1, 0, 0, 0, 165,
|
|
4071
|
+
163, 1, 0, 0, 0, 165, 166, 1, 0, 0, 0, 166, 168, 1, 0, 0, 0, 167, 165, 1, 0, 0, 0, 168,
|
|
4072
|
+
169, 5, 3, 0, 0, 169, 15, 1, 0, 0, 0, 170, 178, 3, 18, 9, 0, 171, 173, 7, 0, 0, 0, 172,
|
|
4073
|
+
174, 5, 6, 0, 0, 173, 172, 1, 0, 0, 0, 173, 174, 1, 0, 0, 0, 174, 175, 1, 0, 0, 0, 175,
|
|
4074
|
+
177, 3, 18, 9, 0, 176, 171, 1, 0, 0, 0, 177, 180, 1, 0, 0, 0, 178, 176, 1, 0, 0, 0, 178,
|
|
4075
|
+
179, 1, 0, 0, 0, 179, 17, 1, 0, 0, 0, 180, 178, 1, 0, 0, 0, 181, 182, 3, 20, 10, 0, 182,
|
|
4076
|
+
19, 1, 0, 0, 0, 183, 189, 3, 22, 11, 0, 184, 185, 5, 2, 0, 0, 185, 186, 3, 8, 4, 0, 186,
|
|
4077
|
+
187, 5, 3, 0, 0, 187, 189, 1, 0, 0, 0, 188, 183, 1, 0, 0, 0, 188, 184, 1, 0, 0, 0, 189,
|
|
4078
|
+
21, 1, 0, 0, 0, 190, 192, 5, 76, 0, 0, 191, 193, 3, 24, 12, 0, 192, 191, 1, 0, 0, 0, 192,
|
|
4079
|
+
193, 1, 0, 0, 0, 193, 194, 1, 0, 0, 0, 194, 199, 3, 26, 13, 0, 195, 196, 5, 1, 0, 0, 196,
|
|
4080
|
+
198, 3, 26, 13, 0, 197, 195, 1, 0, 0, 0, 198, 201, 1, 0, 0, 0, 199, 197, 1, 0, 0, 0, 199,
|
|
4081
|
+
200, 1, 0, 0, 0, 200, 203, 1, 0, 0, 0, 201, 199, 1, 0, 0, 0, 202, 204, 3, 28, 14, 0, 203,
|
|
4082
|
+
202, 1, 0, 0, 0, 203, 204, 1, 0, 0, 0, 204, 206, 1, 0, 0, 0, 205, 207, 3, 38, 19, 0, 206,
|
|
4083
|
+
205, 1, 0, 0, 0, 206, 207, 1, 0, 0, 0, 207, 209, 1, 0, 0, 0, 208, 210, 3, 40, 20, 0, 209,
|
|
4084
|
+
208, 1, 0, 0, 0, 209, 210, 1, 0, 0, 0, 210, 212, 1, 0, 0, 0, 211, 213, 3, 42, 21, 0, 212,
|
|
4085
|
+
211, 1, 0, 0, 0, 212, 213, 1, 0, 0, 0, 213, 215, 1, 0, 0, 0, 214, 216, 3, 44, 22, 0, 215,
|
|
4086
|
+
214, 1, 0, 0, 0, 215, 216, 1, 0, 0, 0, 216, 218, 1, 0, 0, 0, 217, 219, 3, 48, 24, 0, 218,
|
|
4087
|
+
217, 1, 0, 0, 0, 218, 219, 1, 0, 0, 0, 219, 23, 1, 0, 0, 0, 220, 221, 7, 1, 0, 0, 221, 25,
|
|
4088
|
+
1, 0, 0, 0, 222, 227, 3, 72, 36, 0, 223, 225, 5, 9, 0, 0, 224, 223, 1, 0, 0, 0, 224, 225,
|
|
4089
|
+
1, 0, 0, 0, 225, 226, 1, 0, 0, 0, 226, 228, 3, 98, 49, 0, 227, 224, 1, 0, 0, 0, 227, 228,
|
|
4090
|
+
1, 0, 0, 0, 228, 235, 1, 0, 0, 0, 229, 230, 3, 100, 50, 0, 230, 231, 5, 4, 0, 0, 231, 232,
|
|
4091
|
+
5, 103, 0, 0, 232, 235, 1, 0, 0, 0, 233, 235, 5, 103, 0, 0, 234, 222, 1, 0, 0, 0, 234,
|
|
4092
|
+
229, 1, 0, 0, 0, 234, 233, 1, 0, 0, 0, 235, 27, 1, 0, 0, 0, 236, 237, 5, 42, 0, 0, 237,
|
|
4093
|
+
242, 3, 30, 15, 0, 238, 239, 5, 1, 0, 0, 239, 241, 3, 30, 15, 0, 240, 238, 1, 0, 0, 0,
|
|
4094
|
+
241, 244, 1, 0, 0, 0, 242, 240, 1, 0, 0, 0, 242, 243, 1, 0, 0, 0, 243, 29, 1, 0, 0, 0, 244,
|
|
4095
|
+
242, 1, 0, 0, 0, 245, 246, 6, 15, -1, 0, 246, 247, 3, 34, 17, 0, 247, 257, 1, 0, 0, 0,
|
|
4096
|
+
248, 249, 10, 2, 0, 0, 249, 250, 3, 32, 16, 0, 250, 251, 5, 55, 0, 0, 251, 252, 3, 30,
|
|
4097
|
+
15, 0, 252, 253, 5, 67, 0, 0, 253, 254, 3, 72, 36, 0, 254, 256, 1, 0, 0, 0, 255, 248,
|
|
4098
|
+
1, 0, 0, 0, 256, 259, 1, 0, 0, 0, 257, 255, 1, 0, 0, 0, 257, 258, 1, 0, 0, 0, 258, 31, 1,
|
|
4099
|
+
0, 0, 0, 259, 257, 1, 0, 0, 0, 260, 262, 5, 48, 0, 0, 261, 260, 1, 0, 0, 0, 261, 262, 1,
|
|
4100
|
+
0, 0, 0, 262, 277, 1, 0, 0, 0, 263, 265, 5, 58, 0, 0, 264, 266, 5, 70, 0, 0, 265, 264,
|
|
4101
|
+
1, 0, 0, 0, 265, 266, 1, 0, 0, 0, 266, 277, 1, 0, 0, 0, 267, 269, 5, 75, 0, 0, 268, 270,
|
|
4102
|
+
5, 70, 0, 0, 269, 268, 1, 0, 0, 0, 269, 270, 1, 0, 0, 0, 270, 277, 1, 0, 0, 0, 271, 273,
|
|
4103
|
+
5, 43, 0, 0, 272, 274, 5, 70, 0, 0, 273, 272, 1, 0, 0, 0, 273, 274, 1, 0, 0, 0, 274, 277,
|
|
4104
|
+
1, 0, 0, 0, 275, 277, 5, 24, 0, 0, 276, 261, 1, 0, 0, 0, 276, 263, 1, 0, 0, 0, 276, 267,
|
|
4105
|
+
1, 0, 0, 0, 276, 271, 1, 0, 0, 0, 276, 275, 1, 0, 0, 0, 277, 33, 1, 0, 0, 0, 278, 283, 3,
|
|
4106
|
+
36, 18, 0, 279, 281, 5, 9, 0, 0, 280, 279, 1, 0, 0, 0, 280, 281, 1, 0, 0, 0, 281, 282,
|
|
4107
|
+
1, 0, 0, 0, 282, 284, 3, 98, 49, 0, 283, 280, 1, 0, 0, 0, 283, 284, 1, 0, 0, 0, 284, 35,
|
|
4108
|
+
1, 0, 0, 0, 285, 291, 3, 104, 52, 0, 286, 287, 5, 2, 0, 0, 287, 288, 3, 8, 4, 0, 288, 289,
|
|
4109
|
+
5, 3, 0, 0, 289, 291, 1, 0, 0, 0, 290, 285, 1, 0, 0, 0, 290, 286, 1, 0, 0, 0, 291, 37, 1,
|
|
4110
|
+
0, 0, 0, 292, 293, 5, 93, 0, 0, 293, 294, 3, 72, 36, 0, 294, 39, 1, 0, 0, 0, 295, 296,
|
|
4111
|
+
5, 44, 0, 0, 296, 298, 5, 15, 0, 0, 297, 299, 3, 24, 12, 0, 298, 297, 1, 0, 0, 0, 298,
|
|
4112
|
+
299, 1, 0, 0, 0, 299, 300, 1, 0, 0, 0, 300, 305, 3, 72, 36, 0, 301, 302, 5, 1, 0, 0, 302,
|
|
4113
|
+
304, 3, 72, 36, 0, 303, 301, 1, 0, 0, 0, 304, 307, 1, 0, 0, 0, 305, 303, 1, 0, 0, 0, 305,
|
|
4114
|
+
306, 1, 0, 0, 0, 306, 41, 1, 0, 0, 0, 307, 305, 1, 0, 0, 0, 308, 309, 5, 45, 0, 0, 309,
|
|
4115
|
+
310, 3, 72, 36, 0, 310, 43, 1, 0, 0, 0, 311, 312, 5, 69, 0, 0, 312, 313, 5, 15, 0, 0, 313,
|
|
4116
|
+
318, 3, 46, 23, 0, 314, 315, 5, 1, 0, 0, 315, 317, 3, 46, 23, 0, 316, 314, 1, 0, 0, 0,
|
|
4117
|
+
317, 320, 1, 0, 0, 0, 318, 316, 1, 0, 0, 0, 318, 319, 1, 0, 0, 0, 319, 45, 1, 0, 0, 0, 320,
|
|
4118
|
+
318, 1, 0, 0, 0, 321, 323, 3, 72, 36, 0, 322, 324, 7, 2, 0, 0, 323, 322, 1, 0, 0, 0, 323,
|
|
4119
|
+
324, 1, 0, 0, 0, 324, 327, 1, 0, 0, 0, 325, 326, 5, 64, 0, 0, 326, 328, 7, 3, 0, 0, 327,
|
|
4120
|
+
325, 1, 0, 0, 0, 327, 328, 1, 0, 0, 0, 328, 47, 1, 0, 0, 0, 329, 330, 5, 60, 0, 0, 330,
|
|
4121
|
+
333, 3, 72, 36, 0, 331, 332, 5, 66, 0, 0, 332, 334, 3, 72, 36, 0, 333, 331, 1, 0, 0, 0,
|
|
4122
|
+
333, 334, 1, 0, 0, 0, 334, 49, 1, 0, 0, 0, 335, 336, 5, 49, 0, 0, 336, 337, 5, 53, 0, 0,
|
|
4123
|
+
337, 339, 3, 104, 52, 0, 338, 340, 3, 52, 26, 0, 339, 338, 1, 0, 0, 0, 339, 340, 1, 0,
|
|
4124
|
+
0, 0, 340, 341, 1, 0, 0, 0, 341, 342, 3, 8, 4, 0, 342, 51, 1, 0, 0, 0, 343, 344, 5, 2, 0,
|
|
4125
|
+
0, 344, 349, 3, 102, 51, 0, 345, 346, 5, 1, 0, 0, 346, 348, 3, 102, 51, 0, 347, 345,
|
|
4126
|
+
1, 0, 0, 0, 348, 351, 1, 0, 0, 0, 349, 347, 1, 0, 0, 0, 349, 350, 1, 0, 0, 0, 350, 352,
|
|
4127
|
+
1, 0, 0, 0, 351, 349, 1, 0, 0, 0, 352, 353, 5, 3, 0, 0, 353, 53, 1, 0, 0, 0, 354, 355, 5,
|
|
4128
|
+
89, 0, 0, 355, 356, 3, 104, 52, 0, 356, 357, 5, 77, 0, 0, 357, 362, 3, 56, 28, 0, 358,
|
|
4129
|
+
359, 5, 1, 0, 0, 359, 361, 3, 56, 28, 0, 360, 358, 1, 0, 0, 0, 361, 364, 1, 0, 0, 0, 362,
|
|
4130
|
+
360, 1, 0, 0, 0, 362, 363, 1, 0, 0, 0, 363, 366, 1, 0, 0, 0, 364, 362, 1, 0, 0, 0, 365,
|
|
4131
|
+
367, 3, 38, 19, 0, 366, 365, 1, 0, 0, 0, 366, 367, 1, 0, 0, 0, 367, 55, 1, 0, 0, 0, 368,
|
|
4132
|
+
369, 3, 102, 51, 0, 369, 370, 5, 95, 0, 0, 370, 371, 3, 72, 36, 0, 371, 57, 1, 0, 0, 0,
|
|
4133
|
+
372, 373, 5, 28, 0, 0, 373, 374, 5, 42, 0, 0, 374, 376, 3, 104, 52, 0, 375, 377, 3, 38,
|
|
4134
|
+
19, 0, 376, 375, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 59, 1, 0, 0, 0, 378, 379, 5, 23,
|
|
4135
|
+
0, 0, 379, 383, 5, 79, 0, 0, 380, 381, 5, 46, 0, 0, 381, 382, 5, 61, 0, 0, 382, 384, 5,
|
|
4136
|
+
37, 0, 0, 383, 380, 1, 0, 0, 0, 383, 384, 1, 0, 0, 0, 384, 385, 1, 0, 0, 0, 385, 386, 3,
|
|
4137
|
+
106, 53, 0, 386, 387, 5, 2, 0, 0, 387, 392, 3, 62, 31, 0, 388, 389, 5, 1, 0, 0, 389, 391,
|
|
4138
|
+
3, 62, 31, 0, 390, 388, 1, 0, 0, 0, 391, 394, 1, 0, 0, 0, 392, 390, 1, 0, 0, 0, 392, 393,
|
|
4139
|
+
1, 0, 0, 0, 393, 395, 1, 0, 0, 0, 394, 392, 1, 0, 0, 0, 395, 398, 5, 3, 0, 0, 396, 397,
|
|
4140
|
+
5, 94, 0, 0, 397, 399, 3, 92, 46, 0, 398, 396, 1, 0, 0, 0, 398, 399, 1, 0, 0, 0, 399, 61,
|
|
4141
|
+
1, 0, 0, 0, 400, 403, 3, 64, 32, 0, 401, 403, 3, 66, 33, 0, 402, 400, 1, 0, 0, 0, 402,
|
|
4142
|
+
401, 1, 0, 0, 0, 403, 63, 1, 0, 0, 0, 404, 405, 3, 102, 51, 0, 405, 408, 3, 90, 45, 0,
|
|
4143
|
+
406, 407, 5, 61, 0, 0, 407, 409, 5, 62, 0, 0, 408, 406, 1, 0, 0, 0, 408, 409, 1, 0, 0,
|
|
4144
|
+
0, 409, 412, 1, 0, 0, 0, 410, 411, 5, 27, 0, 0, 411, 413, 3, 72, 36, 0, 412, 410, 1, 0,
|
|
4145
|
+
0, 0, 412, 413, 1, 0, 0, 0, 413, 416, 1, 0, 0, 0, 414, 415, 5, 71, 0, 0, 415, 417, 5, 56,
|
|
4146
|
+
0, 0, 416, 414, 1, 0, 0, 0, 416, 417, 1, 0, 0, 0, 417, 65, 1, 0, 0, 0, 418, 419, 5, 22,
|
|
4147
|
+
0, 0, 419, 421, 3, 98, 49, 0, 420, 418, 1, 0, 0, 0, 420, 421, 1, 0, 0, 0, 421, 477, 1,
|
|
4148
|
+
0, 0, 0, 422, 423, 5, 71, 0, 0, 423, 424, 5, 56, 0, 0, 424, 425, 5, 2, 0, 0, 425, 430,
|
|
4149
|
+
3, 102, 51, 0, 426, 427, 5, 1, 0, 0, 427, 429, 3, 102, 51, 0, 428, 426, 1, 0, 0, 0, 429,
|
|
4150
|
+
432, 1, 0, 0, 0, 430, 428, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, 431, 433, 1, 0, 0, 0, 432,
|
|
4151
|
+
430, 1, 0, 0, 0, 433, 434, 5, 3, 0, 0, 434, 478, 1, 0, 0, 0, 435, 436, 5, 88, 0, 0, 436,
|
|
4152
|
+
437, 5, 2, 0, 0, 437, 442, 3, 102, 51, 0, 438, 439, 5, 1, 0, 0, 439, 441, 3, 102, 51,
|
|
4153
|
+
0, 440, 438, 1, 0, 0, 0, 441, 444, 1, 0, 0, 0, 442, 440, 1, 0, 0, 0, 442, 443, 1, 0, 0,
|
|
4154
|
+
0, 443, 445, 1, 0, 0, 0, 444, 442, 1, 0, 0, 0, 445, 446, 5, 3, 0, 0, 446, 478, 1, 0, 0,
|
|
4155
|
+
0, 447, 448, 5, 19, 0, 0, 448, 449, 5, 2, 0, 0, 449, 450, 3, 72, 36, 0, 450, 451, 5, 3,
|
|
4156
|
+
0, 0, 451, 478, 1, 0, 0, 0, 452, 453, 5, 41, 0, 0, 453, 454, 5, 56, 0, 0, 454, 455, 5,
|
|
4157
|
+
2, 0, 0, 455, 460, 3, 102, 51, 0, 456, 457, 5, 1, 0, 0, 457, 459, 3, 102, 51, 0, 458,
|
|
4158
|
+
456, 1, 0, 0, 0, 459, 462, 1, 0, 0, 0, 460, 458, 1, 0, 0, 0, 460, 461, 1, 0, 0, 0, 461,
|
|
4159
|
+
463, 1, 0, 0, 0, 462, 460, 1, 0, 0, 0, 463, 464, 5, 3, 0, 0, 464, 465, 5, 73, 0, 0, 465,
|
|
4160
|
+
466, 3, 104, 52, 0, 466, 467, 5, 2, 0, 0, 467, 472, 3, 102, 51, 0, 468, 469, 5, 1, 0,
|
|
4161
|
+
0, 469, 471, 3, 102, 51, 0, 470, 468, 1, 0, 0, 0, 471, 474, 1, 0, 0, 0, 472, 470, 1, 0,
|
|
4162
|
+
0, 0, 472, 473, 1, 0, 0, 0, 473, 475, 1, 0, 0, 0, 474, 472, 1, 0, 0, 0, 475, 476, 5, 3,
|
|
4163
|
+
0, 0, 476, 478, 1, 0, 0, 0, 477, 422, 1, 0, 0, 0, 477, 435, 1, 0, 0, 0, 477, 447, 1, 0,
|
|
4164
|
+
0, 0, 477, 452, 1, 0, 0, 0, 478, 67, 1, 0, 0, 0, 479, 480, 5, 7, 0, 0, 480, 483, 5, 79,
|
|
4165
|
+
0, 0, 481, 482, 5, 46, 0, 0, 482, 484, 5, 37, 0, 0, 483, 481, 1, 0, 0, 0, 483, 484, 1,
|
|
4166
|
+
0, 0, 0, 484, 485, 1, 0, 0, 0, 485, 517, 3, 104, 52, 0, 486, 487, 5, 5, 0, 0, 487, 491,
|
|
4167
|
+
5, 21, 0, 0, 488, 489, 5, 46, 0, 0, 489, 490, 5, 61, 0, 0, 490, 492, 5, 37, 0, 0, 491,
|
|
4168
|
+
488, 1, 0, 0, 0, 491, 492, 1, 0, 0, 0, 492, 493, 1, 0, 0, 0, 493, 518, 3, 64, 32, 0, 494,
|
|
4169
|
+
495, 5, 32, 0, 0, 495, 498, 5, 21, 0, 0, 496, 497, 5, 46, 0, 0, 497, 499, 5, 37, 0, 0,
|
|
4170
|
+
498, 496, 1, 0, 0, 0, 498, 499, 1, 0, 0, 0, 499, 500, 1, 0, 0, 0, 500, 518, 3, 102, 51,
|
|
4171
|
+
0, 501, 502, 5, 74, 0, 0, 502, 503, 5, 85, 0, 0, 503, 518, 3, 106, 53, 0, 504, 505, 5,
|
|
4172
|
+
7, 0, 0, 505, 506, 5, 21, 0, 0, 506, 507, 3, 102, 51, 0, 507, 508, 5, 77, 0, 0, 508, 509,
|
|
4173
|
+
5, 27, 0, 0, 509, 510, 3, 72, 36, 0, 510, 518, 1, 0, 0, 0, 511, 512, 5, 7, 0, 0, 512, 513,
|
|
4174
|
+
5, 21, 0, 0, 513, 514, 3, 102, 51, 0, 514, 515, 5, 32, 0, 0, 515, 516, 5, 27, 0, 0, 516,
|
|
4175
|
+
518, 1, 0, 0, 0, 517, 486, 1, 0, 0, 0, 517, 494, 1, 0, 0, 0, 517, 501, 1, 0, 0, 0, 517,
|
|
4176
|
+
504, 1, 0, 0, 0, 517, 511, 1, 0, 0, 0, 518, 69, 1, 0, 0, 0, 519, 520, 5, 32, 0, 0, 520,
|
|
4177
|
+
523, 5, 79, 0, 0, 521, 522, 5, 46, 0, 0, 522, 524, 5, 37, 0, 0, 523, 521, 1, 0, 0, 0, 523,
|
|
4178
|
+
524, 1, 0, 0, 0, 524, 525, 1, 0, 0, 0, 525, 526, 3, 104, 52, 0, 526, 71, 1, 0, 0, 0, 527,
|
|
4179
|
+
528, 3, 74, 37, 0, 528, 73, 1, 0, 0, 0, 529, 530, 6, 37, -1, 0, 530, 534, 3, 76, 38, 0,
|
|
4180
|
+
531, 532, 5, 61, 0, 0, 532, 534, 3, 74, 37, 3, 533, 529, 1, 0, 0, 0, 533, 531, 1, 0, 0,
|
|
4181
|
+
0, 534, 543, 1, 0, 0, 0, 535, 536, 10, 2, 0, 0, 536, 537, 5, 8, 0, 0, 537, 542, 3, 74,
|
|
4182
|
+
37, 3, 538, 539, 10, 1, 0, 0, 539, 540, 5, 68, 0, 0, 540, 542, 3, 74, 37, 2, 541, 535,
|
|
4183
|
+
1, 0, 0, 0, 541, 538, 1, 0, 0, 0, 542, 545, 1, 0, 0, 0, 543, 541, 1, 0, 0, 0, 543, 544,
|
|
4184
|
+
1, 0, 0, 0, 544, 75, 1, 0, 0, 0, 545, 543, 1, 0, 0, 0, 546, 548, 3, 82, 41, 0, 547, 549,
|
|
4185
|
+
3, 78, 39, 0, 548, 547, 1, 0, 0, 0, 548, 549, 1, 0, 0, 0, 549, 77, 1, 0, 0, 0, 550, 551,
|
|
4186
|
+
3, 80, 40, 0, 551, 552, 3, 82, 41, 0, 552, 606, 1, 0, 0, 0, 553, 555, 5, 61, 0, 0, 554,
|
|
4187
|
+
553, 1, 0, 0, 0, 554, 555, 1, 0, 0, 0, 555, 556, 1, 0, 0, 0, 556, 557, 5, 47, 0, 0, 557,
|
|
4188
|
+
558, 5, 2, 0, 0, 558, 563, 3, 72, 36, 0, 559, 560, 5, 1, 0, 0, 560, 562, 3, 72, 36, 0,
|
|
4189
|
+
561, 559, 1, 0, 0, 0, 562, 565, 1, 0, 0, 0, 563, 561, 1, 0, 0, 0, 563, 564, 1, 0, 0, 0,
|
|
4190
|
+
564, 566, 1, 0, 0, 0, 565, 563, 1, 0, 0, 0, 566, 567, 5, 3, 0, 0, 567, 606, 1, 0, 0, 0,
|
|
4191
|
+
568, 570, 5, 61, 0, 0, 569, 568, 1, 0, 0, 0, 569, 570, 1, 0, 0, 0, 570, 571, 1, 0, 0, 0,
|
|
4192
|
+
571, 572, 5, 47, 0, 0, 572, 573, 5, 2, 0, 0, 573, 574, 3, 8, 4, 0, 574, 575, 5, 3, 0, 0,
|
|
4193
|
+
575, 606, 1, 0, 0, 0, 576, 578, 5, 61, 0, 0, 577, 576, 1, 0, 0, 0, 577, 578, 1, 0, 0, 0,
|
|
4194
|
+
578, 579, 1, 0, 0, 0, 579, 580, 5, 11, 0, 0, 580, 581, 3, 82, 41, 0, 581, 582, 5, 8, 0,
|
|
4195
|
+
0, 582, 583, 3, 82, 41, 0, 583, 606, 1, 0, 0, 0, 584, 586, 5, 61, 0, 0, 585, 584, 1, 0,
|
|
4196
|
+
0, 0, 585, 586, 1, 0, 0, 0, 586, 587, 1, 0, 0, 0, 587, 588, 5, 59, 0, 0, 588, 591, 3, 82,
|
|
4197
|
+
41, 0, 589, 590, 5, 35, 0, 0, 590, 592, 3, 82, 41, 0, 591, 589, 1, 0, 0, 0, 591, 592,
|
|
4198
|
+
1, 0, 0, 0, 592, 606, 1, 0, 0, 0, 593, 595, 5, 54, 0, 0, 594, 596, 5, 61, 0, 0, 595, 594,
|
|
4199
|
+
1, 0, 0, 0, 595, 596, 1, 0, 0, 0, 596, 597, 1, 0, 0, 0, 597, 606, 5, 62, 0, 0, 598, 600,
|
|
4200
|
+
5, 54, 0, 0, 599, 601, 5, 61, 0, 0, 600, 599, 1, 0, 0, 0, 600, 601, 1, 0, 0, 0, 601, 602,
|
|
4201
|
+
1, 0, 0, 0, 602, 603, 5, 30, 0, 0, 603, 604, 5, 42, 0, 0, 604, 606, 3, 82, 41, 0, 605,
|
|
4202
|
+
550, 1, 0, 0, 0, 605, 554, 1, 0, 0, 0, 605, 569, 1, 0, 0, 0, 605, 577, 1, 0, 0, 0, 605,
|
|
4203
|
+
585, 1, 0, 0, 0, 605, 593, 1, 0, 0, 0, 605, 598, 1, 0, 0, 0, 606, 79, 1, 0, 0, 0, 607, 608,
|
|
4204
|
+
7, 4, 0, 0, 608, 81, 1, 0, 0, 0, 609, 610, 6, 41, -1, 0, 610, 614, 3, 84, 42, 0, 611, 612,
|
|
4205
|
+
7, 5, 0, 0, 612, 614, 3, 82, 41, 4, 613, 609, 1, 0, 0, 0, 613, 611, 1, 0, 0, 0, 614, 626,
|
|
4206
|
+
1, 0, 0, 0, 615, 616, 10, 3, 0, 0, 616, 617, 7, 6, 0, 0, 617, 625, 3, 82, 41, 4, 618, 619,
|
|
4207
|
+
10, 2, 0, 0, 619, 620, 7, 5, 0, 0, 620, 625, 3, 82, 41, 3, 621, 622, 10, 1, 0, 0, 622,
|
|
4208
|
+
623, 5, 106, 0, 0, 623, 625, 3, 82, 41, 2, 624, 615, 1, 0, 0, 0, 624, 618, 1, 0, 0, 0,
|
|
4209
|
+
624, 621, 1, 0, 0, 0, 625, 628, 1, 0, 0, 0, 626, 624, 1, 0, 0, 0, 626, 627, 1, 0, 0, 0,
|
|
4210
|
+
627, 83, 1, 0, 0, 0, 628, 626, 1, 0, 0, 0, 629, 710, 3, 96, 48, 0, 630, 631, 3, 100, 50,
|
|
4211
|
+
0, 631, 643, 5, 2, 0, 0, 632, 634, 3, 24, 12, 0, 633, 632, 1, 0, 0, 0, 633, 634, 1, 0,
|
|
4212
|
+
0, 0, 634, 635, 1, 0, 0, 0, 635, 640, 3, 72, 36, 0, 636, 637, 5, 1, 0, 0, 637, 639, 3,
|
|
4213
|
+
72, 36, 0, 638, 636, 1, 0, 0, 0, 639, 642, 1, 0, 0, 0, 640, 638, 1, 0, 0, 0, 640, 641,
|
|
4214
|
+
1, 0, 0, 0, 641, 644, 1, 0, 0, 0, 642, 640, 1, 0, 0, 0, 643, 633, 1, 0, 0, 0, 643, 644,
|
|
4215
|
+
1, 0, 0, 0, 644, 645, 1, 0, 0, 0, 645, 646, 5, 3, 0, 0, 646, 710, 1, 0, 0, 0, 647, 649,
|
|
4216
|
+
5, 16, 0, 0, 648, 650, 3, 86, 43, 0, 649, 648, 1, 0, 0, 0, 650, 651, 1, 0, 0, 0, 651, 649,
|
|
4217
|
+
1, 0, 0, 0, 651, 652, 1, 0, 0, 0, 652, 655, 1, 0, 0, 0, 653, 654, 5, 33, 0, 0, 654, 656,
|
|
4218
|
+
3, 72, 36, 0, 655, 653, 1, 0, 0, 0, 655, 656, 1, 0, 0, 0, 656, 657, 1, 0, 0, 0, 657, 658,
|
|
4219
|
+
5, 34, 0, 0, 658, 710, 1, 0, 0, 0, 659, 660, 5, 16, 0, 0, 660, 662, 3, 72, 36, 0, 661,
|
|
4220
|
+
663, 3, 86, 43, 0, 662, 661, 1, 0, 0, 0, 663, 664, 1, 0, 0, 0, 664, 662, 1, 0, 0, 0, 664,
|
|
4221
|
+
665, 1, 0, 0, 0, 665, 668, 1, 0, 0, 0, 666, 667, 5, 33, 0, 0, 667, 669, 3, 72, 36, 0, 668,
|
|
4222
|
+
666, 1, 0, 0, 0, 668, 669, 1, 0, 0, 0, 669, 670, 1, 0, 0, 0, 670, 671, 5, 34, 0, 0, 671,
|
|
4223
|
+
710, 1, 0, 0, 0, 672, 673, 5, 17, 0, 0, 673, 674, 5, 2, 0, 0, 674, 675, 3, 72, 36, 0, 675,
|
|
4224
|
+
676, 5, 9, 0, 0, 676, 677, 3, 90, 45, 0, 677, 678, 5, 3, 0, 0, 678, 710, 1, 0, 0, 0, 679,
|
|
4225
|
+
680, 5, 20, 0, 0, 680, 681, 5, 2, 0, 0, 681, 686, 3, 72, 36, 0, 682, 683, 5, 1, 0, 0, 683,
|
|
4226
|
+
685, 3, 72, 36, 0, 684, 682, 1, 0, 0, 0, 685, 688, 1, 0, 0, 0, 686, 684, 1, 0, 0, 0, 686,
|
|
4227
|
+
687, 1, 0, 0, 0, 687, 689, 1, 0, 0, 0, 688, 686, 1, 0, 0, 0, 689, 690, 5, 3, 0, 0, 690,
|
|
4228
|
+
710, 1, 0, 0, 0, 691, 692, 5, 63, 0, 0, 692, 693, 5, 2, 0, 0, 693, 694, 3, 82, 41, 0, 694,
|
|
4229
|
+
695, 5, 1, 0, 0, 695, 696, 3, 82, 41, 0, 696, 697, 5, 3, 0, 0, 697, 710, 1, 0, 0, 0, 698,
|
|
4230
|
+
699, 5, 2, 0, 0, 699, 700, 3, 72, 36, 0, 700, 701, 5, 3, 0, 0, 701, 710, 1, 0, 0, 0, 702,
|
|
4231
|
+
703, 5, 37, 0, 0, 703, 704, 5, 2, 0, 0, 704, 705, 3, 8, 4, 0, 705, 706, 5, 3, 0, 0, 706,
|
|
4232
|
+
710, 1, 0, 0, 0, 707, 710, 3, 88, 44, 0, 708, 710, 3, 100, 50, 0, 709, 629, 1, 0, 0, 0,
|
|
4233
|
+
709, 630, 1, 0, 0, 0, 709, 647, 1, 0, 0, 0, 709, 659, 1, 0, 0, 0, 709, 672, 1, 0, 0, 0,
|
|
4234
|
+
709, 679, 1, 0, 0, 0, 709, 691, 1, 0, 0, 0, 709, 698, 1, 0, 0, 0, 709, 702, 1, 0, 0, 0,
|
|
4235
|
+
709, 707, 1, 0, 0, 0, 709, 708, 1, 0, 0, 0, 710, 85, 1, 0, 0, 0, 711, 712, 5, 92, 0, 0,
|
|
4236
|
+
712, 713, 3, 72, 36, 0, 713, 714, 5, 81, 0, 0, 714, 715, 3, 72, 36, 0, 715, 87, 1, 0,
|
|
4237
|
+
0, 0, 716, 717, 5, 2, 0, 0, 717, 718, 3, 8, 4, 0, 718, 719, 5, 3, 0, 0, 719, 89, 1, 0, 0,
|
|
4238
|
+
0, 720, 767, 5, 14, 0, 0, 721, 767, 5, 84, 0, 0, 722, 767, 5, 78, 0, 0, 723, 767, 5, 50,
|
|
4239
|
+
0, 0, 724, 767, 5, 51, 0, 0, 725, 767, 5, 12, 0, 0, 726, 767, 5, 40, 0, 0, 727, 767, 5,
|
|
4240
|
+
31, 0, 0, 728, 736, 5, 26, 0, 0, 729, 730, 5, 2, 0, 0, 730, 733, 5, 111, 0, 0, 731, 732,
|
|
4241
|
+
5, 1, 0, 0, 732, 734, 5, 111, 0, 0, 733, 731, 1, 0, 0, 0, 733, 734, 1, 0, 0, 0, 734, 735,
|
|
4242
|
+
1, 0, 0, 0, 735, 737, 5, 3, 0, 0, 736, 729, 1, 0, 0, 0, 736, 737, 1, 0, 0, 0, 737, 767,
|
|
4243
|
+
1, 0, 0, 0, 738, 746, 5, 65, 0, 0, 739, 740, 5, 2, 0, 0, 740, 743, 5, 111, 0, 0, 741, 742,
|
|
4244
|
+
5, 1, 0, 0, 742, 744, 5, 111, 0, 0, 743, 741, 1, 0, 0, 0, 743, 744, 1, 0, 0, 0, 744, 745,
|
|
4245
|
+
1, 0, 0, 0, 745, 747, 5, 3, 0, 0, 746, 739, 1, 0, 0, 0, 746, 747, 1, 0, 0, 0, 747, 767,
|
|
4246
|
+
1, 0, 0, 0, 748, 752, 5, 90, 0, 0, 749, 750, 5, 2, 0, 0, 750, 751, 5, 111, 0, 0, 751, 753,
|
|
4247
|
+
5, 3, 0, 0, 752, 749, 1, 0, 0, 0, 752, 753, 1, 0, 0, 0, 753, 767, 1, 0, 0, 0, 754, 758,
|
|
4248
|
+
5, 18, 0, 0, 755, 756, 5, 2, 0, 0, 756, 757, 5, 111, 0, 0, 757, 759, 5, 3, 0, 0, 758, 755,
|
|
4249
|
+
1, 0, 0, 0, 758, 759, 1, 0, 0, 0, 759, 767, 1, 0, 0, 0, 760, 767, 5, 80, 0, 0, 761, 767,
|
|
4250
|
+
5, 25, 0, 0, 762, 767, 5, 82, 0, 0, 763, 767, 5, 83, 0, 0, 764, 767, 5, 13, 0, 0, 765,
|
|
4251
|
+
767, 5, 91, 0, 0, 766, 720, 1, 0, 0, 0, 766, 721, 1, 0, 0, 0, 766, 722, 1, 0, 0, 0, 766,
|
|
4252
|
+
723, 1, 0, 0, 0, 766, 724, 1, 0, 0, 0, 766, 725, 1, 0, 0, 0, 766, 726, 1, 0, 0, 0, 766,
|
|
4253
|
+
727, 1, 0, 0, 0, 766, 728, 1, 0, 0, 0, 766, 738, 1, 0, 0, 0, 766, 748, 1, 0, 0, 0, 766,
|
|
4254
|
+
754, 1, 0, 0, 0, 766, 760, 1, 0, 0, 0, 766, 761, 1, 0, 0, 0, 766, 762, 1, 0, 0, 0, 766,
|
|
4255
|
+
763, 1, 0, 0, 0, 766, 764, 1, 0, 0, 0, 766, 765, 1, 0, 0, 0, 767, 91, 1, 0, 0, 0, 768, 769,
|
|
4256
|
+
5, 2, 0, 0, 769, 774, 3, 94, 47, 0, 770, 771, 5, 1, 0, 0, 771, 773, 3, 94, 47, 0, 772,
|
|
4257
|
+
770, 1, 0, 0, 0, 773, 776, 1, 0, 0, 0, 774, 772, 1, 0, 0, 0, 774, 775, 1, 0, 0, 0, 775,
|
|
4258
|
+
777, 1, 0, 0, 0, 776, 774, 1, 0, 0, 0, 777, 778, 5, 3, 0, 0, 778, 93, 1, 0, 0, 0, 779, 780,
|
|
4259
|
+
3, 98, 49, 0, 780, 781, 5, 95, 0, 0, 781, 782, 3, 96, 48, 0, 782, 95, 1, 0, 0, 0, 783,
|
|
4260
|
+
792, 5, 62, 0, 0, 784, 792, 5, 86, 0, 0, 785, 792, 5, 38, 0, 0, 786, 792, 5, 111, 0, 0,
|
|
4261
|
+
787, 792, 5, 112, 0, 0, 788, 792, 5, 113, 0, 0, 789, 792, 5, 109, 0, 0, 790, 792, 5,
|
|
4262
|
+
110, 0, 0, 791, 783, 1, 0, 0, 0, 791, 784, 1, 0, 0, 0, 791, 785, 1, 0, 0, 0, 791, 786,
|
|
4263
|
+
1, 0, 0, 0, 791, 787, 1, 0, 0, 0, 791, 788, 1, 0, 0, 0, 791, 789, 1, 0, 0, 0, 791, 790,
|
|
4264
|
+
1, 0, 0, 0, 792, 97, 1, 0, 0, 0, 793, 799, 5, 114, 0, 0, 794, 799, 5, 115, 0, 0, 795, 799,
|
|
4265
|
+
5, 116, 0, 0, 796, 799, 5, 117, 0, 0, 797, 799, 3, 108, 54, 0, 798, 793, 1, 0, 0, 0, 798,
|
|
4266
|
+
794, 1, 0, 0, 0, 798, 795, 1, 0, 0, 0, 798, 796, 1, 0, 0, 0, 798, 797, 1, 0, 0, 0, 799,
|
|
4267
|
+
99, 1, 0, 0, 0, 800, 805, 3, 98, 49, 0, 801, 802, 5, 4, 0, 0, 802, 804, 3, 98, 49, 0, 803,
|
|
4268
|
+
801, 1, 0, 0, 0, 804, 807, 1, 0, 0, 0, 805, 803, 1, 0, 0, 0, 805, 806, 1, 0, 0, 0, 806,
|
|
4269
|
+
101, 1, 0, 0, 0, 807, 805, 1, 0, 0, 0, 808, 809, 3, 98, 49, 0, 809, 103, 1, 0, 0, 0, 810,
|
|
4270
|
+
811, 3, 100, 50, 0, 811, 105, 1, 0, 0, 0, 812, 813, 3, 100, 50, 0, 813, 107, 1, 0, 0,
|
|
4271
|
+
0, 814, 815, 7, 7, 0, 0, 815, 109, 1, 0, 0, 0, 97, 113, 122, 131, 134, 140, 147, 152,
|
|
4272
|
+
165, 173, 178, 188, 192, 199, 203, 206, 209, 212, 215, 218, 224, 227, 234, 242,
|
|
4273
|
+
257, 261, 265, 269, 273, 276, 280, 283, 290, 298, 305, 318, 323, 327, 333, 339,
|
|
4274
|
+
349, 362, 366, 376, 383, 392, 398, 402, 408, 412, 416, 420, 430, 442, 460, 472,
|
|
4275
|
+
477, 483, 491, 498, 517, 523, 533, 541, 543, 548, 554, 563, 569, 577, 585, 591,
|
|
4276
|
+
595, 600, 605, 613, 624, 626, 633, 640, 643, 651, 655, 664, 668, 686, 709, 733,
|
|
4277
|
+
736, 743, 746, 752, 758, 766, 774, 791, 798, 805
|
|
4215
4278
|
];
|
|
4216
4279
|
GenericSqlParser.vocabulary = new antlr.Vocabulary(GenericSqlParser.literalNames, GenericSqlParser.symbolicNames, []);
|
|
4217
4280
|
GenericSqlParser.decisionsToDFA = GenericSqlParser._ATN.decisionToState.map((ds, index) => new antlr.DFA(ds, index));
|
|
@@ -4594,6 +4657,9 @@ export class NamedQueryContext extends antlr.ParserRuleContext {
|
|
|
4594
4657
|
identifier() {
|
|
4595
4658
|
return this.getRuleContext(0, IdentifierContext);
|
|
4596
4659
|
}
|
|
4660
|
+
cteColumnList() {
|
|
4661
|
+
return this.getRuleContext(0, CteColumnListContext);
|
|
4662
|
+
}
|
|
4597
4663
|
get ruleIndex() {
|
|
4598
4664
|
return GenericSqlParser.RULE_namedQuery;
|
|
4599
4665
|
}
|
|
@@ -4616,6 +4682,38 @@ export class NamedQueryContext extends antlr.ParserRuleContext {
|
|
|
4616
4682
|
}
|
|
4617
4683
|
}
|
|
4618
4684
|
}
|
|
4685
|
+
export class CteColumnListContext extends antlr.ParserRuleContext {
|
|
4686
|
+
constructor(parent, invokingState) {
|
|
4687
|
+
super(parent, invokingState);
|
|
4688
|
+
}
|
|
4689
|
+
identifier(i) {
|
|
4690
|
+
if (i === undefined) {
|
|
4691
|
+
return this.getRuleContexts(IdentifierContext);
|
|
4692
|
+
}
|
|
4693
|
+
return this.getRuleContext(i, IdentifierContext);
|
|
4694
|
+
}
|
|
4695
|
+
get ruleIndex() {
|
|
4696
|
+
return GenericSqlParser.RULE_cteColumnList;
|
|
4697
|
+
}
|
|
4698
|
+
enterRule(listener) {
|
|
4699
|
+
if (listener.enterCteColumnList) {
|
|
4700
|
+
listener.enterCteColumnList(this);
|
|
4701
|
+
}
|
|
4702
|
+
}
|
|
4703
|
+
exitRule(listener) {
|
|
4704
|
+
if (listener.exitCteColumnList) {
|
|
4705
|
+
listener.exitCteColumnList(this);
|
|
4706
|
+
}
|
|
4707
|
+
}
|
|
4708
|
+
accept(visitor) {
|
|
4709
|
+
if (visitor.visitCteColumnList) {
|
|
4710
|
+
return visitor.visitCteColumnList(this);
|
|
4711
|
+
}
|
|
4712
|
+
else {
|
|
4713
|
+
return visitor.visitChildren(this);
|
|
4714
|
+
}
|
|
4715
|
+
}
|
|
4716
|
+
}
|
|
4619
4717
|
export class QueryNoWithContext extends antlr.ParserRuleContext {
|
|
4620
4718
|
constructor(parent, invokingState) {
|
|
4621
4719
|
super(parent, invokingState);
|