@webda/ql 4.0.0-beta.2 → 4.0.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +135 -2
- package/lib/WebdaQLLexer.d.ts +19 -13
- package/lib/WebdaQLLexer.d.ts.map +1 -1
- package/lib/WebdaQLLexer.js +305 -252
- package/lib/WebdaQLLexer.js.map +1 -1
- package/lib/WebdaQLParserLexer.d.ts +19 -13
- package/lib/WebdaQLParserLexer.d.ts.map +1 -1
- package/lib/WebdaQLParserLexer.js +305 -252
- package/lib/WebdaQLParserLexer.js.map +1 -1
- package/lib/WebdaQLParserListener.d.ts +89 -3
- package/lib/WebdaQLParserListener.d.ts.map +1 -1
- package/lib/WebdaQLParserListener.js +1 -1
- package/lib/WebdaQLParserListener.js.map +1 -1
- package/lib/WebdaQLParserParser.d.ts +83 -22
- package/lib/WebdaQLParserParser.d.ts.map +1 -1
- package/lib/WebdaQLParserParser.js +790 -290
- package/lib/WebdaQLParserParser.js.map +1 -1
- package/lib/WebdaQLParserVisitor.d.ts +65 -2
- package/lib/WebdaQLParserVisitor.d.ts.map +1 -1
- package/lib/WebdaQLParserVisitor.js +1 -1
- package/lib/WebdaQLParserVisitor.js.map +1 -1
- package/lib/bind.d.ts +29 -0
- package/lib/bind.d.ts.map +1 -0
- package/lib/bind.js +139 -0
- package/lib/bind.js.map +1 -0
- package/lib/bind.spec.d.ts +2 -0
- package/lib/bind.spec.d.ts.map +1 -0
- package/lib/bind.spec.js +206 -0
- package/lib/bind.spec.js.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -0
- package/lib/query.d.ts +395 -76
- package/lib/query.d.ts.map +1 -1
- package/lib/query.js +562 -91
- package/lib/query.js.map +1 -1
- package/lib/query.spec.js +593 -195
- package/lib/query.spec.js.map +1 -1
- package/lib/webdaql-string.d.ts +59 -0
- package/lib/webdaql-string.d.ts.map +1 -0
- package/lib/webdaql-string.js +112 -0
- package/lib/webdaql-string.js.map +1 -0
- package/lib/webdaql-string.spec.d.ts +2 -0
- package/lib/webdaql-string.spec.d.ts.map +1 -0
- package/lib/webdaql-string.spec.js +282 -0
- package/lib/webdaql-string.spec.js.map +1 -0
- package/package.json +34 -42
|
@@ -1,17 +1,166 @@
|
|
|
1
|
-
// Generated from src/
|
|
1
|
+
// Generated from src/WebdaQLParser.g4 by ANTLR 4.9.0-SNAPSHOT
|
|
2
2
|
import { ATN } from "antlr4ts/atn/ATN.js";
|
|
3
3
|
import { ATNDeserializer } from "antlr4ts/atn/ATNDeserializer.js";
|
|
4
|
-
import { ParserATNSimulator } from "antlr4ts/atn/ParserATNSimulator.js";
|
|
5
4
|
import { FailedPredicateException } from "antlr4ts/FailedPredicateException.js";
|
|
6
5
|
import { NoViableAltException } from "antlr4ts/NoViableAltException.js";
|
|
7
6
|
import { Parser } from "antlr4ts/Parser.js";
|
|
8
7
|
import { ParserRuleContext } from "antlr4ts/ParserRuleContext.js";
|
|
8
|
+
import { ParserATNSimulator } from "antlr4ts/atn/ParserATNSimulator.js";
|
|
9
9
|
import { RecognitionException } from "antlr4ts/RecognitionException.js";
|
|
10
|
-
//import { RuleVersion } from "antlr4ts/RuleVersion";
|
|
11
10
|
import { Token } from "antlr4ts/Token.js";
|
|
12
11
|
import { VocabularyImpl } from "antlr4ts/VocabularyImpl.js";
|
|
13
12
|
import * as Utils from "antlr4ts/misc/Utils.js";
|
|
14
13
|
export class WebdaQLParserParser extends Parser {
|
|
14
|
+
static SPACE = 1;
|
|
15
|
+
static LR_BRACKET = 2;
|
|
16
|
+
static RR_BRACKET = 3;
|
|
17
|
+
static COMMA = 4;
|
|
18
|
+
static SINGLE_QUOTE_SYMB = 5;
|
|
19
|
+
static DOUBLE_QUOTE_SYMB = 6;
|
|
20
|
+
static LR_SQ_BRACKET = 7;
|
|
21
|
+
static RR_SQ_BRACKET = 8;
|
|
22
|
+
static AND = 9;
|
|
23
|
+
static OR = 10;
|
|
24
|
+
static EQUAL = 11;
|
|
25
|
+
static NOT_EQUAL = 12;
|
|
26
|
+
static GREATER = 13;
|
|
27
|
+
static GREATER_OR_EQUAL = 14;
|
|
28
|
+
static LESS = 15;
|
|
29
|
+
static LESS_OR_EQUAL = 16;
|
|
30
|
+
static LIKE = 17;
|
|
31
|
+
static IN = 18;
|
|
32
|
+
static CONTAINS = 19;
|
|
33
|
+
static IS = 20;
|
|
34
|
+
static NOT = 21;
|
|
35
|
+
static NULL = 22;
|
|
36
|
+
static TRUE = 23;
|
|
37
|
+
static FALSE = 24;
|
|
38
|
+
static LIMIT = 25;
|
|
39
|
+
static OFFSET = 26;
|
|
40
|
+
static ORDER_BY = 27;
|
|
41
|
+
static ASC = 28;
|
|
42
|
+
static DESC = 29;
|
|
43
|
+
static DQUOTED_STRING_LITERAL = 30;
|
|
44
|
+
static SQUOTED_STRING_LITERAL = 31;
|
|
45
|
+
static INTEGER_LITERAL = 32;
|
|
46
|
+
static NUMBER_LITERAL = 33;
|
|
47
|
+
static POSITIONAL_PARAMETER = 34;
|
|
48
|
+
static NAMED_PARAMETER = 35;
|
|
49
|
+
static IDENTIFIER = 36;
|
|
50
|
+
static IDENTIFIER_WITH_NUMBER = 37;
|
|
51
|
+
static FUNCTION_IDENTIFIER_WITH_UNDERSCORE = 38;
|
|
52
|
+
static RULE_webdaql = 0;
|
|
53
|
+
static RULE_limitExpression = 1;
|
|
54
|
+
static RULE_offsetExpression = 2;
|
|
55
|
+
static RULE_orderFieldExpression = 3;
|
|
56
|
+
static RULE_orderExpression = 4;
|
|
57
|
+
static RULE_expression = 5;
|
|
58
|
+
static RULE_values = 6;
|
|
59
|
+
static RULE_atom = 7;
|
|
60
|
+
static RULE_identifier = 8;
|
|
61
|
+
static RULE_booleanLiteral = 9;
|
|
62
|
+
static RULE_stringLiteral = 10;
|
|
63
|
+
static RULE_integerLiteral = 11;
|
|
64
|
+
static RULE_numberLiteral = 12;
|
|
65
|
+
static RULE_parameter = 13;
|
|
66
|
+
static RULE_setExpression = 14;
|
|
67
|
+
// tslint:disable:no-trailing-whitespace
|
|
68
|
+
static ruleNames = [
|
|
69
|
+
"webdaql",
|
|
70
|
+
"limitExpression",
|
|
71
|
+
"offsetExpression",
|
|
72
|
+
"orderFieldExpression",
|
|
73
|
+
"orderExpression",
|
|
74
|
+
"expression",
|
|
75
|
+
"values",
|
|
76
|
+
"atom",
|
|
77
|
+
"identifier",
|
|
78
|
+
"booleanLiteral",
|
|
79
|
+
"stringLiteral",
|
|
80
|
+
"integerLiteral",
|
|
81
|
+
"numberLiteral",
|
|
82
|
+
"parameter",
|
|
83
|
+
"setExpression"
|
|
84
|
+
];
|
|
85
|
+
static _LITERAL_NAMES = [
|
|
86
|
+
undefined,
|
|
87
|
+
undefined,
|
|
88
|
+
"'('",
|
|
89
|
+
"')'",
|
|
90
|
+
"','",
|
|
91
|
+
"'''",
|
|
92
|
+
"'\"'",
|
|
93
|
+
"'['",
|
|
94
|
+
"']'",
|
|
95
|
+
"'AND'",
|
|
96
|
+
"'OR'",
|
|
97
|
+
"'='",
|
|
98
|
+
"'!='",
|
|
99
|
+
"'>'",
|
|
100
|
+
"'>='",
|
|
101
|
+
"'<'",
|
|
102
|
+
"'<='",
|
|
103
|
+
"'LIKE'",
|
|
104
|
+
"'IN'",
|
|
105
|
+
"'CONTAINS'",
|
|
106
|
+
"'IS'",
|
|
107
|
+
"'NOT'",
|
|
108
|
+
"'NULL'",
|
|
109
|
+
"'TRUE'",
|
|
110
|
+
"'FALSE'",
|
|
111
|
+
"'LIMIT'",
|
|
112
|
+
"'OFFSET'",
|
|
113
|
+
"'ORDER BY'",
|
|
114
|
+
"'ASC'",
|
|
115
|
+
"'DESC'",
|
|
116
|
+
undefined,
|
|
117
|
+
undefined,
|
|
118
|
+
undefined,
|
|
119
|
+
undefined,
|
|
120
|
+
"'?'"
|
|
121
|
+
];
|
|
122
|
+
static _SYMBOLIC_NAMES = [
|
|
123
|
+
undefined,
|
|
124
|
+
"SPACE",
|
|
125
|
+
"LR_BRACKET",
|
|
126
|
+
"RR_BRACKET",
|
|
127
|
+
"COMMA",
|
|
128
|
+
"SINGLE_QUOTE_SYMB",
|
|
129
|
+
"DOUBLE_QUOTE_SYMB",
|
|
130
|
+
"LR_SQ_BRACKET",
|
|
131
|
+
"RR_SQ_BRACKET",
|
|
132
|
+
"AND",
|
|
133
|
+
"OR",
|
|
134
|
+
"EQUAL",
|
|
135
|
+
"NOT_EQUAL",
|
|
136
|
+
"GREATER",
|
|
137
|
+
"GREATER_OR_EQUAL",
|
|
138
|
+
"LESS",
|
|
139
|
+
"LESS_OR_EQUAL",
|
|
140
|
+
"LIKE",
|
|
141
|
+
"IN",
|
|
142
|
+
"CONTAINS",
|
|
143
|
+
"IS",
|
|
144
|
+
"NOT",
|
|
145
|
+
"NULL",
|
|
146
|
+
"TRUE",
|
|
147
|
+
"FALSE",
|
|
148
|
+
"LIMIT",
|
|
149
|
+
"OFFSET",
|
|
150
|
+
"ORDER_BY",
|
|
151
|
+
"ASC",
|
|
152
|
+
"DESC",
|
|
153
|
+
"DQUOTED_STRING_LITERAL",
|
|
154
|
+
"SQUOTED_STRING_LITERAL",
|
|
155
|
+
"INTEGER_LITERAL",
|
|
156
|
+
"NUMBER_LITERAL",
|
|
157
|
+
"POSITIONAL_PARAMETER",
|
|
158
|
+
"NAMED_PARAMETER",
|
|
159
|
+
"IDENTIFIER",
|
|
160
|
+
"IDENTIFIER_WITH_NUMBER",
|
|
161
|
+
"FUNCTION_IDENTIFIER_WITH_UNDERSCORE"
|
|
162
|
+
];
|
|
163
|
+
static VOCABULARY = new VocabularyImpl(WebdaQLParserParser._LITERAL_NAMES, WebdaQLParserParser._SYMBOLIC_NAMES, []);
|
|
15
164
|
// @Override
|
|
16
165
|
// @NotNull
|
|
17
166
|
get vocabulary() {
|
|
@@ -39,59 +188,63 @@ export class WebdaQLParserParser extends Parser {
|
|
|
39
188
|
}
|
|
40
189
|
// @RuleVersion(0)
|
|
41
190
|
webdaql() {
|
|
42
|
-
|
|
191
|
+
let _localctx = new WebdaqlContext(this._ctx, this.state);
|
|
43
192
|
this.enterRule(_localctx, 0, WebdaQLParserParser.RULE_webdaql);
|
|
44
193
|
let _la;
|
|
45
194
|
try {
|
|
46
195
|
this.enterOuterAlt(_localctx, 1);
|
|
47
196
|
{
|
|
48
|
-
this.state =
|
|
197
|
+
this.state = 31;
|
|
49
198
|
this._errHandler.sync(this);
|
|
50
199
|
_la = this._input.LA(1);
|
|
51
|
-
if ((_la & ~0x1f) === 0 &&
|
|
200
|
+
if (((_la & ~0x1f) === 0 &&
|
|
52
201
|
((1 << _la) &
|
|
53
202
|
((1 << WebdaQLParserParser.LR_BRACKET) |
|
|
54
203
|
(1 << WebdaQLParserParser.TRUE) |
|
|
55
204
|
(1 << WebdaQLParserParser.FALSE) |
|
|
56
205
|
(1 << WebdaQLParserParser.DQUOTED_STRING_LITERAL) |
|
|
57
|
-
(1 << WebdaQLParserParser.SQUOTED_STRING_LITERAL)
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
206
|
+
(1 << WebdaQLParserParser.SQUOTED_STRING_LITERAL))) !==
|
|
207
|
+
0) ||
|
|
208
|
+
(((_la - 32) & ~0x1f) === 0 &&
|
|
209
|
+
((1 << (_la - 32)) &
|
|
210
|
+
((1 << (WebdaQLParserParser.INTEGER_LITERAL - 32)) |
|
|
211
|
+
(1 << (WebdaQLParserParser.NUMBER_LITERAL - 32)) |
|
|
212
|
+
(1 << (WebdaQLParserParser.IDENTIFIER - 32)) |
|
|
213
|
+
(1 << (WebdaQLParserParser.IDENTIFIER_WITH_NUMBER - 32)))) !==
|
|
214
|
+
0)) {
|
|
62
215
|
{
|
|
63
|
-
this.state =
|
|
216
|
+
this.state = 30;
|
|
64
217
|
this.expression(0);
|
|
65
218
|
}
|
|
66
219
|
}
|
|
67
|
-
this.state =
|
|
220
|
+
this.state = 34;
|
|
68
221
|
this._errHandler.sync(this);
|
|
69
222
|
_la = this._input.LA(1);
|
|
70
223
|
if (_la === WebdaQLParserParser.ORDER_BY) {
|
|
71
224
|
{
|
|
72
|
-
this.state =
|
|
225
|
+
this.state = 33;
|
|
73
226
|
this.orderExpression();
|
|
74
227
|
}
|
|
75
228
|
}
|
|
76
|
-
this.state =
|
|
229
|
+
this.state = 37;
|
|
77
230
|
this._errHandler.sync(this);
|
|
78
231
|
_la = this._input.LA(1);
|
|
79
232
|
if (_la === WebdaQLParserParser.LIMIT) {
|
|
80
233
|
{
|
|
81
|
-
this.state =
|
|
234
|
+
this.state = 36;
|
|
82
235
|
this.limitExpression();
|
|
83
236
|
}
|
|
84
237
|
}
|
|
85
|
-
this.state =
|
|
238
|
+
this.state = 40;
|
|
86
239
|
this._errHandler.sync(this);
|
|
87
240
|
_la = this._input.LA(1);
|
|
88
241
|
if (_la === WebdaQLParserParser.OFFSET) {
|
|
89
242
|
{
|
|
90
|
-
this.state =
|
|
243
|
+
this.state = 39;
|
|
91
244
|
this.offsetExpression();
|
|
92
245
|
}
|
|
93
246
|
}
|
|
94
|
-
this.state =
|
|
247
|
+
this.state = 42;
|
|
95
248
|
this.match(WebdaQLParserParser.EOF);
|
|
96
249
|
}
|
|
97
250
|
}
|
|
@@ -112,15 +265,32 @@ export class WebdaQLParserParser extends Parser {
|
|
|
112
265
|
}
|
|
113
266
|
// @RuleVersion(0)
|
|
114
267
|
limitExpression() {
|
|
115
|
-
|
|
268
|
+
let _localctx = new LimitExpressionContext(this._ctx, this.state);
|
|
116
269
|
this.enterRule(_localctx, 2, WebdaQLParserParser.RULE_limitExpression);
|
|
117
270
|
try {
|
|
118
271
|
this.enterOuterAlt(_localctx, 1);
|
|
119
272
|
{
|
|
120
|
-
this.state =
|
|
273
|
+
this.state = 44;
|
|
121
274
|
this.match(WebdaQLParserParser.LIMIT);
|
|
122
|
-
this.state =
|
|
123
|
-
this.
|
|
275
|
+
this.state = 47;
|
|
276
|
+
this._errHandler.sync(this);
|
|
277
|
+
switch (this._input.LA(1)) {
|
|
278
|
+
case WebdaQLParserParser.INTEGER_LITERAL:
|
|
279
|
+
{
|
|
280
|
+
this.state = 45;
|
|
281
|
+
this.integerLiteral();
|
|
282
|
+
}
|
|
283
|
+
break;
|
|
284
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
285
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
286
|
+
{
|
|
287
|
+
this.state = 46;
|
|
288
|
+
this.parameter();
|
|
289
|
+
}
|
|
290
|
+
break;
|
|
291
|
+
default:
|
|
292
|
+
throw new NoViableAltException(this);
|
|
293
|
+
}
|
|
124
294
|
}
|
|
125
295
|
}
|
|
126
296
|
catch (re) {
|
|
@@ -140,15 +310,33 @@ export class WebdaQLParserParser extends Parser {
|
|
|
140
310
|
}
|
|
141
311
|
// @RuleVersion(0)
|
|
142
312
|
offsetExpression() {
|
|
143
|
-
|
|
313
|
+
let _localctx = new OffsetExpressionContext(this._ctx, this.state);
|
|
144
314
|
this.enterRule(_localctx, 4, WebdaQLParserParser.RULE_offsetExpression);
|
|
145
315
|
try {
|
|
146
316
|
this.enterOuterAlt(_localctx, 1);
|
|
147
317
|
{
|
|
148
|
-
this.state =
|
|
318
|
+
this.state = 49;
|
|
149
319
|
this.match(WebdaQLParserParser.OFFSET);
|
|
150
|
-
this.state =
|
|
151
|
-
this.
|
|
320
|
+
this.state = 52;
|
|
321
|
+
this._errHandler.sync(this);
|
|
322
|
+
switch (this._input.LA(1)) {
|
|
323
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
324
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
325
|
+
{
|
|
326
|
+
this.state = 50;
|
|
327
|
+
this.stringLiteral();
|
|
328
|
+
}
|
|
329
|
+
break;
|
|
330
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
331
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
332
|
+
{
|
|
333
|
+
this.state = 51;
|
|
334
|
+
this.parameter();
|
|
335
|
+
}
|
|
336
|
+
break;
|
|
337
|
+
default:
|
|
338
|
+
throw new NoViableAltException(this);
|
|
339
|
+
}
|
|
152
340
|
}
|
|
153
341
|
}
|
|
154
342
|
catch (re) {
|
|
@@ -168,20 +356,20 @@ export class WebdaQLParserParser extends Parser {
|
|
|
168
356
|
}
|
|
169
357
|
// @RuleVersion(0)
|
|
170
358
|
orderFieldExpression() {
|
|
171
|
-
|
|
359
|
+
let _localctx = new OrderFieldExpressionContext(this._ctx, this.state);
|
|
172
360
|
this.enterRule(_localctx, 6, WebdaQLParserParser.RULE_orderFieldExpression);
|
|
173
361
|
let _la;
|
|
174
362
|
try {
|
|
175
363
|
this.enterOuterAlt(_localctx, 1);
|
|
176
364
|
{
|
|
177
|
-
this.state =
|
|
365
|
+
this.state = 54;
|
|
178
366
|
this.identifier();
|
|
179
|
-
this.state =
|
|
367
|
+
this.state = 56;
|
|
180
368
|
this._errHandler.sync(this);
|
|
181
369
|
_la = this._input.LA(1);
|
|
182
370
|
if (_la === WebdaQLParserParser.ASC || _la === WebdaQLParserParser.DESC) {
|
|
183
371
|
{
|
|
184
|
-
this.state =
|
|
372
|
+
this.state = 55;
|
|
185
373
|
_la = this._input.LA(1);
|
|
186
374
|
if (!(_la === WebdaQLParserParser.ASC || _la === WebdaQLParserParser.DESC)) {
|
|
187
375
|
this._errHandler.recoverInline(this);
|
|
@@ -214,29 +402,29 @@ export class WebdaQLParserParser extends Parser {
|
|
|
214
402
|
}
|
|
215
403
|
// @RuleVersion(0)
|
|
216
404
|
orderExpression() {
|
|
217
|
-
|
|
405
|
+
let _localctx = new OrderExpressionContext(this._ctx, this.state);
|
|
218
406
|
this.enterRule(_localctx, 8, WebdaQLParserParser.RULE_orderExpression);
|
|
219
407
|
let _la;
|
|
220
408
|
try {
|
|
221
409
|
this.enterOuterAlt(_localctx, 1);
|
|
222
410
|
{
|
|
223
|
-
this.state =
|
|
411
|
+
this.state = 58;
|
|
224
412
|
this.match(WebdaQLParserParser.ORDER_BY);
|
|
225
|
-
this.state =
|
|
413
|
+
this.state = 59;
|
|
226
414
|
this.orderFieldExpression();
|
|
227
|
-
this.state =
|
|
415
|
+
this.state = 64;
|
|
228
416
|
this._errHandler.sync(this);
|
|
229
417
|
_la = this._input.LA(1);
|
|
230
418
|
while (_la === WebdaQLParserParser.COMMA) {
|
|
231
419
|
{
|
|
232
420
|
{
|
|
233
|
-
this.state =
|
|
421
|
+
this.state = 60;
|
|
234
422
|
this.match(WebdaQLParserParser.COMMA);
|
|
235
|
-
this.state =
|
|
423
|
+
this.state = 61;
|
|
236
424
|
this.orderFieldExpression();
|
|
237
425
|
}
|
|
238
426
|
}
|
|
239
|
-
this.state =
|
|
427
|
+
this.state = 66;
|
|
240
428
|
this._errHandler.sync(this);
|
|
241
429
|
_la = this._input.LA(1);
|
|
242
430
|
}
|
|
@@ -262,31 +450,49 @@ export class WebdaQLParserParser extends Parser {
|
|
|
262
450
|
if (_p === undefined) {
|
|
263
451
|
_p = 0;
|
|
264
452
|
}
|
|
265
|
-
|
|
266
|
-
|
|
453
|
+
let _parentctx = this._ctx;
|
|
454
|
+
let _parentState = this.state;
|
|
267
455
|
let _localctx = new ExpressionContext(this._ctx, _parentState);
|
|
268
456
|
let _prevctx = _localctx;
|
|
269
|
-
|
|
457
|
+
let _startState = 10;
|
|
270
458
|
this.enterRecursionRule(_localctx, 10, WebdaQLParserParser.RULE_expression, _p);
|
|
271
459
|
let _la;
|
|
272
460
|
try {
|
|
273
461
|
let _alt;
|
|
274
462
|
this.enterOuterAlt(_localctx, 1);
|
|
275
463
|
{
|
|
276
|
-
this.state =
|
|
464
|
+
this.state = 106;
|
|
277
465
|
this._errHandler.sync(this);
|
|
278
|
-
switch (this.interpreter.adaptivePredict(this._input,
|
|
466
|
+
switch (this.interpreter.adaptivePredict(this._input, 12, this._ctx)) {
|
|
279
467
|
case 1:
|
|
280
468
|
{
|
|
281
469
|
_localctx = new LikeExpressionContext(_localctx);
|
|
282
470
|
this._ctx = _localctx;
|
|
283
471
|
_prevctx = _localctx;
|
|
284
|
-
this.state =
|
|
472
|
+
this.state = 68;
|
|
285
473
|
this.identifier();
|
|
286
|
-
this.state =
|
|
474
|
+
this.state = 69;
|
|
287
475
|
this.match(WebdaQLParserParser.LIKE);
|
|
288
|
-
this.state =
|
|
289
|
-
this.
|
|
476
|
+
this.state = 72;
|
|
477
|
+
this._errHandler.sync(this);
|
|
478
|
+
switch (this._input.LA(1)) {
|
|
479
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
480
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
481
|
+
{
|
|
482
|
+
this.state = 70;
|
|
483
|
+
this.stringLiteral();
|
|
484
|
+
}
|
|
485
|
+
break;
|
|
486
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
487
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
488
|
+
{
|
|
489
|
+
this.state = 71;
|
|
490
|
+
this.parameter();
|
|
491
|
+
}
|
|
492
|
+
break;
|
|
493
|
+
default:
|
|
494
|
+
throw new NoViableAltException(this);
|
|
495
|
+
}
|
|
290
496
|
}
|
|
291
497
|
break;
|
|
292
498
|
case 2:
|
|
@@ -294,12 +500,29 @@ export class WebdaQLParserParser extends Parser {
|
|
|
294
500
|
_localctx = new InExpressionContext(_localctx);
|
|
295
501
|
this._ctx = _localctx;
|
|
296
502
|
_prevctx = _localctx;
|
|
297
|
-
this.state =
|
|
503
|
+
this.state = 74;
|
|
298
504
|
this.identifier();
|
|
299
|
-
this.state =
|
|
505
|
+
this.state = 75;
|
|
300
506
|
this.match(WebdaQLParserParser.IN);
|
|
301
|
-
this.state =
|
|
302
|
-
this.
|
|
507
|
+
this.state = 78;
|
|
508
|
+
this._errHandler.sync(this);
|
|
509
|
+
switch (this._input.LA(1)) {
|
|
510
|
+
case WebdaQLParserParser.LR_SQ_BRACKET:
|
|
511
|
+
{
|
|
512
|
+
this.state = 76;
|
|
513
|
+
this.setExpression();
|
|
514
|
+
}
|
|
515
|
+
break;
|
|
516
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
517
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
518
|
+
{
|
|
519
|
+
this.state = 77;
|
|
520
|
+
this.parameter();
|
|
521
|
+
}
|
|
522
|
+
break;
|
|
523
|
+
default:
|
|
524
|
+
throw new NoViableAltException(this);
|
|
525
|
+
}
|
|
303
526
|
}
|
|
304
527
|
break;
|
|
305
528
|
case 3:
|
|
@@ -307,22 +530,68 @@ export class WebdaQLParserParser extends Parser {
|
|
|
307
530
|
_localctx = new ContainsExpressionContext(_localctx);
|
|
308
531
|
this._ctx = _localctx;
|
|
309
532
|
_prevctx = _localctx;
|
|
310
|
-
this.state =
|
|
533
|
+
this.state = 80;
|
|
311
534
|
this.identifier();
|
|
312
|
-
this.state =
|
|
535
|
+
this.state = 81;
|
|
313
536
|
this.match(WebdaQLParserParser.CONTAINS);
|
|
314
|
-
this.state =
|
|
315
|
-
this.
|
|
537
|
+
this.state = 84;
|
|
538
|
+
this._errHandler.sync(this);
|
|
539
|
+
switch (this._input.LA(1)) {
|
|
540
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
541
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
542
|
+
{
|
|
543
|
+
this.state = 82;
|
|
544
|
+
this.stringLiteral();
|
|
545
|
+
}
|
|
546
|
+
break;
|
|
547
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
548
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
549
|
+
{
|
|
550
|
+
this.state = 83;
|
|
551
|
+
this.parameter();
|
|
552
|
+
}
|
|
553
|
+
break;
|
|
554
|
+
default:
|
|
555
|
+
throw new NoViableAltException(this);
|
|
556
|
+
}
|
|
316
557
|
}
|
|
317
558
|
break;
|
|
318
559
|
case 4:
|
|
560
|
+
{
|
|
561
|
+
_localctx = new IsNullExpressionContext(_localctx);
|
|
562
|
+
this._ctx = _localctx;
|
|
563
|
+
_prevctx = _localctx;
|
|
564
|
+
this.state = 86;
|
|
565
|
+
this.identifier();
|
|
566
|
+
this.state = 87;
|
|
567
|
+
this.match(WebdaQLParserParser.IS);
|
|
568
|
+
this.state = 88;
|
|
569
|
+
this.match(WebdaQLParserParser.NULL);
|
|
570
|
+
}
|
|
571
|
+
break;
|
|
572
|
+
case 5:
|
|
573
|
+
{
|
|
574
|
+
_localctx = new IsNotNullExpressionContext(_localctx);
|
|
575
|
+
this._ctx = _localctx;
|
|
576
|
+
_prevctx = _localctx;
|
|
577
|
+
this.state = 90;
|
|
578
|
+
this.identifier();
|
|
579
|
+
this.state = 91;
|
|
580
|
+
this.match(WebdaQLParserParser.IS);
|
|
581
|
+
this.state = 92;
|
|
582
|
+
this.match(WebdaQLParserParser.NOT);
|
|
583
|
+
this.state = 93;
|
|
584
|
+
this.match(WebdaQLParserParser.NULL);
|
|
585
|
+
}
|
|
586
|
+
break;
|
|
587
|
+
case 6:
|
|
319
588
|
{
|
|
320
589
|
_localctx = new BinaryComparisonExpressionContext(_localctx);
|
|
321
590
|
this._ctx = _localctx;
|
|
322
591
|
_prevctx = _localctx;
|
|
323
|
-
this.state =
|
|
592
|
+
this.state = 95;
|
|
324
593
|
this.identifier();
|
|
325
|
-
this.state =
|
|
594
|
+
this.state = 96;
|
|
326
595
|
_la = this._input.LA(1);
|
|
327
596
|
if (!((_la & ~0x1f) === 0 &&
|
|
328
597
|
((1 << _la) &
|
|
@@ -342,37 +611,59 @@ export class WebdaQLParserParser extends Parser {
|
|
|
342
611
|
this._errHandler.reportMatch(this);
|
|
343
612
|
this.consume();
|
|
344
613
|
}
|
|
345
|
-
this.state =
|
|
346
|
-
this.
|
|
614
|
+
this.state = 99;
|
|
615
|
+
this._errHandler.sync(this);
|
|
616
|
+
switch (this._input.LA(1)) {
|
|
617
|
+
case WebdaQLParserParser.TRUE:
|
|
618
|
+
case WebdaQLParserParser.FALSE:
|
|
619
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
620
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
621
|
+
case WebdaQLParserParser.INTEGER_LITERAL:
|
|
622
|
+
case WebdaQLParserParser.NUMBER_LITERAL:
|
|
623
|
+
{
|
|
624
|
+
this.state = 97;
|
|
625
|
+
this.values();
|
|
626
|
+
}
|
|
627
|
+
break;
|
|
628
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
629
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
630
|
+
{
|
|
631
|
+
this.state = 98;
|
|
632
|
+
this.parameter();
|
|
633
|
+
}
|
|
634
|
+
break;
|
|
635
|
+
default:
|
|
636
|
+
throw new NoViableAltException(this);
|
|
637
|
+
}
|
|
347
638
|
}
|
|
348
639
|
break;
|
|
349
|
-
case
|
|
640
|
+
case 7:
|
|
350
641
|
{
|
|
351
642
|
_localctx = new SubExpressionContext(_localctx);
|
|
352
643
|
this._ctx = _localctx;
|
|
353
644
|
_prevctx = _localctx;
|
|
354
|
-
this.state =
|
|
645
|
+
this.state = 101;
|
|
355
646
|
this.match(WebdaQLParserParser.LR_BRACKET);
|
|
356
|
-
this.state =
|
|
647
|
+
this.state = 102;
|
|
357
648
|
this.expression(0);
|
|
358
|
-
this.state =
|
|
649
|
+
this.state = 103;
|
|
359
650
|
this.match(WebdaQLParserParser.RR_BRACKET);
|
|
360
651
|
}
|
|
361
652
|
break;
|
|
362
|
-
case
|
|
653
|
+
case 8:
|
|
363
654
|
{
|
|
364
655
|
_localctx = new AtomExpressionContext(_localctx);
|
|
365
656
|
this._ctx = _localctx;
|
|
366
657
|
_prevctx = _localctx;
|
|
367
|
-
this.state =
|
|
658
|
+
this.state = 105;
|
|
368
659
|
this.atom();
|
|
369
660
|
}
|
|
370
661
|
break;
|
|
371
662
|
}
|
|
372
663
|
this._ctx._stop = this._input.tryLT(-1);
|
|
373
|
-
this.state =
|
|
664
|
+
this.state = 116;
|
|
374
665
|
this._errHandler.sync(this);
|
|
375
|
-
_alt = this.interpreter.adaptivePredict(this._input,
|
|
666
|
+
_alt = this.interpreter.adaptivePredict(this._input, 14, this._ctx);
|
|
376
667
|
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
|
|
377
668
|
if (_alt === 1) {
|
|
378
669
|
if (this._parseListeners != null) {
|
|
@@ -380,20 +671,20 @@ export class WebdaQLParserParser extends Parser {
|
|
|
380
671
|
}
|
|
381
672
|
_prevctx = _localctx;
|
|
382
673
|
{
|
|
383
|
-
this.state =
|
|
674
|
+
this.state = 114;
|
|
384
675
|
this._errHandler.sync(this);
|
|
385
|
-
switch (this.interpreter.adaptivePredict(this._input,
|
|
676
|
+
switch (this.interpreter.adaptivePredict(this._input, 13, this._ctx)) {
|
|
386
677
|
case 1:
|
|
387
678
|
{
|
|
388
679
|
_localctx = new AndLogicExpressionContext(new ExpressionContext(_parentctx, _parentState));
|
|
389
680
|
this.pushNewRecursionContext(_localctx, _startState, WebdaQLParserParser.RULE_expression);
|
|
390
|
-
this.state =
|
|
681
|
+
this.state = 108;
|
|
391
682
|
if (!this.precpred(this._ctx, 4)) {
|
|
392
683
|
throw this.createFailedPredicateException("this.precpred(this._ctx, 4)");
|
|
393
684
|
}
|
|
394
|
-
this.state =
|
|
685
|
+
this.state = 109;
|
|
395
686
|
this.match(WebdaQLParserParser.AND);
|
|
396
|
-
this.state =
|
|
687
|
+
this.state = 110;
|
|
397
688
|
this.expression(5);
|
|
398
689
|
}
|
|
399
690
|
break;
|
|
@@ -401,22 +692,22 @@ export class WebdaQLParserParser extends Parser {
|
|
|
401
692
|
{
|
|
402
693
|
_localctx = new OrLogicExpressionContext(new ExpressionContext(_parentctx, _parentState));
|
|
403
694
|
this.pushNewRecursionContext(_localctx, _startState, WebdaQLParserParser.RULE_expression);
|
|
404
|
-
this.state =
|
|
695
|
+
this.state = 111;
|
|
405
696
|
if (!this.precpred(this._ctx, 3)) {
|
|
406
697
|
throw this.createFailedPredicateException("this.precpred(this._ctx, 3)");
|
|
407
698
|
}
|
|
408
|
-
this.state =
|
|
699
|
+
this.state = 112;
|
|
409
700
|
this.match(WebdaQLParserParser.OR);
|
|
410
|
-
this.state =
|
|
701
|
+
this.state = 113;
|
|
411
702
|
this.expression(4);
|
|
412
703
|
}
|
|
413
704
|
break;
|
|
414
705
|
}
|
|
415
706
|
}
|
|
416
707
|
}
|
|
417
|
-
this.state =
|
|
708
|
+
this.state = 118;
|
|
418
709
|
this._errHandler.sync(this);
|
|
419
|
-
_alt = this.interpreter.adaptivePredict(this._input,
|
|
710
|
+
_alt = this.interpreter.adaptivePredict(this._input, 14, this._ctx);
|
|
420
711
|
}
|
|
421
712
|
}
|
|
422
713
|
}
|
|
@@ -440,7 +731,7 @@ export class WebdaQLParserParser extends Parser {
|
|
|
440
731
|
let _localctx = new ValuesContext(this._ctx, this.state);
|
|
441
732
|
this.enterRule(_localctx, 12, WebdaQLParserParser.RULE_values);
|
|
442
733
|
try {
|
|
443
|
-
this.state =
|
|
734
|
+
this.state = 123;
|
|
444
735
|
this._errHandler.sync(this);
|
|
445
736
|
switch (this._input.LA(1)) {
|
|
446
737
|
case WebdaQLParserParser.TRUE:
|
|
@@ -448,7 +739,7 @@ export class WebdaQLParserParser extends Parser {
|
|
|
448
739
|
_localctx = new BooleanAtomContext(_localctx);
|
|
449
740
|
this.enterOuterAlt(_localctx, 1);
|
|
450
741
|
{
|
|
451
|
-
this.state =
|
|
742
|
+
this.state = 119;
|
|
452
743
|
this.booleanLiteral();
|
|
453
744
|
}
|
|
454
745
|
break;
|
|
@@ -456,16 +747,24 @@ export class WebdaQLParserParser extends Parser {
|
|
|
456
747
|
_localctx = new IntegerAtomContext(_localctx);
|
|
457
748
|
this.enterOuterAlt(_localctx, 2);
|
|
458
749
|
{
|
|
459
|
-
this.state =
|
|
750
|
+
this.state = 120;
|
|
460
751
|
this.integerLiteral();
|
|
461
752
|
}
|
|
462
753
|
break;
|
|
754
|
+
case WebdaQLParserParser.NUMBER_LITERAL:
|
|
755
|
+
_localctx = new NumberAtomContext(_localctx);
|
|
756
|
+
this.enterOuterAlt(_localctx, 3);
|
|
757
|
+
{
|
|
758
|
+
this.state = 121;
|
|
759
|
+
this.numberLiteral();
|
|
760
|
+
}
|
|
761
|
+
break;
|
|
463
762
|
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
464
763
|
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
465
764
|
_localctx = new StringAtomContext(_localctx);
|
|
466
|
-
this.enterOuterAlt(_localctx,
|
|
765
|
+
this.enterOuterAlt(_localctx, 4);
|
|
467
766
|
{
|
|
468
|
-
this.state =
|
|
767
|
+
this.state = 122;
|
|
469
768
|
this.stringLiteral();
|
|
470
769
|
}
|
|
471
770
|
break;
|
|
@@ -493,7 +792,7 @@ export class WebdaQLParserParser extends Parser {
|
|
|
493
792
|
let _localctx = new AtomContext(this._ctx, this.state);
|
|
494
793
|
this.enterRule(_localctx, 14, WebdaQLParserParser.RULE_atom);
|
|
495
794
|
try {
|
|
496
|
-
this.state =
|
|
795
|
+
this.state = 127;
|
|
497
796
|
this._errHandler.sync(this);
|
|
498
797
|
switch (this._input.LA(1)) {
|
|
499
798
|
case WebdaQLParserParser.TRUE:
|
|
@@ -501,10 +800,11 @@ export class WebdaQLParserParser extends Parser {
|
|
|
501
800
|
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
502
801
|
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
503
802
|
case WebdaQLParserParser.INTEGER_LITERAL:
|
|
803
|
+
case WebdaQLParserParser.NUMBER_LITERAL:
|
|
504
804
|
_localctx = new ValuesAtomContext(_localctx);
|
|
505
805
|
this.enterOuterAlt(_localctx, 1);
|
|
506
806
|
{
|
|
507
|
-
this.state =
|
|
807
|
+
this.state = 125;
|
|
508
808
|
this.values();
|
|
509
809
|
}
|
|
510
810
|
break;
|
|
@@ -513,7 +813,7 @@ export class WebdaQLParserParser extends Parser {
|
|
|
513
813
|
_localctx = new IdentifierAtomContext(_localctx);
|
|
514
814
|
this.enterOuterAlt(_localctx, 2);
|
|
515
815
|
{
|
|
516
|
-
this.state =
|
|
816
|
+
this.state = 126;
|
|
517
817
|
this.identifier();
|
|
518
818
|
}
|
|
519
819
|
break;
|
|
@@ -538,13 +838,13 @@ export class WebdaQLParserParser extends Parser {
|
|
|
538
838
|
}
|
|
539
839
|
// @RuleVersion(0)
|
|
540
840
|
identifier() {
|
|
541
|
-
|
|
841
|
+
let _localctx = new IdentifierContext(this._ctx, this.state);
|
|
542
842
|
this.enterRule(_localctx, 16, WebdaQLParserParser.RULE_identifier);
|
|
543
843
|
let _la;
|
|
544
844
|
try {
|
|
545
845
|
this.enterOuterAlt(_localctx, 1);
|
|
546
846
|
{
|
|
547
|
-
this.state =
|
|
847
|
+
this.state = 129;
|
|
548
848
|
_la = this._input.LA(1);
|
|
549
849
|
if (!(_la === WebdaQLParserParser.IDENTIFIER || _la === WebdaQLParserParser.IDENTIFIER_WITH_NUMBER)) {
|
|
550
850
|
this._errHandler.recoverInline(this);
|
|
@@ -575,13 +875,13 @@ export class WebdaQLParserParser extends Parser {
|
|
|
575
875
|
}
|
|
576
876
|
// @RuleVersion(0)
|
|
577
877
|
booleanLiteral() {
|
|
578
|
-
|
|
878
|
+
let _localctx = new BooleanLiteralContext(this._ctx, this.state);
|
|
579
879
|
this.enterRule(_localctx, 18, WebdaQLParserParser.RULE_booleanLiteral);
|
|
580
880
|
let _la;
|
|
581
881
|
try {
|
|
582
882
|
this.enterOuterAlt(_localctx, 1);
|
|
583
883
|
{
|
|
584
|
-
this.state =
|
|
884
|
+
this.state = 131;
|
|
585
885
|
_la = this._input.LA(1);
|
|
586
886
|
if (!(_la === WebdaQLParserParser.TRUE || _la === WebdaQLParserParser.FALSE)) {
|
|
587
887
|
this._errHandler.recoverInline(this);
|
|
@@ -612,13 +912,13 @@ export class WebdaQLParserParser extends Parser {
|
|
|
612
912
|
}
|
|
613
913
|
// @RuleVersion(0)
|
|
614
914
|
stringLiteral() {
|
|
615
|
-
|
|
915
|
+
let _localctx = new StringLiteralContext(this._ctx, this.state);
|
|
616
916
|
this.enterRule(_localctx, 20, WebdaQLParserParser.RULE_stringLiteral);
|
|
617
917
|
let _la;
|
|
618
918
|
try {
|
|
619
919
|
this.enterOuterAlt(_localctx, 1);
|
|
620
920
|
{
|
|
621
|
-
this.state =
|
|
921
|
+
this.state = 133;
|
|
622
922
|
_la = this._input.LA(1);
|
|
623
923
|
if (!(_la === WebdaQLParserParser.DQUOTED_STRING_LITERAL || _la === WebdaQLParserParser.SQUOTED_STRING_LITERAL)) {
|
|
624
924
|
this._errHandler.recoverInline(this);
|
|
@@ -649,12 +949,12 @@ export class WebdaQLParserParser extends Parser {
|
|
|
649
949
|
}
|
|
650
950
|
// @RuleVersion(0)
|
|
651
951
|
integerLiteral() {
|
|
652
|
-
|
|
952
|
+
let _localctx = new IntegerLiteralContext(this._ctx, this.state);
|
|
653
953
|
this.enterRule(_localctx, 22, WebdaQLParserParser.RULE_integerLiteral);
|
|
654
954
|
try {
|
|
655
955
|
this.enterOuterAlt(_localctx, 1);
|
|
656
956
|
{
|
|
657
|
-
this.state =
|
|
957
|
+
this.state = 135;
|
|
658
958
|
this.match(WebdaQLParserParser.INTEGER_LITERAL);
|
|
659
959
|
}
|
|
660
960
|
}
|
|
@@ -674,34 +974,141 @@ export class WebdaQLParserParser extends Parser {
|
|
|
674
974
|
return _localctx;
|
|
675
975
|
}
|
|
676
976
|
// @RuleVersion(0)
|
|
977
|
+
numberLiteral() {
|
|
978
|
+
let _localctx = new NumberLiteralContext(this._ctx, this.state);
|
|
979
|
+
this.enterRule(_localctx, 24, WebdaQLParserParser.RULE_numberLiteral);
|
|
980
|
+
try {
|
|
981
|
+
this.enterOuterAlt(_localctx, 1);
|
|
982
|
+
{
|
|
983
|
+
this.state = 137;
|
|
984
|
+
this.match(WebdaQLParserParser.NUMBER_LITERAL);
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
catch (re) {
|
|
988
|
+
if (re instanceof RecognitionException) {
|
|
989
|
+
_localctx.exception = re;
|
|
990
|
+
this._errHandler.reportError(this, re);
|
|
991
|
+
this._errHandler.recover(this, re);
|
|
992
|
+
}
|
|
993
|
+
else {
|
|
994
|
+
throw re;
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
finally {
|
|
998
|
+
this.exitRule();
|
|
999
|
+
}
|
|
1000
|
+
return _localctx;
|
|
1001
|
+
}
|
|
1002
|
+
// @RuleVersion(0)
|
|
1003
|
+
parameter() {
|
|
1004
|
+
let _localctx = new ParameterContext(this._ctx, this.state);
|
|
1005
|
+
this.enterRule(_localctx, 26, WebdaQLParserParser.RULE_parameter);
|
|
1006
|
+
let _la;
|
|
1007
|
+
try {
|
|
1008
|
+
this.enterOuterAlt(_localctx, 1);
|
|
1009
|
+
{
|
|
1010
|
+
this.state = 139;
|
|
1011
|
+
_la = this._input.LA(1);
|
|
1012
|
+
if (!(_la === WebdaQLParserParser.POSITIONAL_PARAMETER || _la === WebdaQLParserParser.NAMED_PARAMETER)) {
|
|
1013
|
+
this._errHandler.recoverInline(this);
|
|
1014
|
+
}
|
|
1015
|
+
else {
|
|
1016
|
+
if (this._input.LA(1) === Token.EOF) {
|
|
1017
|
+
this.matchedEOF = true;
|
|
1018
|
+
}
|
|
1019
|
+
this._errHandler.reportMatch(this);
|
|
1020
|
+
this.consume();
|
|
1021
|
+
}
|
|
1022
|
+
}
|
|
1023
|
+
}
|
|
1024
|
+
catch (re) {
|
|
1025
|
+
if (re instanceof RecognitionException) {
|
|
1026
|
+
_localctx.exception = re;
|
|
1027
|
+
this._errHandler.reportError(this, re);
|
|
1028
|
+
this._errHandler.recover(this, re);
|
|
1029
|
+
}
|
|
1030
|
+
else {
|
|
1031
|
+
throw re;
|
|
1032
|
+
}
|
|
1033
|
+
}
|
|
1034
|
+
finally {
|
|
1035
|
+
this.exitRule();
|
|
1036
|
+
}
|
|
1037
|
+
return _localctx;
|
|
1038
|
+
}
|
|
1039
|
+
// @RuleVersion(0)
|
|
677
1040
|
setExpression() {
|
|
678
|
-
|
|
679
|
-
this.enterRule(_localctx,
|
|
1041
|
+
let _localctx = new SetExpressionContext(this._ctx, this.state);
|
|
1042
|
+
this.enterRule(_localctx, 28, WebdaQLParserParser.RULE_setExpression);
|
|
680
1043
|
let _la;
|
|
681
1044
|
try {
|
|
682
1045
|
this.enterOuterAlt(_localctx, 1);
|
|
683
1046
|
{
|
|
684
|
-
this.state =
|
|
1047
|
+
this.state = 141;
|
|
685
1048
|
this.match(WebdaQLParserParser.LR_SQ_BRACKET);
|
|
686
|
-
this.state =
|
|
687
|
-
this.
|
|
688
|
-
this.
|
|
1049
|
+
this.state = 144;
|
|
1050
|
+
this._errHandler.sync(this);
|
|
1051
|
+
switch (this._input.LA(1)) {
|
|
1052
|
+
case WebdaQLParserParser.TRUE:
|
|
1053
|
+
case WebdaQLParserParser.FALSE:
|
|
1054
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
1055
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
1056
|
+
case WebdaQLParserParser.INTEGER_LITERAL:
|
|
1057
|
+
case WebdaQLParserParser.NUMBER_LITERAL:
|
|
1058
|
+
{
|
|
1059
|
+
this.state = 142;
|
|
1060
|
+
this.values();
|
|
1061
|
+
}
|
|
1062
|
+
break;
|
|
1063
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
1064
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
1065
|
+
{
|
|
1066
|
+
this.state = 143;
|
|
1067
|
+
this.parameter();
|
|
1068
|
+
}
|
|
1069
|
+
break;
|
|
1070
|
+
default:
|
|
1071
|
+
throw new NoViableAltException(this);
|
|
1072
|
+
}
|
|
1073
|
+
this.state = 153;
|
|
689
1074
|
this._errHandler.sync(this);
|
|
690
1075
|
_la = this._input.LA(1);
|
|
691
1076
|
while (_la === WebdaQLParserParser.COMMA) {
|
|
692
1077
|
{
|
|
693
1078
|
{
|
|
694
|
-
this.state =
|
|
1079
|
+
this.state = 146;
|
|
695
1080
|
this.match(WebdaQLParserParser.COMMA);
|
|
696
|
-
this.state =
|
|
697
|
-
this.
|
|
1081
|
+
this.state = 149;
|
|
1082
|
+
this._errHandler.sync(this);
|
|
1083
|
+
switch (this._input.LA(1)) {
|
|
1084
|
+
case WebdaQLParserParser.TRUE:
|
|
1085
|
+
case WebdaQLParserParser.FALSE:
|
|
1086
|
+
case WebdaQLParserParser.DQUOTED_STRING_LITERAL:
|
|
1087
|
+
case WebdaQLParserParser.SQUOTED_STRING_LITERAL:
|
|
1088
|
+
case WebdaQLParserParser.INTEGER_LITERAL:
|
|
1089
|
+
case WebdaQLParserParser.NUMBER_LITERAL:
|
|
1090
|
+
{
|
|
1091
|
+
this.state = 147;
|
|
1092
|
+
this.values();
|
|
1093
|
+
}
|
|
1094
|
+
break;
|
|
1095
|
+
case WebdaQLParserParser.POSITIONAL_PARAMETER:
|
|
1096
|
+
case WebdaQLParserParser.NAMED_PARAMETER:
|
|
1097
|
+
{
|
|
1098
|
+
this.state = 148;
|
|
1099
|
+
this.parameter();
|
|
1100
|
+
}
|
|
1101
|
+
break;
|
|
1102
|
+
default:
|
|
1103
|
+
throw new NoViableAltException(this);
|
|
1104
|
+
}
|
|
698
1105
|
}
|
|
699
1106
|
}
|
|
700
|
-
this.state =
|
|
1107
|
+
this.state = 155;
|
|
701
1108
|
this._errHandler.sync(this);
|
|
702
1109
|
_la = this._input.LA(1);
|
|
703
1110
|
}
|
|
704
|
-
this.state =
|
|
1111
|
+
this.state = 156;
|
|
705
1112
|
this.match(WebdaQLParserParser.RR_SQ_BRACKET);
|
|
706
1113
|
}
|
|
707
1114
|
}
|
|
@@ -736,6 +1143,75 @@ export class WebdaQLParserParser extends Parser {
|
|
|
736
1143
|
}
|
|
737
1144
|
return true;
|
|
738
1145
|
}
|
|
1146
|
+
static _serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03(\xA1\x04\x02" +
|
|
1147
|
+
"\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07" +
|
|
1148
|
+
"\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04" +
|
|
1149
|
+
'\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x03\x02\x05\x02"\n\x02\x03\x02' +
|
|
1150
|
+
"\x05\x02%\n\x02\x03\x02\x05\x02(\n\x02\x03\x02\x05\x02+\n\x02\x03\x02" +
|
|
1151
|
+
"\x03\x02\x03\x03\x03\x03\x03\x03\x05\x032\n\x03\x03\x04\x03\x04\x03\x04" +
|
|
1152
|
+
"\x05\x047\n\x04\x03\x05\x03\x05\x05\x05;\n\x05\x03\x06\x03\x06\x03\x06" +
|
|
1153
|
+
"\x03\x06\x07\x06A\n\x06\f\x06\x0E\x06D\v\x06\x03\x07\x03\x07\x03\x07\x03" +
|
|
1154
|
+
"\x07\x03\x07\x05\x07K\n\x07\x03\x07\x03\x07\x03\x07\x03\x07\x05\x07Q\n" +
|
|
1155
|
+
"\x07\x03\x07\x03\x07\x03\x07\x03\x07\x05\x07W\n\x07\x03\x07\x03\x07\x03" +
|
|
1156
|
+
"\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" +
|
|
1157
|
+
"\x07\x03\x07\x05\x07f\n\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x05" +
|
|
1158
|
+
"\x07m\n\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x07\x07u\n" +
|
|
1159
|
+
"\x07\f\x07\x0E\x07x\v\x07\x03\b\x03\b\x03\b\x03\b\x05\b~\n\b\x03\t\x03" +
|
|
1160
|
+
"\t\x05\t\x82\n\t\x03\n\x03\n\x03\v\x03\v\x03\f\x03\f\x03\r\x03\r\x03\x0E" +
|
|
1161
|
+
"\x03\x0E\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x10\x05\x10\x93\n\x10\x03" +
|
|
1162
|
+
"\x10\x03\x10\x03\x10\x05\x10\x98\n\x10\x07\x10\x9A\n\x10\f\x10\x0E\x10" +
|
|
1163
|
+
"\x9D\v\x10\x03\x10\x03\x10\x03\x10\x02\x02\x03\f\x11\x02\x02\x04\x02\x06" +
|
|
1164
|
+
"\x02\b\x02\n\x02\f\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02" +
|
|
1165
|
+
"\x1A\x02\x1C\x02\x1E\x02\x02\b\x03\x02\x1E\x1F\x03\x02\r\x12\x03\x02&" +
|
|
1166
|
+
"\'\x03\x02\x19\x1A\x03\x02 !\x03\x02$%\x02\xAD\x02!\x03\x02\x02\x02\x04" +
|
|
1167
|
+
".\x03\x02\x02\x02\x063\x03\x02\x02\x02\b8\x03\x02\x02\x02\n<\x03\x02\x02" +
|
|
1168
|
+
"\x02\fl\x03\x02\x02\x02\x0E}\x03\x02\x02\x02\x10\x81\x03\x02\x02\x02\x12" +
|
|
1169
|
+
"\x83\x03\x02\x02\x02\x14\x85\x03\x02\x02\x02\x16\x87\x03\x02\x02\x02\x18" +
|
|
1170
|
+
"\x89\x03\x02\x02\x02\x1A\x8B\x03\x02\x02\x02\x1C\x8D\x03\x02\x02\x02\x1E" +
|
|
1171
|
+
'\x8F\x03\x02\x02\x02 "\x05\f\x07\x02! \x03\x02\x02\x02!"\x03\x02\x02' +
|
|
1172
|
+
'\x02"$\x03\x02\x02\x02#%\x05\n\x06\x02$#\x03\x02\x02\x02$%\x03\x02\x02' +
|
|
1173
|
+
"\x02%\'\x03\x02\x02\x02&(\x05\x04\x03\x02\'&\x03\x02\x02\x02\'(\x03\x02" +
|
|
1174
|
+
"\x02\x02(*\x03\x02\x02\x02)+\x05\x06\x04\x02*)\x03\x02\x02\x02*+\x03\x02" +
|
|
1175
|
+
"\x02\x02+,\x03\x02\x02\x02,-\x07\x02\x02\x03-\x03\x03\x02\x02\x02.1\x07" +
|
|
1176
|
+
"\x1B\x02\x02/2\x05\x18\r\x0202\x05\x1C\x0F\x021/\x03\x02\x02\x0210\x03" +
|
|
1177
|
+
"\x02\x02\x022\x05\x03\x02\x02\x0236\x07\x1C\x02\x0247\x05\x16\f\x0257" +
|
|
1178
|
+
"\x05\x1C\x0F\x0264\x03\x02\x02\x0265\x03\x02\x02\x027\x07\x03\x02\x02" +
|
|
1179
|
+
"\x028:\x05\x12\n\x029;\t\x02\x02\x02:9\x03\x02\x02\x02:;\x03\x02\x02\x02" +
|
|
1180
|
+
";\t\x03\x02\x02\x02<=\x07\x1D\x02\x02=B\x05\b\x05\x02>?\x07\x06\x02\x02" +
|
|
1181
|
+
"?A\x05\b\x05\x02@>\x03\x02\x02\x02AD\x03\x02\x02\x02B@\x03\x02\x02\x02" +
|
|
1182
|
+
"BC\x03\x02\x02\x02C\v\x03\x02\x02\x02DB\x03\x02\x02\x02EF\b\x07\x01\x02" +
|
|
1183
|
+
"FG\x05\x12\n\x02GJ\x07\x13\x02\x02HK\x05\x16\f\x02IK\x05\x1C\x0F\x02J" +
|
|
1184
|
+
"H\x03\x02\x02\x02JI\x03\x02\x02\x02Km\x03\x02\x02\x02LM\x05\x12\n\x02" +
|
|
1185
|
+
"MP\x07\x14\x02\x02NQ\x05\x1E\x10\x02OQ\x05\x1C\x0F\x02PN\x03\x02\x02\x02" +
|
|
1186
|
+
"PO\x03\x02\x02\x02Qm\x03\x02\x02\x02RS\x05\x12\n\x02SV\x07\x15\x02\x02" +
|
|
1187
|
+
"TW\x05\x16\f\x02UW\x05\x1C\x0F\x02VT\x03\x02\x02\x02VU\x03\x02\x02\x02" +
|
|
1188
|
+
"Wm\x03\x02\x02\x02XY\x05\x12\n\x02YZ\x07\x16\x02\x02Z[\x07\x18\x02\x02" +
|
|
1189
|
+
"[m\x03\x02\x02\x02\\]\x05\x12\n\x02]^\x07\x16\x02\x02^_\x07\x17\x02\x02" +
|
|
1190
|
+
"_`\x07\x18\x02\x02`m\x03\x02\x02\x02ab\x05\x12\n\x02be\t\x03\x02\x02c" +
|
|
1191
|
+
"f\x05\x0E\b\x02df\x05\x1C\x0F\x02ec\x03\x02\x02\x02ed\x03\x02\x02\x02" +
|
|
1192
|
+
"fm\x03\x02\x02\x02gh\x07\x04\x02\x02hi\x05\f\x07\x02ij\x07\x05\x02\x02" +
|
|
1193
|
+
"jm\x03\x02\x02\x02km\x05\x10\t\x02lE\x03\x02\x02\x02lL\x03\x02\x02\x02" +
|
|
1194
|
+
"lR\x03\x02\x02\x02lX\x03\x02\x02\x02l\\\x03\x02\x02\x02la\x03\x02\x02" +
|
|
1195
|
+
"\x02lg\x03\x02\x02\x02lk\x03\x02\x02\x02mv\x03\x02\x02\x02no\f\x06\x02" +
|
|
1196
|
+
"\x02op\x07\v\x02\x02pu\x05\f\x07\x07qr\f\x05\x02\x02rs\x07\f\x02\x02s" +
|
|
1197
|
+
"u\x05\f\x07\x06tn\x03\x02\x02\x02tq\x03\x02\x02\x02ux\x03\x02\x02\x02" +
|
|
1198
|
+
"vt\x03\x02\x02\x02vw\x03\x02\x02\x02w\r\x03\x02\x02\x02xv\x03\x02\x02" +
|
|
1199
|
+
"\x02y~\x05\x14\v\x02z~\x05\x18\r\x02{~\x05\x1A\x0E\x02|~\x05\x16\f\x02" +
|
|
1200
|
+
"}y\x03\x02\x02\x02}z\x03\x02\x02\x02}{\x03\x02\x02\x02}|\x03\x02\x02\x02" +
|
|
1201
|
+
"~\x0F\x03\x02\x02\x02\x7F\x82\x05\x0E\b\x02\x80\x82\x05\x12\n\x02\x81" +
|
|
1202
|
+
"\x7F\x03\x02\x02\x02\x81\x80\x03\x02\x02\x02\x82\x11\x03\x02\x02\x02\x83" +
|
|
1203
|
+
"\x84\t\x04\x02\x02\x84\x13\x03\x02\x02\x02\x85\x86\t\x05\x02\x02\x86\x15" +
|
|
1204
|
+
"\x03\x02\x02\x02\x87\x88\t\x06\x02\x02\x88\x17\x03\x02\x02\x02\x89\x8A" +
|
|
1205
|
+
'\x07"\x02\x02\x8A\x19\x03\x02\x02\x02\x8B\x8C\x07#\x02\x02\x8C\x1B\x03' +
|
|
1206
|
+
"\x02\x02\x02\x8D\x8E\t\x07\x02\x02\x8E\x1D\x03\x02\x02\x02\x8F\x92\x07" +
|
|
1207
|
+
"\t\x02\x02\x90\x93\x05\x0E\b\x02\x91\x93\x05\x1C\x0F\x02\x92\x90\x03\x02" +
|
|
1208
|
+
"\x02\x02\x92\x91\x03\x02\x02\x02\x93\x9B\x03\x02\x02\x02\x94\x97\x07\x06" +
|
|
1209
|
+
"\x02\x02\x95\x98\x05\x0E\b\x02\x96\x98\x05\x1C\x0F\x02\x97\x95\x03\x02" +
|
|
1210
|
+
"\x02\x02\x97\x96\x03\x02\x02\x02\x98\x9A\x03\x02\x02\x02\x99\x94\x03\x02" +
|
|
1211
|
+
"\x02\x02\x9A\x9D\x03\x02\x02\x02\x9B\x99\x03\x02\x02\x02\x9B\x9C\x03\x02" +
|
|
1212
|
+
"\x02\x02\x9C\x9E\x03\x02\x02\x02\x9D\x9B\x03\x02\x02\x02\x9E\x9F\x07\n" +
|
|
1213
|
+
"\x02\x02\x9F\x1F\x03\x02\x02\x02\x16!$\'*16:BJPVeltv}\x81\x92\x97\x9B";
|
|
1214
|
+
static __ATN;
|
|
739
1215
|
static get _ATN() {
|
|
740
1216
|
if (!WebdaQLParserParser.__ATN) {
|
|
741
1217
|
WebdaQLParserParser.__ATN = new ATNDeserializer().deserialize(Utils.toCharArray(WebdaQLParserParser._serializedATN));
|
|
@@ -743,182 +1219,6 @@ export class WebdaQLParserParser extends Parser {
|
|
|
743
1219
|
return WebdaQLParserParser.__ATN;
|
|
744
1220
|
}
|
|
745
1221
|
}
|
|
746
|
-
WebdaQLParserParser.SPACE = 1;
|
|
747
|
-
WebdaQLParserParser.LR_BRACKET = 2;
|
|
748
|
-
WebdaQLParserParser.RR_BRACKET = 3;
|
|
749
|
-
WebdaQLParserParser.COMMA = 4;
|
|
750
|
-
WebdaQLParserParser.SINGLE_QUOTE_SYMB = 5;
|
|
751
|
-
WebdaQLParserParser.DOUBLE_QUOTE_SYMB = 6;
|
|
752
|
-
WebdaQLParserParser.LR_SQ_BRACKET = 7;
|
|
753
|
-
WebdaQLParserParser.RR_SQ_BRACKET = 8;
|
|
754
|
-
WebdaQLParserParser.AND = 9;
|
|
755
|
-
WebdaQLParserParser.OR = 10;
|
|
756
|
-
WebdaQLParserParser.EQUAL = 11;
|
|
757
|
-
WebdaQLParserParser.NOT_EQUAL = 12;
|
|
758
|
-
WebdaQLParserParser.GREATER = 13;
|
|
759
|
-
WebdaQLParserParser.GREATER_OR_EQUAL = 14;
|
|
760
|
-
WebdaQLParserParser.LESS = 15;
|
|
761
|
-
WebdaQLParserParser.LESS_OR_EQUAL = 16;
|
|
762
|
-
WebdaQLParserParser.LIKE = 17;
|
|
763
|
-
WebdaQLParserParser.IN = 18;
|
|
764
|
-
WebdaQLParserParser.CONTAINS = 19;
|
|
765
|
-
WebdaQLParserParser.TRUE = 20;
|
|
766
|
-
WebdaQLParserParser.FALSE = 21;
|
|
767
|
-
WebdaQLParserParser.LIMIT = 22;
|
|
768
|
-
WebdaQLParserParser.OFFSET = 23;
|
|
769
|
-
WebdaQLParserParser.ORDER_BY = 24;
|
|
770
|
-
WebdaQLParserParser.ASC = 25;
|
|
771
|
-
WebdaQLParserParser.DESC = 26;
|
|
772
|
-
WebdaQLParserParser.DQUOTED_STRING_LITERAL = 27;
|
|
773
|
-
WebdaQLParserParser.SQUOTED_STRING_LITERAL = 28;
|
|
774
|
-
WebdaQLParserParser.INTEGER_LITERAL = 29;
|
|
775
|
-
WebdaQLParserParser.IDENTIFIER = 30;
|
|
776
|
-
WebdaQLParserParser.IDENTIFIER_WITH_NUMBER = 31;
|
|
777
|
-
WebdaQLParserParser.FUNCTION_IDENTIFIER_WITH_UNDERSCORE = 32;
|
|
778
|
-
WebdaQLParserParser.RULE_webdaql = 0;
|
|
779
|
-
WebdaQLParserParser.RULE_limitExpression = 1;
|
|
780
|
-
WebdaQLParserParser.RULE_offsetExpression = 2;
|
|
781
|
-
WebdaQLParserParser.RULE_orderFieldExpression = 3;
|
|
782
|
-
WebdaQLParserParser.RULE_orderExpression = 4;
|
|
783
|
-
WebdaQLParserParser.RULE_expression = 5;
|
|
784
|
-
WebdaQLParserParser.RULE_values = 6;
|
|
785
|
-
WebdaQLParserParser.RULE_atom = 7;
|
|
786
|
-
WebdaQLParserParser.RULE_identifier = 8;
|
|
787
|
-
WebdaQLParserParser.RULE_booleanLiteral = 9;
|
|
788
|
-
WebdaQLParserParser.RULE_stringLiteral = 10;
|
|
789
|
-
WebdaQLParserParser.RULE_integerLiteral = 11;
|
|
790
|
-
WebdaQLParserParser.RULE_setExpression = 12;
|
|
791
|
-
// tslint:disable:no-trailing-whitespace
|
|
792
|
-
WebdaQLParserParser.ruleNames = [
|
|
793
|
-
"webdaql",
|
|
794
|
-
"limitExpression",
|
|
795
|
-
"offsetExpression",
|
|
796
|
-
"orderFieldExpression",
|
|
797
|
-
"orderExpression",
|
|
798
|
-
"expression",
|
|
799
|
-
"values",
|
|
800
|
-
"atom",
|
|
801
|
-
"identifier",
|
|
802
|
-
"booleanLiteral",
|
|
803
|
-
"stringLiteral",
|
|
804
|
-
"integerLiteral",
|
|
805
|
-
"setExpression"
|
|
806
|
-
];
|
|
807
|
-
WebdaQLParserParser._LITERAL_NAMES = [
|
|
808
|
-
undefined,
|
|
809
|
-
undefined,
|
|
810
|
-
"'('",
|
|
811
|
-
"')'",
|
|
812
|
-
"','",
|
|
813
|
-
"'''",
|
|
814
|
-
"'\"'",
|
|
815
|
-
"'['",
|
|
816
|
-
"']'",
|
|
817
|
-
"'AND'",
|
|
818
|
-
"'OR'",
|
|
819
|
-
"'='",
|
|
820
|
-
"'!='",
|
|
821
|
-
"'>'",
|
|
822
|
-
"'>='",
|
|
823
|
-
"'<'",
|
|
824
|
-
"'<='",
|
|
825
|
-
"'LIKE'",
|
|
826
|
-
"'IN'",
|
|
827
|
-
"'CONTAINS'",
|
|
828
|
-
"'TRUE'",
|
|
829
|
-
"'FALSE'",
|
|
830
|
-
"'LIMIT'",
|
|
831
|
-
"'OFFSET'",
|
|
832
|
-
"'ORDER BY'",
|
|
833
|
-
"'ASC'",
|
|
834
|
-
"'DESC'"
|
|
835
|
-
];
|
|
836
|
-
WebdaQLParserParser._SYMBOLIC_NAMES = [
|
|
837
|
-
undefined,
|
|
838
|
-
"SPACE",
|
|
839
|
-
"LR_BRACKET",
|
|
840
|
-
"RR_BRACKET",
|
|
841
|
-
"COMMA",
|
|
842
|
-
"SINGLE_QUOTE_SYMB",
|
|
843
|
-
"DOUBLE_QUOTE_SYMB",
|
|
844
|
-
"LR_SQ_BRACKET",
|
|
845
|
-
"RR_SQ_BRACKET",
|
|
846
|
-
"AND",
|
|
847
|
-
"OR",
|
|
848
|
-
"EQUAL",
|
|
849
|
-
"NOT_EQUAL",
|
|
850
|
-
"GREATER",
|
|
851
|
-
"GREATER_OR_EQUAL",
|
|
852
|
-
"LESS",
|
|
853
|
-
"LESS_OR_EQUAL",
|
|
854
|
-
"LIKE",
|
|
855
|
-
"IN",
|
|
856
|
-
"CONTAINS",
|
|
857
|
-
"TRUE",
|
|
858
|
-
"FALSE",
|
|
859
|
-
"LIMIT",
|
|
860
|
-
"OFFSET",
|
|
861
|
-
"ORDER_BY",
|
|
862
|
-
"ASC",
|
|
863
|
-
"DESC",
|
|
864
|
-
"DQUOTED_STRING_LITERAL",
|
|
865
|
-
"SQUOTED_STRING_LITERAL",
|
|
866
|
-
"INTEGER_LITERAL",
|
|
867
|
-
"IDENTIFIER",
|
|
868
|
-
"IDENTIFIER_WITH_NUMBER",
|
|
869
|
-
"FUNCTION_IDENTIFIER_WITH_UNDERSCORE"
|
|
870
|
-
];
|
|
871
|
-
WebdaQLParserParser.VOCABULARY = new VocabularyImpl(WebdaQLParserParser._LITERAL_NAMES, WebdaQLParserParser._SYMBOLIC_NAMES, []);
|
|
872
|
-
WebdaQLParserParser._serializedATN = '\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x03"}\x04\x02\t' +
|
|
873
|
-
"\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07\t" +
|
|
874
|
-
"\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r\t\r\x04\x0E" +
|
|
875
|
-
"\t\x0E\x03\x02\x05\x02\x1E\n\x02\x03\x02\x05\x02!\n\x02\x03\x02\x05\x02" +
|
|
876
|
-
"$\n\x02\x03\x02\x05\x02'\n\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03" +
|
|
877
|
-
"\x03\x04\x03\x04\x03\x04\x03\x05\x03\x05\x05\x053\n\x05\x03\x06\x03\x06" +
|
|
878
|
-
"\x03\x06\x03\x06\x07\x069\n\x06\f\x06\x0E\x06<\v\x06\x03\x07\x03\x07\x03" +
|
|
879
|
-
"\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" +
|
|
880
|
-
"\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" +
|
|
881
|
-
"\x07\x03\x07\x05\x07T\n\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03\x07\x03" +
|
|
882
|
-
"\x07\x07\x07\\\n\x07\f\x07\x0E\x07_\v\x07\x03\b\x03\b\x03\b\x05\bd\n\b" +
|
|
883
|
-
"\x03\t\x03\t\x05\th\n\t\x03\n\x03\n\x03\v\x03\v\x03\f\x03\f\x03\r\x03" +
|
|
884
|
-
"\r\x03\x0E\x03\x0E\x03\x0E\x03\x0E\x07\x0Ev\n\x0E\f\x0E\x0E\x0Ey\v\x0E" +
|
|
885
|
-
"\x03\x0E\x03\x0E\x03\x0E\x02\x02\x03\f\x0F\x02\x02\x04\x02\x06\x02\b\x02" +
|
|
886
|
-
"\n\x02\f\x02\x0E\x02\x10\x02\x12\x02\x14\x02\x16\x02\x18\x02\x1A\x02\x02" +
|
|
887
|
-
"\x07\x03\x02\x1B\x1C\x03\x02\r\x12\x03\x02 !\x03\x02\x16\x17\x03\x02\x1D" +
|
|
888
|
-
"\x1E\x02\x80\x02\x1D\x03\x02\x02\x02\x04*\x03\x02\x02\x02\x06-\x03\x02" +
|
|
889
|
-
"\x02\x02\b0\x03\x02\x02\x02\n4\x03\x02\x02\x02\fS\x03\x02\x02\x02\x0E" +
|
|
890
|
-
"c\x03\x02\x02\x02\x10g\x03\x02\x02\x02\x12i\x03\x02\x02\x02\x14k\x03\x02" +
|
|
891
|
-
"\x02\x02\x16m\x03\x02\x02\x02\x18o\x03\x02\x02\x02\x1Aq\x03\x02\x02\x02" +
|
|
892
|
-
"\x1C\x1E\x05\f\x07\x02\x1D\x1C\x03\x02\x02\x02\x1D\x1E\x03\x02\x02\x02" +
|
|
893
|
-
"\x1E \x03\x02\x02\x02\x1F!\x05\n\x06\x02 \x1F\x03\x02\x02\x02 !\x03\x02" +
|
|
894
|
-
'\x02\x02!#\x03\x02\x02\x02"$\x05\x04\x03\x02#"\x03\x02\x02\x02#$\x03' +
|
|
895
|
-
"\x02\x02\x02$&\x03\x02\x02\x02%'\x05\x06\x04\x02&%\x03\x02\x02\x02&'" +
|
|
896
|
-
"\x03\x02\x02\x02'(\x03\x02\x02\x02()\x07\x02\x02\x03)\x03\x03\x02\x02" +
|
|
897
|
-
"\x02*+\x07\x18\x02\x02+,\x05\x18\r\x02,\x05\x03\x02\x02\x02-.\x07\x19" +
|
|
898
|
-
"\x02\x02./\x05\x16\f\x02/\x07\x03\x02\x02\x0202\x05\x12\n\x0213\t\x02" +
|
|
899
|
-
"\x02\x0221\x03\x02\x02\x0223\x03\x02\x02\x023\t\x03\x02\x02\x0245\x07" +
|
|
900
|
-
"\x1A\x02\x025:\x05\b\x05\x0267\x07\x06\x02\x0279\x05\b\x05\x0286\x03\x02" +
|
|
901
|
-
"\x02\x029<\x03\x02\x02\x02:8\x03\x02\x02\x02:;\x03\x02\x02\x02;\v\x03" +
|
|
902
|
-
"\x02\x02\x02<:\x03\x02\x02\x02=>\b\x07\x01\x02>?\x05\x12\n\x02?@\x07\x13" +
|
|
903
|
-
"\x02\x02@A\x05\x16\f\x02AT\x03\x02\x02\x02BC\x05\x12\n\x02CD\x07\x14\x02" +
|
|
904
|
-
"\x02DE\x05\x1A\x0E\x02ET\x03\x02\x02\x02FG\x05\x12\n\x02GH\x07\x15\x02" +
|
|
905
|
-
"\x02HI\x05\x16\f\x02IT\x03\x02\x02\x02JK\x05\x12\n\x02KL\t\x03\x02\x02" +
|
|
906
|
-
"LM\x05\x0E\b\x02MT\x03\x02\x02\x02NO\x07\x04\x02\x02OP\x05\f\x07\x02P" +
|
|
907
|
-
"Q\x07\x05\x02\x02QT\x03\x02\x02\x02RT\x05\x10\t\x02S=\x03\x02\x02\x02" +
|
|
908
|
-
"SB\x03\x02\x02\x02SF\x03\x02\x02\x02SJ\x03\x02\x02\x02SN\x03\x02\x02\x02" +
|
|
909
|
-
"SR\x03\x02\x02\x02T]\x03\x02\x02\x02UV\f\x06\x02\x02VW\x07\v\x02\x02W" +
|
|
910
|
-
"\\\x05\f\x07\x07XY\f\x05\x02\x02YZ\x07\f\x02\x02Z\\\x05\f\x07\x06[U\x03" +
|
|
911
|
-
"\x02\x02\x02[X\x03\x02\x02\x02\\_\x03\x02\x02\x02][\x03\x02\x02\x02]^" +
|
|
912
|
-
"\x03\x02\x02\x02^\r\x03\x02\x02\x02_]\x03\x02\x02\x02`d\x05\x14\v\x02" +
|
|
913
|
-
"ad\x05\x18\r\x02bd\x05\x16\f\x02c`\x03\x02\x02\x02ca\x03\x02\x02\x02c" +
|
|
914
|
-
"b\x03\x02\x02\x02d\x0F\x03\x02\x02\x02eh\x05\x0E\b\x02fh\x05\x12\n\x02" +
|
|
915
|
-
"ge\x03\x02\x02\x02gf\x03\x02\x02\x02h\x11\x03\x02\x02\x02ij\t\x04\x02" +
|
|
916
|
-
"\x02j\x13\x03\x02\x02\x02kl\t\x05\x02\x02l\x15\x03\x02\x02\x02mn\t\x06" +
|
|
917
|
-
"\x02\x02n\x17\x03\x02\x02\x02op\x07\x1F\x02\x02p\x19\x03\x02\x02\x02q" +
|
|
918
|
-
"r\x07\t\x02\x02rw\x05\x0E\b\x02st\x07\x06\x02\x02tv\x05\x0E\b\x02us\x03" +
|
|
919
|
-
"\x02\x02\x02vy\x03\x02\x02\x02wu\x03\x02\x02\x02wx\x03\x02\x02\x02xz\x03" +
|
|
920
|
-
"\x02\x02\x02yw\x03\x02\x02\x02z{\x07\n\x02\x02{\x1B\x03\x02\x02\x02\x0E" +
|
|
921
|
-
"\x1D #&2:S[]cgw";
|
|
922
1222
|
export class WebdaqlContext extends ParserRuleContext {
|
|
923
1223
|
EOF() {
|
|
924
1224
|
return this.getToken(WebdaQLParserParser.EOF, 0);
|
|
@@ -969,7 +1269,10 @@ export class LimitExpressionContext extends ParserRuleContext {
|
|
|
969
1269
|
return this.getToken(WebdaQLParserParser.LIMIT, 0);
|
|
970
1270
|
}
|
|
971
1271
|
integerLiteral() {
|
|
972
|
-
return this.
|
|
1272
|
+
return this.tryGetRuleContext(0, IntegerLiteralContext);
|
|
1273
|
+
}
|
|
1274
|
+
parameter() {
|
|
1275
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
973
1276
|
}
|
|
974
1277
|
constructor(parent, invokingState) {
|
|
975
1278
|
super(parent, invokingState);
|
|
@@ -1005,7 +1308,10 @@ export class OffsetExpressionContext extends ParserRuleContext {
|
|
|
1005
1308
|
return this.getToken(WebdaQLParserParser.OFFSET, 0);
|
|
1006
1309
|
}
|
|
1007
1310
|
stringLiteral() {
|
|
1008
|
-
return this.
|
|
1311
|
+
return this.tryGetRuleContext(0, StringLiteralContext);
|
|
1312
|
+
}
|
|
1313
|
+
parameter() {
|
|
1314
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
1009
1315
|
}
|
|
1010
1316
|
constructor(parent, invokingState) {
|
|
1011
1317
|
super(parent, invokingState);
|
|
@@ -1144,7 +1450,10 @@ export class LikeExpressionContext extends ExpressionContext {
|
|
|
1144
1450
|
return this.getToken(WebdaQLParserParser.LIKE, 0);
|
|
1145
1451
|
}
|
|
1146
1452
|
stringLiteral() {
|
|
1147
|
-
return this.
|
|
1453
|
+
return this.tryGetRuleContext(0, StringLiteralContext);
|
|
1454
|
+
}
|
|
1455
|
+
parameter() {
|
|
1456
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
1148
1457
|
}
|
|
1149
1458
|
constructor(ctx) {
|
|
1150
1459
|
super(ctx.parent, ctx.invokingState);
|
|
@@ -1180,7 +1489,10 @@ export class InExpressionContext extends ExpressionContext {
|
|
|
1180
1489
|
return this.getToken(WebdaQLParserParser.IN, 0);
|
|
1181
1490
|
}
|
|
1182
1491
|
setExpression() {
|
|
1183
|
-
return this.
|
|
1492
|
+
return this.tryGetRuleContext(0, SetExpressionContext);
|
|
1493
|
+
}
|
|
1494
|
+
parameter() {
|
|
1495
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
1184
1496
|
}
|
|
1185
1497
|
constructor(ctx) {
|
|
1186
1498
|
super(ctx.parent, ctx.invokingState);
|
|
@@ -1216,7 +1528,10 @@ export class ContainsExpressionContext extends ExpressionContext {
|
|
|
1216
1528
|
return this.getToken(WebdaQLParserParser.CONTAINS, 0);
|
|
1217
1529
|
}
|
|
1218
1530
|
stringLiteral() {
|
|
1219
|
-
return this.
|
|
1531
|
+
return this.tryGetRuleContext(0, StringLiteralContext);
|
|
1532
|
+
}
|
|
1533
|
+
parameter() {
|
|
1534
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
1220
1535
|
}
|
|
1221
1536
|
constructor(ctx) {
|
|
1222
1537
|
super(ctx.parent, ctx.invokingState);
|
|
@@ -1244,12 +1559,84 @@ export class ContainsExpressionContext extends ExpressionContext {
|
|
|
1244
1559
|
}
|
|
1245
1560
|
}
|
|
1246
1561
|
}
|
|
1247
|
-
export class
|
|
1562
|
+
export class IsNullExpressionContext extends ExpressionContext {
|
|
1248
1563
|
identifier() {
|
|
1249
1564
|
return this.getRuleContext(0, IdentifierContext);
|
|
1250
1565
|
}
|
|
1251
|
-
|
|
1252
|
-
return this.
|
|
1566
|
+
IS() {
|
|
1567
|
+
return this.getToken(WebdaQLParserParser.IS, 0);
|
|
1568
|
+
}
|
|
1569
|
+
NULL() {
|
|
1570
|
+
return this.getToken(WebdaQLParserParser.NULL, 0);
|
|
1571
|
+
}
|
|
1572
|
+
constructor(ctx) {
|
|
1573
|
+
super(ctx.parent, ctx.invokingState);
|
|
1574
|
+
this.copyFrom(ctx);
|
|
1575
|
+
}
|
|
1576
|
+
// @Override
|
|
1577
|
+
enterRule(listener) {
|
|
1578
|
+
if (listener.enterIsNullExpression) {
|
|
1579
|
+
listener.enterIsNullExpression(this);
|
|
1580
|
+
}
|
|
1581
|
+
}
|
|
1582
|
+
// @Override
|
|
1583
|
+
exitRule(listener) {
|
|
1584
|
+
if (listener.exitIsNullExpression) {
|
|
1585
|
+
listener.exitIsNullExpression(this);
|
|
1586
|
+
}
|
|
1587
|
+
}
|
|
1588
|
+
// @Override
|
|
1589
|
+
accept(visitor) {
|
|
1590
|
+
if (visitor.visitIsNullExpression) {
|
|
1591
|
+
return visitor.visitIsNullExpression(this);
|
|
1592
|
+
}
|
|
1593
|
+
else {
|
|
1594
|
+
return visitor.visitChildren(this);
|
|
1595
|
+
}
|
|
1596
|
+
}
|
|
1597
|
+
}
|
|
1598
|
+
export class IsNotNullExpressionContext extends ExpressionContext {
|
|
1599
|
+
identifier() {
|
|
1600
|
+
return this.getRuleContext(0, IdentifierContext);
|
|
1601
|
+
}
|
|
1602
|
+
IS() {
|
|
1603
|
+
return this.getToken(WebdaQLParserParser.IS, 0);
|
|
1604
|
+
}
|
|
1605
|
+
NOT() {
|
|
1606
|
+
return this.getToken(WebdaQLParserParser.NOT, 0);
|
|
1607
|
+
}
|
|
1608
|
+
NULL() {
|
|
1609
|
+
return this.getToken(WebdaQLParserParser.NULL, 0);
|
|
1610
|
+
}
|
|
1611
|
+
constructor(ctx) {
|
|
1612
|
+
super(ctx.parent, ctx.invokingState);
|
|
1613
|
+
this.copyFrom(ctx);
|
|
1614
|
+
}
|
|
1615
|
+
// @Override
|
|
1616
|
+
enterRule(listener) {
|
|
1617
|
+
if (listener.enterIsNotNullExpression) {
|
|
1618
|
+
listener.enterIsNotNullExpression(this);
|
|
1619
|
+
}
|
|
1620
|
+
}
|
|
1621
|
+
// @Override
|
|
1622
|
+
exitRule(listener) {
|
|
1623
|
+
if (listener.exitIsNotNullExpression) {
|
|
1624
|
+
listener.exitIsNotNullExpression(this);
|
|
1625
|
+
}
|
|
1626
|
+
}
|
|
1627
|
+
// @Override
|
|
1628
|
+
accept(visitor) {
|
|
1629
|
+
if (visitor.visitIsNotNullExpression) {
|
|
1630
|
+
return visitor.visitIsNotNullExpression(this);
|
|
1631
|
+
}
|
|
1632
|
+
else {
|
|
1633
|
+
return visitor.visitChildren(this);
|
|
1634
|
+
}
|
|
1635
|
+
}
|
|
1636
|
+
}
|
|
1637
|
+
export class BinaryComparisonExpressionContext extends ExpressionContext {
|
|
1638
|
+
identifier() {
|
|
1639
|
+
return this.getRuleContext(0, IdentifierContext);
|
|
1253
1640
|
}
|
|
1254
1641
|
EQUAL() {
|
|
1255
1642
|
return this.tryGetToken(WebdaQLParserParser.EQUAL, 0);
|
|
@@ -1269,6 +1656,12 @@ export class BinaryComparisonExpressionContext extends ExpressionContext {
|
|
|
1269
1656
|
GREATER() {
|
|
1270
1657
|
return this.tryGetToken(WebdaQLParserParser.GREATER, 0);
|
|
1271
1658
|
}
|
|
1659
|
+
values() {
|
|
1660
|
+
return this.tryGetRuleContext(0, ValuesContext);
|
|
1661
|
+
}
|
|
1662
|
+
parameter() {
|
|
1663
|
+
return this.tryGetRuleContext(0, ParameterContext);
|
|
1664
|
+
}
|
|
1272
1665
|
constructor(ctx) {
|
|
1273
1666
|
super(ctx.parent, ctx.invokingState);
|
|
1274
1667
|
this.copyFrom(ctx);
|
|
@@ -1509,6 +1902,36 @@ export class IntegerAtomContext extends ValuesContext {
|
|
|
1509
1902
|
}
|
|
1510
1903
|
}
|
|
1511
1904
|
}
|
|
1905
|
+
export class NumberAtomContext extends ValuesContext {
|
|
1906
|
+
numberLiteral() {
|
|
1907
|
+
return this.getRuleContext(0, NumberLiteralContext);
|
|
1908
|
+
}
|
|
1909
|
+
constructor(ctx) {
|
|
1910
|
+
super(ctx.parent, ctx.invokingState);
|
|
1911
|
+
this.copyFrom(ctx);
|
|
1912
|
+
}
|
|
1913
|
+
// @Override
|
|
1914
|
+
enterRule(listener) {
|
|
1915
|
+
if (listener.enterNumberAtom) {
|
|
1916
|
+
listener.enterNumberAtom(this);
|
|
1917
|
+
}
|
|
1918
|
+
}
|
|
1919
|
+
// @Override
|
|
1920
|
+
exitRule(listener) {
|
|
1921
|
+
if (listener.exitNumberAtom) {
|
|
1922
|
+
listener.exitNumberAtom(this);
|
|
1923
|
+
}
|
|
1924
|
+
}
|
|
1925
|
+
// @Override
|
|
1926
|
+
accept(visitor) {
|
|
1927
|
+
if (visitor.visitNumberAtom) {
|
|
1928
|
+
return visitor.visitNumberAtom(this);
|
|
1929
|
+
}
|
|
1930
|
+
else {
|
|
1931
|
+
return visitor.visitChildren(this);
|
|
1932
|
+
}
|
|
1933
|
+
}
|
|
1934
|
+
}
|
|
1512
1935
|
export class StringAtomContext extends ValuesContext {
|
|
1513
1936
|
stringLiteral() {
|
|
1514
1937
|
return this.getRuleContext(0, StringLiteralContext);
|
|
@@ -1752,10 +2175,82 @@ export class IntegerLiteralContext extends ParserRuleContext {
|
|
|
1752
2175
|
}
|
|
1753
2176
|
}
|
|
1754
2177
|
}
|
|
2178
|
+
export class NumberLiteralContext extends ParserRuleContext {
|
|
2179
|
+
NUMBER_LITERAL() {
|
|
2180
|
+
return this.getToken(WebdaQLParserParser.NUMBER_LITERAL, 0);
|
|
2181
|
+
}
|
|
2182
|
+
constructor(parent, invokingState) {
|
|
2183
|
+
super(parent, invokingState);
|
|
2184
|
+
}
|
|
2185
|
+
// @Override
|
|
2186
|
+
get ruleIndex() {
|
|
2187
|
+
return WebdaQLParserParser.RULE_numberLiteral;
|
|
2188
|
+
}
|
|
2189
|
+
// @Override
|
|
2190
|
+
enterRule(listener) {
|
|
2191
|
+
if (listener.enterNumberLiteral) {
|
|
2192
|
+
listener.enterNumberLiteral(this);
|
|
2193
|
+
}
|
|
2194
|
+
}
|
|
2195
|
+
// @Override
|
|
2196
|
+
exitRule(listener) {
|
|
2197
|
+
if (listener.exitNumberLiteral) {
|
|
2198
|
+
listener.exitNumberLiteral(this);
|
|
2199
|
+
}
|
|
2200
|
+
}
|
|
2201
|
+
// @Override
|
|
2202
|
+
accept(visitor) {
|
|
2203
|
+
if (visitor.visitNumberLiteral) {
|
|
2204
|
+
return visitor.visitNumberLiteral(this);
|
|
2205
|
+
}
|
|
2206
|
+
else {
|
|
2207
|
+
return visitor.visitChildren(this);
|
|
2208
|
+
}
|
|
2209
|
+
}
|
|
2210
|
+
}
|
|
2211
|
+
export class ParameterContext extends ParserRuleContext {
|
|
2212
|
+
POSITIONAL_PARAMETER() {
|
|
2213
|
+
return this.tryGetToken(WebdaQLParserParser.POSITIONAL_PARAMETER, 0);
|
|
2214
|
+
}
|
|
2215
|
+
NAMED_PARAMETER() {
|
|
2216
|
+
return this.tryGetToken(WebdaQLParserParser.NAMED_PARAMETER, 0);
|
|
2217
|
+
}
|
|
2218
|
+
constructor(parent, invokingState) {
|
|
2219
|
+
super(parent, invokingState);
|
|
2220
|
+
}
|
|
2221
|
+
// @Override
|
|
2222
|
+
get ruleIndex() {
|
|
2223
|
+
return WebdaQLParserParser.RULE_parameter;
|
|
2224
|
+
}
|
|
2225
|
+
// @Override
|
|
2226
|
+
enterRule(listener) {
|
|
2227
|
+
if (listener.enterParameter) {
|
|
2228
|
+
listener.enterParameter(this);
|
|
2229
|
+
}
|
|
2230
|
+
}
|
|
2231
|
+
// @Override
|
|
2232
|
+
exitRule(listener) {
|
|
2233
|
+
if (listener.exitParameter) {
|
|
2234
|
+
listener.exitParameter(this);
|
|
2235
|
+
}
|
|
2236
|
+
}
|
|
2237
|
+
// @Override
|
|
2238
|
+
accept(visitor) {
|
|
2239
|
+
if (visitor.visitParameter) {
|
|
2240
|
+
return visitor.visitParameter(this);
|
|
2241
|
+
}
|
|
2242
|
+
else {
|
|
2243
|
+
return visitor.visitChildren(this);
|
|
2244
|
+
}
|
|
2245
|
+
}
|
|
2246
|
+
}
|
|
1755
2247
|
export class SetExpressionContext extends ParserRuleContext {
|
|
1756
2248
|
LR_SQ_BRACKET() {
|
|
1757
2249
|
return this.getToken(WebdaQLParserParser.LR_SQ_BRACKET, 0);
|
|
1758
2250
|
}
|
|
2251
|
+
RR_SQ_BRACKET() {
|
|
2252
|
+
return this.getToken(WebdaQLParserParser.RR_SQ_BRACKET, 0);
|
|
2253
|
+
}
|
|
1759
2254
|
values(i) {
|
|
1760
2255
|
if (i === undefined) {
|
|
1761
2256
|
return this.getRuleContexts(ValuesContext);
|
|
@@ -1764,8 +2259,13 @@ export class SetExpressionContext extends ParserRuleContext {
|
|
|
1764
2259
|
return this.getRuleContext(i, ValuesContext);
|
|
1765
2260
|
}
|
|
1766
2261
|
}
|
|
1767
|
-
|
|
1768
|
-
|
|
2262
|
+
parameter(i) {
|
|
2263
|
+
if (i === undefined) {
|
|
2264
|
+
return this.getRuleContexts(ParameterContext);
|
|
2265
|
+
}
|
|
2266
|
+
else {
|
|
2267
|
+
return this.getRuleContext(i, ParameterContext);
|
|
2268
|
+
}
|
|
1769
2269
|
}
|
|
1770
2270
|
COMMA(i) {
|
|
1771
2271
|
if (i === undefined) {
|