vtlengine 1.0.0__py3-none-any.whl → 1.0.1__py3-none-any.whl
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.
Potentially problematic release.
This version of vtlengine might be problematic. Click here for more details.
- vtlengine/API/_InternalApi.py +153 -100
- vtlengine/API/__init__.py +109 -67
- vtlengine/AST/ASTConstructor.py +188 -98
- vtlengine/AST/ASTConstructorModules/Expr.py +306 -200
- vtlengine/AST/ASTConstructorModules/ExprComponents.py +172 -102
- vtlengine/AST/ASTConstructorModules/Terminals.py +158 -95
- vtlengine/AST/ASTEncoders.py +1 -1
- vtlengine/AST/ASTTemplate.py +8 -9
- vtlengine/AST/ASTVisitor.py +8 -12
- vtlengine/AST/DAG/__init__.py +43 -35
- vtlengine/AST/DAG/_words.py +4 -4
- vtlengine/AST/Grammar/lexer.py +732 -142
- vtlengine/AST/Grammar/parser.py +2188 -826
- vtlengine/AST/Grammar/tokens.py +128 -128
- vtlengine/AST/VtlVisitor.py +7 -4
- vtlengine/AST/__init__.py +22 -11
- vtlengine/DataTypes/NumericTypesHandling.py +5 -4
- vtlengine/DataTypes/TimeHandling.py +194 -301
- vtlengine/DataTypes/__init__.py +304 -218
- vtlengine/Exceptions/__init__.py +52 -27
- vtlengine/Exceptions/messages.py +134 -62
- vtlengine/Interpreter/__init__.py +781 -487
- vtlengine/Model/__init__.py +165 -121
- vtlengine/Operators/Aggregation.py +156 -95
- vtlengine/Operators/Analytic.py +115 -59
- vtlengine/Operators/Assignment.py +7 -4
- vtlengine/Operators/Boolean.py +27 -32
- vtlengine/Operators/CastOperator.py +177 -131
- vtlengine/Operators/Clause.py +137 -99
- vtlengine/Operators/Comparison.py +148 -117
- vtlengine/Operators/Conditional.py +149 -98
- vtlengine/Operators/General.py +68 -47
- vtlengine/Operators/HROperators.py +91 -72
- vtlengine/Operators/Join.py +217 -118
- vtlengine/Operators/Numeric.py +89 -44
- vtlengine/Operators/RoleSetter.py +16 -15
- vtlengine/Operators/Set.py +61 -36
- vtlengine/Operators/String.py +213 -139
- vtlengine/Operators/Time.py +334 -216
- vtlengine/Operators/Validation.py +117 -76
- vtlengine/Operators/__init__.py +340 -213
- vtlengine/Utils/__init__.py +195 -40
- vtlengine/__init__.py +1 -1
- vtlengine/files/output/__init__.py +15 -6
- vtlengine/files/output/_time_period_representation.py +10 -9
- vtlengine/files/parser/__init__.py +77 -52
- vtlengine/files/parser/_rfc_dialect.py +6 -5
- vtlengine/files/parser/_time_checking.py +46 -37
- vtlengine-1.0.1.dist-info/METADATA +236 -0
- vtlengine-1.0.1.dist-info/RECORD +58 -0
- {vtlengine-1.0.dist-info → vtlengine-1.0.1.dist-info}/WHEEL +1 -1
- vtlengine-1.0.dist-info/METADATA +0 -104
- vtlengine-1.0.dist-info/RECORD +0 -58
- {vtlengine-1.0.dist-info → vtlengine-1.0.1.dist-info}/LICENSE.md +0 -0
vtlengine/AST/Grammar/parser.py
CHANGED
|
@@ -19,8 +19,8 @@ def serializedATN():
|
|
|
19
19
|
buf.write("\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22\4\23\t\23")
|
|
20
20
|
buf.write("\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31")
|
|
21
21
|
buf.write("\t\31\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36")
|
|
22
|
-
buf.write(
|
|
23
|
-
buf.write("&\4
|
|
22
|
+
buf.write('\4\37\t\37\4 \t \4!\t!\4"\t"\4#\t#\4$\t$\4%\t%\4&\t')
|
|
23
|
+
buf.write("&\4'\t'\4(\t(\4)\t)\4*\t*\4+\t+\4,\t,\4-\t-\4.\t.\4")
|
|
24
24
|
buf.write("/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t\64")
|
|
25
25
|
buf.write("\4\65\t\65\4\66\t\66\4\67\t\67\48\t8\49\t9\4:\t:\4;\t")
|
|
26
26
|
buf.write(";\4<\t<\4=\t=\4>\t>\4?\t?\4@\t@\4A\tA\4B\tB\4C\tC\4D\t")
|
|
@@ -111,7 +111,7 @@ def serializedATN():
|
|
|
111
111
|
buf.write(" \3 \3 \5 \u03eb\n \3 \5 \u03ee\n \3 \5 \u03f1\n \3 \5")
|
|
112
112
|
buf.write(" \u03f4\n \3 \3 \3 \3 \3 \3 \5 \u03fc\n \3 \5 \u03ff\n")
|
|
113
113
|
buf.write(" \3 \5 \u0402\n \3 \5 \u0405\n \3 \3 \5 \u0409\n \3!\3")
|
|
114
|
-
buf.write(
|
|
114
|
+
buf.write('!\3!\3!\3!\3!\3!\3"\3"\3"\3"\3"\3"\3"\3#\3#\3#')
|
|
115
115
|
buf.write("\3#\3#\3#\3#\3#\5#\u0421\n#\3$\3$\3$\3$\3$\5$\u0428\n")
|
|
116
116
|
buf.write("$\5$\u042a\n$\3$\3$\3%\3%\3%\3%\3%\3%\5%\u0434\n%\3%\5")
|
|
117
117
|
buf.write("%\u0437\n%\3%\5%\u043a\n%\3%\3%\3%\3%\3%\3%\3%\3%\3%\3")
|
|
@@ -121,7 +121,7 @@ def serializedATN():
|
|
|
121
121
|
buf.write("&\3&\3&\3&\3&\3&\3&\3&\3&\5&\u0476\n&\5&\u0478\n&\3&\3")
|
|
122
122
|
buf.write("&\3&\5&\u047d\n&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\5&\u0489")
|
|
123
123
|
buf.write("\n&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\3&\5&\u0499")
|
|
124
|
-
buf.write("\n&\3
|
|
124
|
+
buf.write("\n&\3'\3'\3'\3'\3(\3(\3(\7(\u04a2\n(\f(\16(\u04a5")
|
|
125
125
|
buf.write("\13(\3)\5)\u04a8\n)\3)\3)\3)\3)\3*\5*\u04af\n*\3*\3*\3")
|
|
126
126
|
buf.write("*\3*\3+\3+\3+\3+\3,\3,\3,\3,\3,\3,\3,\3,\5,\u04c1\n,\3")
|
|
127
127
|
buf.write(",\3,\5,\u04c5\n,\3-\3-\3-\7-\u04ca\n-\f-\16-\u04cd\13")
|
|
@@ -164,14 +164,14 @@ def serializedATN():
|
|
|
164
164
|
buf.write("\13a\3a\3a\3b\3b\3b\3c\3c\3c\3d\3d\3e\3e\5e\u0687\ne\3")
|
|
165
165
|
buf.write("f\3f\5f\u068b\nf\3g\3g\3g\3g\3g\5g\u0692\ng\3h\3h\3h\3")
|
|
166
166
|
buf.write("i\3i\3j\3j\3k\3k\3l\3l\3m\3m\3n\3n\3n\2\4\6\bo\2\4\6\b")
|
|
167
|
-
buf.write(
|
|
167
|
+
buf.write('\n\f\16\20\22\24\26\30\32\34\36 "$&(*,.\60\62\64\668')
|
|
168
168
|
buf.write(":<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084")
|
|
169
169
|
buf.write("\u0086\u0088\u008a\u008c\u008e\u0090\u0092\u0094\u0096")
|
|
170
170
|
buf.write("\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6\u00a8")
|
|
171
171
|
buf.write("\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba")
|
|
172
172
|
buf.write("\u00bc\u00be\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc")
|
|
173
|
-
buf.write("\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8\u00da\2
|
|
174
|
-
buf.write("\20))\3\2\21\22\4\2\17\20TT\3\2
|
|
173
|
+
buf.write("\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8\u00da\2'\4\2\17")
|
|
174
|
+
buf.write("\20))\3\2\21\22\4\2\17\20TT\3\2'(\3\2+,\3\2 !\4\2\u00c0")
|
|
175
175
|
buf.write("\u00c0\u00c2\u00c2\3\2\u00b7\u00b8\3\2\u00b9\u00ba\5\2")
|
|
176
176
|
buf.write("SSUWyz\6\2KKMMbb}\177\3\2OP\4\2NNQR\4\2>>\u00c7\u00c7")
|
|
177
177
|
buf.write("\3\2\u0098\u0099\4\2ii\u00ea\u00ea\3\2HI\4\2\62\62\u0081")
|
|
@@ -186,7 +186,7 @@ def serializedATN():
|
|
|
186
186
|
buf.write("\3\2\2\2\16\u0174\3\2\2\2\20\u0176\3\2\2\2\22\u017f\3")
|
|
187
187
|
buf.write("\2\2\2\24\u0187\3\2\2\2\26\u018a\3\2\2\2\30\u0193\3\2")
|
|
188
188
|
buf.write("\2\2\32\u019c\3\2\2\2\34\u01a1\3\2\2\2\36\u01b6\3\2\2")
|
|
189
|
-
buf.write(
|
|
189
|
+
buf.write('\2 \u01ea\3\2\2\2"\u0225\3\2\2\2$\u0260\3\2\2\2&\u0264')
|
|
190
190
|
buf.write("\3\2\2\2(\u0268\3\2\2\2*\u029a\3\2\2\2,\u02cc\3\2\2\2")
|
|
191
191
|
buf.write(".\u02e3\3\2\2\2\60\u02fa\3\2\2\2\62\u031c\3\2\2\2\64\u0333")
|
|
192
192
|
buf.write("\3\2\2\2\66\u0363\3\2\2\28\u0393\3\2\2\2:\u03b2\3\2\2")
|
|
@@ -273,12 +273,12 @@ def serializedATN():
|
|
|
273
273
|
buf.write("\u0154\3\2\2\2\u0152\u0150\3\2\2\2\u0152\u0153\3\2\2\2")
|
|
274
274
|
buf.write("\u0153\t\3\2\2\2\u0154\u0152\3\2\2\2\u0155\u015e\5$\23")
|
|
275
275
|
buf.write("\2\u0156\u015e\5,\27\2\u0157\u015e\5\60\31\2\u0158\u015e")
|
|
276
|
-
buf.write(
|
|
276
|
+
buf.write('\5\64\33\2\u0159\u015e\58\35\2\u015a\u015e\5B"\2\u015b')
|
|
277
277
|
buf.write("\u015e\5D#\2\u015c\u015e\5J&\2\u015d\u0155\3\2\2\2\u015d")
|
|
278
278
|
buf.write("\u0156\3\2\2\2\u015d\u0157\3\2\2\2\u015d\u0158\3\2\2\2")
|
|
279
279
|
buf.write("\u015d\u0159\3\2\2\2\u015d\u015a\3\2\2\2\u015d\u015b\3")
|
|
280
280
|
buf.write("\2\2\2\u015d\u015c\3\2\2\2\u015e\13\3\2\2\2\u015f\u016c")
|
|
281
|
-
buf.write(
|
|
281
|
+
buf.write('\5\36\20\2\u0160\u016c\5"\22\2\u0161\u016c\5*\26\2\u0162')
|
|
282
282
|
buf.write("\u016c\5.\30\2\u0163\u016c\5\62\32\2\u0164\u016c\5\66")
|
|
283
283
|
buf.write("\34\2\u0165\u016c\5:\36\2\u0166\u016c\5<\37\2\u0167\u016c")
|
|
284
284
|
buf.write("\5> \2\u0168\u016c\5@!\2\u0169\u016c\5F$\2\u016a\u016c")
|
|
@@ -293,14 +293,14 @@ def serializedATN():
|
|
|
293
293
|
buf.write("\u016e\3\2\2\2\u0174\u016f\3\2\2\2\u0174\u0170\3\2\2\2")
|
|
294
294
|
buf.write("\u0174\u0171\3\2\2\2\u0174\u0172\3\2\2\2\u0174\u0173\3")
|
|
295
295
|
buf.write("\2\2\2\u0175\17\3\2\2\2\u0176\u0177\7$\2\2\u0177\u017c")
|
|
296
|
-
buf.write("\5L
|
|
296
|
+
buf.write("\5L'\2\u0178\u0179\7\23\2\2\u0179\u017b\5L'\2\u017a")
|
|
297
297
|
buf.write("\u0178\3\2\2\2\u017b\u017e\3\2\2\2\u017c\u017a\3\2\2\2")
|
|
298
298
|
buf.write("\u017c\u017d\3\2\2\2\u017d\21\3\2\2\2\u017e\u017c\3\2")
|
|
299
299
|
buf.write("\2\2\u017f\u0180\7?\2\2\u0180\u0185\5N(\2\u0181\u0183")
|
|
300
300
|
buf.write("\5n8\2\u0182\u0184\5p9\2\u0183\u0182\3\2\2\2\u0183\u0184")
|
|
301
301
|
buf.write("\3\2\2\2\u0184\u0186\3\2\2\2\u0185\u0181\3\2\2\2\u0185")
|
|
302
302
|
buf.write("\u0186\3\2\2\2\u0186\23\3\2\2\2\u0187\u0188\7`\2\2\u0188")
|
|
303
|
-
buf.write(
|
|
303
|
+
buf.write('\u0189\5\b\5\2\u0189\25\3\2\2\2\u018a\u018b\7"\2\2\u018b')
|
|
304
304
|
buf.write("\u0190\5R*\2\u018c\u018d\7\23\2\2\u018d\u018f\5R*\2\u018e")
|
|
305
305
|
buf.write("\u018c\3\2\2\2\u018f\u0192\3\2\2\2\u0190\u018e\3\2\2\2")
|
|
306
306
|
buf.write("\u0190\u0191\3\2\2\2\u0191\27\3\2\2\2\u0192\u0190\3\2")
|
|
@@ -393,7 +393,7 @@ def serializedATN():
|
|
|
393
393
|
buf.write("\u025f\u0261\3\2\2\2\u0260\u0227\3\2\2\2\u0260\u0235\3")
|
|
394
394
|
buf.write("\2\2\2\u0260\u0243\3\2\2\2\u0261%\3\2\2\2\u0262\u0265")
|
|
395
395
|
buf.write("\5\b\5\2\u0263\u0265\7i\2\2\u0264\u0262\3\2\2\2\u0264")
|
|
396
|
-
buf.write("\u0263\3\2\2\2\u0265
|
|
396
|
+
buf.write("\u0263\3\2\2\2\u0265'\3\2\2\2\u0266\u0269\5\6\4\2\u0267")
|
|
397
397
|
buf.write("\u0269\7i\2\2\u0268\u0266\3\2\2\2\u0268\u0267\3\2\2\2")
|
|
398
398
|
buf.write("\u0269)\3\2\2\2\u026a\u026b\t\13\2\2\u026b\u026c\7\3\2")
|
|
399
399
|
buf.write("\2\u026c\u026d\5\6\4\2\u026d\u026e\7\4\2\2\u026e\u029b")
|
|
@@ -838,7 +838,7 @@ def serializedATN():
|
|
|
838
838
|
buf.write("\3\2\2\2\u065b\u00af\3\2\2\2\u065c\u065a\3\2\2\2\u065d")
|
|
839
839
|
buf.write("\u065e\t \2\2\u065e\u00b1\3\2\2\2\u065f\u0660\7<\2\2\u0660")
|
|
840
840
|
buf.write("\u0661\5\6\4\2\u0661\u00b3\3\2\2\2\u0662\u0663\t!\2\2")
|
|
841
|
-
buf.write(
|
|
841
|
+
buf.write('\u0663\u00b5\3\2\2\2\u0664\u0665\t"\2\2\u0665\u00b7\3')
|
|
842
842
|
buf.write("\2\2\2\u0666\u0667\7\u00eb\2\2\u0667\u00b9\3\2\2\2\u0668")
|
|
843
843
|
buf.write("\u0669\7\u00eb\2\2\u0669\u00bb\3\2\2\2\u066a\u066b\7\u00eb")
|
|
844
844
|
buf.write("\2\2\u066b\u00bd\3\2\2\2\u066c\u066f\7\u00eb\2\2\u066d")
|
|
@@ -898,105 +898,485 @@ class Parser(Parser):
|
|
|
898
898
|
|
|
899
899
|
sharedContextCache = PredictionContextCache()
|
|
900
900
|
|
|
901
|
-
literalNames = [
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
901
|
+
literalNames = [
|
|
902
|
+
"<INVALID>",
|
|
903
|
+
"'('",
|
|
904
|
+
"')'",
|
|
905
|
+
"'['",
|
|
906
|
+
"']'",
|
|
907
|
+
"'{'",
|
|
908
|
+
"'}'",
|
|
909
|
+
"'='",
|
|
910
|
+
"'<'",
|
|
911
|
+
"'>'",
|
|
912
|
+
"'>='",
|
|
913
|
+
"'<>'",
|
|
914
|
+
"'<='",
|
|
915
|
+
"'+'",
|
|
916
|
+
"'-'",
|
|
917
|
+
"'*'",
|
|
918
|
+
"'/'",
|
|
919
|
+
"','",
|
|
920
|
+
"'->'",
|
|
921
|
+
"':'",
|
|
922
|
+
"':='",
|
|
923
|
+
"'#'",
|
|
924
|
+
"'eval'",
|
|
925
|
+
"'if'",
|
|
926
|
+
"'then'",
|
|
927
|
+
"'else'",
|
|
928
|
+
"'using'",
|
|
929
|
+
"'with'",
|
|
930
|
+
"'current_date'",
|
|
931
|
+
"'on'",
|
|
932
|
+
"'drop'",
|
|
933
|
+
"'keep'",
|
|
934
|
+
"'calc'",
|
|
935
|
+
"'attrcalc'",
|
|
936
|
+
"'rename'",
|
|
937
|
+
"'as'",
|
|
938
|
+
"'and'",
|
|
939
|
+
"'or'",
|
|
940
|
+
"'xor'",
|
|
941
|
+
"'not'",
|
|
942
|
+
"'between'",
|
|
943
|
+
"'in'",
|
|
944
|
+
"'not_in'",
|
|
945
|
+
"'null'",
|
|
946
|
+
"'isnull'",
|
|
947
|
+
"'ex'",
|
|
948
|
+
"'union'",
|
|
949
|
+
"'diff'",
|
|
950
|
+
"'symdiff'",
|
|
951
|
+
"'intersect'",
|
|
952
|
+
"'keys'",
|
|
953
|
+
"'intyear'",
|
|
954
|
+
"'intmonth'",
|
|
955
|
+
"'intday'",
|
|
956
|
+
"'check'",
|
|
957
|
+
"'exists_in'",
|
|
958
|
+
"'to'",
|
|
959
|
+
"'return'",
|
|
960
|
+
"'imbalance'",
|
|
961
|
+
"'errorcode'",
|
|
962
|
+
"'all'",
|
|
963
|
+
"'aggr'",
|
|
964
|
+
"'errorlevel'",
|
|
965
|
+
"'order'",
|
|
966
|
+
"'by'",
|
|
967
|
+
"'rank'",
|
|
968
|
+
"'asc'",
|
|
969
|
+
"'desc'",
|
|
970
|
+
"'min'",
|
|
971
|
+
"'max'",
|
|
972
|
+
"'first'",
|
|
973
|
+
"'last'",
|
|
974
|
+
"'indexof'",
|
|
975
|
+
"'abs'",
|
|
976
|
+
"'key'",
|
|
977
|
+
"'ln'",
|
|
978
|
+
"'log'",
|
|
979
|
+
"'trunc'",
|
|
980
|
+
"'round'",
|
|
981
|
+
"'power'",
|
|
982
|
+
"'mod'",
|
|
983
|
+
"'length'",
|
|
984
|
+
"'||'",
|
|
985
|
+
"'trim'",
|
|
986
|
+
"'upper'",
|
|
987
|
+
"'lower'",
|
|
988
|
+
"'substr'",
|
|
989
|
+
"'sum'",
|
|
990
|
+
"'avg'",
|
|
991
|
+
"'median'",
|
|
992
|
+
"'count'",
|
|
993
|
+
"'identifier'",
|
|
994
|
+
"'measure'",
|
|
995
|
+
"'attribute'",
|
|
996
|
+
"'filter'",
|
|
997
|
+
"'merge'",
|
|
998
|
+
"'exp'",
|
|
999
|
+
"'componentRole'",
|
|
1000
|
+
"'viral'",
|
|
1001
|
+
"'match_characters'",
|
|
1002
|
+
"'type'",
|
|
1003
|
+
"'nvl'",
|
|
1004
|
+
"'hierarchy'",
|
|
1005
|
+
"'_'",
|
|
1006
|
+
"'invalid'",
|
|
1007
|
+
"'valuedomain'",
|
|
1008
|
+
"'variable'",
|
|
1009
|
+
"'data'",
|
|
1010
|
+
"'structure'",
|
|
1011
|
+
"'dataset'",
|
|
1012
|
+
"'operator'",
|
|
1013
|
+
"'define'",
|
|
1014
|
+
"'<-'",
|
|
1015
|
+
"'datapoint'",
|
|
1016
|
+
"'hierarchical'",
|
|
1017
|
+
"'ruleset'",
|
|
1018
|
+
"'rule'",
|
|
1019
|
+
"'end'",
|
|
1020
|
+
"'alterDataset'",
|
|
1021
|
+
"'ltrim'",
|
|
1022
|
+
"'rtrim'",
|
|
1023
|
+
"'instr'",
|
|
1024
|
+
"'replace'",
|
|
1025
|
+
"'ceil'",
|
|
1026
|
+
"'floor'",
|
|
1027
|
+
"'sqrt'",
|
|
1028
|
+
"'any'",
|
|
1029
|
+
"'setdiff'",
|
|
1030
|
+
"'stddev_pop'",
|
|
1031
|
+
"'stddev_samp'",
|
|
1032
|
+
"'var_pop'",
|
|
1033
|
+
"'var_samp'",
|
|
1034
|
+
"'group'",
|
|
1035
|
+
"'except'",
|
|
1036
|
+
"'having'",
|
|
1037
|
+
"'first_value'",
|
|
1038
|
+
"'last_value'",
|
|
1039
|
+
"'lag'",
|
|
1040
|
+
"'lead'",
|
|
1041
|
+
"'ratio_to_report'",
|
|
1042
|
+
"'over'",
|
|
1043
|
+
"'preceding'",
|
|
1044
|
+
"'following'",
|
|
1045
|
+
"'unbounded'",
|
|
1046
|
+
"'partition'",
|
|
1047
|
+
"'rows'",
|
|
1048
|
+
"'range'",
|
|
1049
|
+
"'current'",
|
|
1050
|
+
"'valid'",
|
|
1051
|
+
"'fill_time_series'",
|
|
1052
|
+
"'flow_to_stock'",
|
|
1053
|
+
"'stock_to_flow'",
|
|
1054
|
+
"'timeshift'",
|
|
1055
|
+
"'measures'",
|
|
1056
|
+
"'no_measures'",
|
|
1057
|
+
"'condition'",
|
|
1058
|
+
"'boolean'",
|
|
1059
|
+
"'date'",
|
|
1060
|
+
"'time_period'",
|
|
1061
|
+
"'number'",
|
|
1062
|
+
"'string'",
|
|
1063
|
+
"'time'",
|
|
1064
|
+
"'integer'",
|
|
1065
|
+
"'float'",
|
|
1066
|
+
"'list'",
|
|
1067
|
+
"'record'",
|
|
1068
|
+
"'restrict'",
|
|
1069
|
+
"'yyyy'",
|
|
1070
|
+
"'mm'",
|
|
1071
|
+
"'dd'",
|
|
1072
|
+
"'maxLength'",
|
|
1073
|
+
"'regexp'",
|
|
1074
|
+
"'is'",
|
|
1075
|
+
"'when'",
|
|
1076
|
+
"'from'",
|
|
1077
|
+
"'aggregates'",
|
|
1078
|
+
"'points'",
|
|
1079
|
+
"'point'",
|
|
1080
|
+
"'total'",
|
|
1081
|
+
"'partial'",
|
|
1082
|
+
"'always'",
|
|
1083
|
+
"'inner_join'",
|
|
1084
|
+
"'left_join'",
|
|
1085
|
+
"'cross_join'",
|
|
1086
|
+
"'full_join'",
|
|
1087
|
+
"'maps_from'",
|
|
1088
|
+
"'maps_to'",
|
|
1089
|
+
"'map_to'",
|
|
1090
|
+
"'map_from'",
|
|
1091
|
+
"'returns'",
|
|
1092
|
+
"'pivot'",
|
|
1093
|
+
"'customPivot'",
|
|
1094
|
+
"'unpivot'",
|
|
1095
|
+
"'sub'",
|
|
1096
|
+
"'apply'",
|
|
1097
|
+
"'conditioned'",
|
|
1098
|
+
"'period_indicator'",
|
|
1099
|
+
"'single'",
|
|
1100
|
+
"'duration'",
|
|
1101
|
+
"'time_agg'",
|
|
1102
|
+
"'unit'",
|
|
1103
|
+
"'Value'",
|
|
1104
|
+
"'valuedomains'",
|
|
1105
|
+
"'variables'",
|
|
1106
|
+
"'input'",
|
|
1107
|
+
"'output'",
|
|
1108
|
+
"'cast'",
|
|
1109
|
+
"'rule_priority'",
|
|
1110
|
+
"'dataset_priority'",
|
|
1111
|
+
"'default'",
|
|
1112
|
+
"'check_datapoint'",
|
|
1113
|
+
"'check_hierarchy'",
|
|
1114
|
+
"'computed'",
|
|
1115
|
+
"'non_null'",
|
|
1116
|
+
"'non_zero'",
|
|
1117
|
+
"'partial_null'",
|
|
1118
|
+
"'partial_zero'",
|
|
1119
|
+
"'always_null'",
|
|
1120
|
+
"'always_zero'",
|
|
1121
|
+
"'components'",
|
|
1122
|
+
"'all_measures'",
|
|
1123
|
+
"'scalar'",
|
|
1124
|
+
"'component'",
|
|
1125
|
+
"'datapoint_on_valuedomains'",
|
|
1126
|
+
"'datapoint_on_variables'",
|
|
1127
|
+
"'hierarchical_on_valuedomains'",
|
|
1128
|
+
"'hierarchical_on_variables'",
|
|
1129
|
+
"'set'",
|
|
1130
|
+
"'language'",
|
|
1131
|
+
"<INVALID>",
|
|
1132
|
+
"<INVALID>",
|
|
1133
|
+
"<INVALID>",
|
|
1134
|
+
"<INVALID>",
|
|
1135
|
+
"<INVALID>",
|
|
1136
|
+
"<INVALID>",
|
|
1137
|
+
"';'",
|
|
1138
|
+
]
|
|
1139
|
+
|
|
1140
|
+
symbolicNames = [
|
|
1141
|
+
"<INVALID>",
|
|
1142
|
+
"LPAREN",
|
|
1143
|
+
"RPAREN",
|
|
1144
|
+
"QLPAREN",
|
|
1145
|
+
"QRPAREN",
|
|
1146
|
+
"GLPAREN",
|
|
1147
|
+
"GRPAREN",
|
|
1148
|
+
"EQ",
|
|
1149
|
+
"LT",
|
|
1150
|
+
"MT",
|
|
1151
|
+
"ME",
|
|
1152
|
+
"NEQ",
|
|
1153
|
+
"LE",
|
|
1154
|
+
"PLUS",
|
|
1155
|
+
"MINUS",
|
|
1156
|
+
"MUL",
|
|
1157
|
+
"DIV",
|
|
1158
|
+
"COMMA",
|
|
1159
|
+
"POINTER",
|
|
1160
|
+
"COLON",
|
|
1161
|
+
"ASSIGN",
|
|
1162
|
+
"MEMBERSHIP",
|
|
1163
|
+
"EVAL",
|
|
1164
|
+
"IF",
|
|
1165
|
+
"THEN",
|
|
1166
|
+
"ELSE",
|
|
1167
|
+
"USING",
|
|
1168
|
+
"WITH",
|
|
1169
|
+
"CURRENT_DATE",
|
|
1170
|
+
"ON",
|
|
1171
|
+
"DROP",
|
|
1172
|
+
"KEEP",
|
|
1173
|
+
"CALC",
|
|
1174
|
+
"ATTRCALC",
|
|
1175
|
+
"RENAME",
|
|
1176
|
+
"AS",
|
|
1177
|
+
"AND",
|
|
1178
|
+
"OR",
|
|
1179
|
+
"XOR",
|
|
1180
|
+
"NOT",
|
|
1181
|
+
"BETWEEN",
|
|
1182
|
+
"IN",
|
|
1183
|
+
"NOT_IN",
|
|
1184
|
+
"NULL_CONSTANT",
|
|
1185
|
+
"ISNULL",
|
|
1186
|
+
"EX",
|
|
1187
|
+
"UNION",
|
|
1188
|
+
"DIFF",
|
|
1189
|
+
"SYMDIFF",
|
|
1190
|
+
"INTERSECT",
|
|
1191
|
+
"KEYS",
|
|
1192
|
+
"INTYEAR",
|
|
1193
|
+
"INTMONTH",
|
|
1194
|
+
"INTDAY",
|
|
1195
|
+
"CHECK",
|
|
1196
|
+
"EXISTS_IN",
|
|
1197
|
+
"TO",
|
|
1198
|
+
"RETURN",
|
|
1199
|
+
"IMBALANCE",
|
|
1200
|
+
"ERRORCODE",
|
|
1201
|
+
"ALL",
|
|
1202
|
+
"AGGREGATE",
|
|
1203
|
+
"ERRORLEVEL",
|
|
1204
|
+
"ORDER",
|
|
1205
|
+
"BY",
|
|
1206
|
+
"RANK",
|
|
1207
|
+
"ASC",
|
|
1208
|
+
"DESC",
|
|
1209
|
+
"MIN",
|
|
1210
|
+
"MAX",
|
|
1211
|
+
"FIRST",
|
|
1212
|
+
"LAST",
|
|
1213
|
+
"INDEXOF",
|
|
1214
|
+
"ABS",
|
|
1215
|
+
"KEY",
|
|
1216
|
+
"LN",
|
|
1217
|
+
"LOG",
|
|
1218
|
+
"TRUNC",
|
|
1219
|
+
"ROUND",
|
|
1220
|
+
"POWER",
|
|
1221
|
+
"MOD",
|
|
1222
|
+
"LEN",
|
|
1223
|
+
"CONCAT",
|
|
1224
|
+
"TRIM",
|
|
1225
|
+
"UCASE",
|
|
1226
|
+
"LCASE",
|
|
1227
|
+
"SUBSTR",
|
|
1228
|
+
"SUM",
|
|
1229
|
+
"AVG",
|
|
1230
|
+
"MEDIAN",
|
|
1231
|
+
"COUNT",
|
|
1232
|
+
"DIMENSION",
|
|
1233
|
+
"MEASURE",
|
|
1234
|
+
"ATTRIBUTE",
|
|
1235
|
+
"FILTER",
|
|
1236
|
+
"MERGE",
|
|
1237
|
+
"EXP",
|
|
1238
|
+
"ROLE",
|
|
1239
|
+
"VIRAL",
|
|
1240
|
+
"CHARSET_MATCH",
|
|
1241
|
+
"TYPE",
|
|
1242
|
+
"NVL",
|
|
1243
|
+
"HIERARCHY",
|
|
1244
|
+
"OPTIONAL",
|
|
1245
|
+
"INVALID",
|
|
1246
|
+
"VALUE_DOMAIN",
|
|
1247
|
+
"VARIABLE",
|
|
1248
|
+
"DATA",
|
|
1249
|
+
"STRUCTURE",
|
|
1250
|
+
"DATASET",
|
|
1251
|
+
"OPERATOR",
|
|
1252
|
+
"DEFINE",
|
|
1253
|
+
"PUT_SYMBOL",
|
|
1254
|
+
"DATAPOINT",
|
|
1255
|
+
"HIERARCHICAL",
|
|
1256
|
+
"RULESET",
|
|
1257
|
+
"RULE",
|
|
1258
|
+
"END",
|
|
1259
|
+
"ALTER_DATASET",
|
|
1260
|
+
"LTRIM",
|
|
1261
|
+
"RTRIM",
|
|
1262
|
+
"INSTR",
|
|
1263
|
+
"REPLACE",
|
|
1264
|
+
"CEIL",
|
|
1265
|
+
"FLOOR",
|
|
1266
|
+
"SQRT",
|
|
1267
|
+
"ANY",
|
|
1268
|
+
"SETDIFF",
|
|
1269
|
+
"STDDEV_POP",
|
|
1270
|
+
"STDDEV_SAMP",
|
|
1271
|
+
"VAR_POP",
|
|
1272
|
+
"VAR_SAMP",
|
|
1273
|
+
"GROUP",
|
|
1274
|
+
"EXCEPT",
|
|
1275
|
+
"HAVING",
|
|
1276
|
+
"FIRST_VALUE",
|
|
1277
|
+
"LAST_VALUE",
|
|
1278
|
+
"LAG",
|
|
1279
|
+
"LEAD",
|
|
1280
|
+
"RATIO_TO_REPORT",
|
|
1281
|
+
"OVER",
|
|
1282
|
+
"PRECEDING",
|
|
1283
|
+
"FOLLOWING",
|
|
1284
|
+
"UNBOUNDED",
|
|
1285
|
+
"PARTITION",
|
|
1286
|
+
"ROWS",
|
|
1287
|
+
"RANGE",
|
|
1288
|
+
"CURRENT",
|
|
1289
|
+
"VALID",
|
|
1290
|
+
"FILL_TIME_SERIES",
|
|
1291
|
+
"FLOW_TO_STOCK",
|
|
1292
|
+
"STOCK_TO_FLOW",
|
|
1293
|
+
"TIMESHIFT",
|
|
1294
|
+
"MEASURES",
|
|
1295
|
+
"NO_MEASURES",
|
|
1296
|
+
"CONDITION",
|
|
1297
|
+
"BOOLEAN",
|
|
1298
|
+
"DATE",
|
|
1299
|
+
"TIME_PERIOD",
|
|
1300
|
+
"NUMBER",
|
|
1301
|
+
"STRING",
|
|
1302
|
+
"TIME",
|
|
1303
|
+
"INTEGER",
|
|
1304
|
+
"FLOAT",
|
|
1305
|
+
"LIST",
|
|
1306
|
+
"RECORD",
|
|
1307
|
+
"RESTRICT",
|
|
1308
|
+
"YYYY",
|
|
1309
|
+
"MM",
|
|
1310
|
+
"DD",
|
|
1311
|
+
"MAX_LENGTH",
|
|
1312
|
+
"REGEXP",
|
|
1313
|
+
"IS",
|
|
1314
|
+
"WHEN",
|
|
1315
|
+
"FROM",
|
|
1316
|
+
"AGGREGATES",
|
|
1317
|
+
"POINTS",
|
|
1318
|
+
"POINT",
|
|
1319
|
+
"TOTAL",
|
|
1320
|
+
"PARTIAL",
|
|
1321
|
+
"ALWAYS",
|
|
1322
|
+
"INNER_JOIN",
|
|
1323
|
+
"LEFT_JOIN",
|
|
1324
|
+
"CROSS_JOIN",
|
|
1325
|
+
"FULL_JOIN",
|
|
1326
|
+
"MAPS_FROM",
|
|
1327
|
+
"MAPS_TO",
|
|
1328
|
+
"MAP_TO",
|
|
1329
|
+
"MAP_FROM",
|
|
1330
|
+
"RETURNS",
|
|
1331
|
+
"PIVOT",
|
|
1332
|
+
"CUSTOMPIVOT",
|
|
1333
|
+
"UNPIVOT",
|
|
1334
|
+
"SUBSPACE",
|
|
1335
|
+
"APPLY",
|
|
1336
|
+
"CONDITIONED",
|
|
1337
|
+
"PERIOD_INDICATOR",
|
|
1338
|
+
"SINGLE",
|
|
1339
|
+
"DURATION",
|
|
1340
|
+
"TIME_AGG",
|
|
1341
|
+
"UNIT",
|
|
1342
|
+
"VALUE",
|
|
1343
|
+
"VALUEDOMAINS",
|
|
1344
|
+
"VARIABLES",
|
|
1345
|
+
"INPUT",
|
|
1346
|
+
"OUTPUT",
|
|
1347
|
+
"CAST",
|
|
1348
|
+
"RULE_PRIORITY",
|
|
1349
|
+
"DATASET_PRIORITY",
|
|
1350
|
+
"DEFAULT",
|
|
1351
|
+
"CHECK_DATAPOINT",
|
|
1352
|
+
"CHECK_HIERARCHY",
|
|
1353
|
+
"COMPUTED",
|
|
1354
|
+
"NON_NULL",
|
|
1355
|
+
"NON_ZERO",
|
|
1356
|
+
"PARTIAL_NULL",
|
|
1357
|
+
"PARTIAL_ZERO",
|
|
1358
|
+
"ALWAYS_NULL",
|
|
1359
|
+
"ALWAYS_ZERO",
|
|
1360
|
+
"COMPONENTS",
|
|
1361
|
+
"ALL_MEASURES",
|
|
1362
|
+
"SCALAR",
|
|
1363
|
+
"COMPONENT",
|
|
1364
|
+
"DATAPOINT_ON_VD",
|
|
1365
|
+
"DATAPOINT_ON_VAR",
|
|
1366
|
+
"HIERARCHICAL_ON_VD",
|
|
1367
|
+
"HIERARCHICAL_ON_VAR",
|
|
1368
|
+
"SET",
|
|
1369
|
+
"LANGUAGE",
|
|
1370
|
+
"INTEGER_CONSTANT",
|
|
1371
|
+
"NUMBER_CONSTANT",
|
|
1372
|
+
"BOOLEAN_CONSTANT",
|
|
1373
|
+
"STRING_CONSTANT",
|
|
1374
|
+
"IDENTIFIER",
|
|
1375
|
+
"WS",
|
|
1376
|
+
"EOL",
|
|
1377
|
+
"ML_COMMENT",
|
|
1378
|
+
"SL_COMMENT",
|
|
1379
|
+
]
|
|
1000
1380
|
|
|
1001
1381
|
RULE_start = 0
|
|
1002
1382
|
RULE_statement = 1
|
|
@@ -1108,38 +1488,117 @@ class Parser(Parser):
|
|
|
1108
1488
|
RULE_basicScalarType = 107
|
|
1109
1489
|
RULE_retainType = 108
|
|
1110
1490
|
|
|
1111
|
-
ruleNames = [
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1491
|
+
ruleNames = [
|
|
1492
|
+
"start",
|
|
1493
|
+
"statement",
|
|
1494
|
+
"expr",
|
|
1495
|
+
"exprComponent",
|
|
1496
|
+
"functionsComponents",
|
|
1497
|
+
"functions",
|
|
1498
|
+
"datasetClause",
|
|
1499
|
+
"renameClause",
|
|
1500
|
+
"aggrClause",
|
|
1501
|
+
"filterClause",
|
|
1502
|
+
"calcClause",
|
|
1503
|
+
"keepOrDropClause",
|
|
1504
|
+
"pivotOrUnpivotClause",
|
|
1505
|
+
"subspaceClause",
|
|
1506
|
+
"joinOperators",
|
|
1507
|
+
"defOperators",
|
|
1508
|
+
"genericOperators",
|
|
1509
|
+
"genericOperatorsComponent",
|
|
1510
|
+
"parameterComponent",
|
|
1511
|
+
"parameter",
|
|
1512
|
+
"stringOperators",
|
|
1513
|
+
"stringOperatorsComponent",
|
|
1514
|
+
"numericOperators",
|
|
1515
|
+
"numericOperatorsComponent",
|
|
1516
|
+
"comparisonOperators",
|
|
1517
|
+
"comparisonOperatorsComponent",
|
|
1518
|
+
"timeOperators",
|
|
1519
|
+
"timeOperatorsComponent",
|
|
1520
|
+
"setOperators",
|
|
1521
|
+
"hierarchyOperators",
|
|
1522
|
+
"validationOperators",
|
|
1523
|
+
"conditionalOperators",
|
|
1524
|
+
"conditionalOperatorsComponent",
|
|
1525
|
+
"aggrOperators",
|
|
1526
|
+
"aggrOperatorsGrouping",
|
|
1527
|
+
"anFunction",
|
|
1528
|
+
"anFunctionComponent",
|
|
1529
|
+
"renameClauseItem",
|
|
1530
|
+
"aggregateClause",
|
|
1531
|
+
"aggrFunctionClause",
|
|
1532
|
+
"calcClauseItem",
|
|
1533
|
+
"subspaceClauseItem",
|
|
1534
|
+
"scalarItem",
|
|
1535
|
+
"joinClauseWithoutUsing",
|
|
1536
|
+
"joinClause",
|
|
1537
|
+
"joinClauseItem",
|
|
1538
|
+
"joinBody",
|
|
1539
|
+
"joinApplyClause",
|
|
1540
|
+
"partitionByClause",
|
|
1541
|
+
"orderByClause",
|
|
1542
|
+
"orderByItem",
|
|
1543
|
+
"windowingClause",
|
|
1544
|
+
"signedInteger",
|
|
1545
|
+
"limitClauseItem",
|
|
1546
|
+
"groupingClause",
|
|
1547
|
+
"havingClause",
|
|
1548
|
+
"parameterItem",
|
|
1549
|
+
"outputParameterType",
|
|
1550
|
+
"outputParameterTypeComponent",
|
|
1551
|
+
"inputParameterType",
|
|
1552
|
+
"rulesetType",
|
|
1553
|
+
"scalarType",
|
|
1554
|
+
"componentType",
|
|
1555
|
+
"datasetType",
|
|
1556
|
+
"evalDatasetType",
|
|
1557
|
+
"scalarSetType",
|
|
1558
|
+
"dpRuleset",
|
|
1559
|
+
"hrRuleset",
|
|
1560
|
+
"valueDomainName",
|
|
1561
|
+
"rulesetID",
|
|
1562
|
+
"rulesetSignature",
|
|
1563
|
+
"signature",
|
|
1564
|
+
"ruleClauseDatapoint",
|
|
1565
|
+
"ruleItemDatapoint",
|
|
1566
|
+
"ruleClauseHierarchical",
|
|
1567
|
+
"ruleItemHierarchical",
|
|
1568
|
+
"hierRuleSignature",
|
|
1569
|
+
"valueDomainSignature",
|
|
1570
|
+
"codeItemRelation",
|
|
1571
|
+
"codeItemRelationClause",
|
|
1572
|
+
"valueDomainValue",
|
|
1573
|
+
"scalarTypeConstraint",
|
|
1574
|
+
"compConstraint",
|
|
1575
|
+
"multModifier",
|
|
1576
|
+
"validationOutput",
|
|
1577
|
+
"validationMode",
|
|
1578
|
+
"conditionClause",
|
|
1579
|
+
"inputMode",
|
|
1580
|
+
"imbalanceExpr",
|
|
1581
|
+
"inputModeHierarchy",
|
|
1582
|
+
"outputModeHierarchy",
|
|
1583
|
+
"alias",
|
|
1584
|
+
"varID",
|
|
1585
|
+
"simpleComponentId",
|
|
1586
|
+
"componentID",
|
|
1587
|
+
"lists",
|
|
1588
|
+
"erCode",
|
|
1589
|
+
"erLevel",
|
|
1590
|
+
"comparisonOperand",
|
|
1591
|
+
"optionalExpr",
|
|
1592
|
+
"optionalExprComponent",
|
|
1593
|
+
"componentRole",
|
|
1594
|
+
"viralAttribute",
|
|
1595
|
+
"valueDomainID",
|
|
1596
|
+
"operatorID",
|
|
1597
|
+
"routineName",
|
|
1598
|
+
"constant",
|
|
1599
|
+
"basicScalarType",
|
|
1600
|
+
"retainType",
|
|
1601
|
+
]
|
|
1143
1602
|
|
|
1144
1603
|
EOF = Token.EOF
|
|
1145
1604
|
LPAREN = 1
|
|
@@ -1382,8 +1841,9 @@ class Parser(Parser):
|
|
|
1382
1841
|
|
|
1383
1842
|
def __init__(self, input: TokenStream, output: TextIO = sys.stdout):
|
|
1384
1843
|
super().__init__(input, output)
|
|
1385
|
-
self._interp = ParserATNSimulator(
|
|
1386
|
-
|
|
1844
|
+
self._interp = ParserATNSimulator(
|
|
1845
|
+
self, self.atn, self.decisionsToDFA, self.sharedContextCache
|
|
1846
|
+
)
|
|
1387
1847
|
self._predicates = None
|
|
1388
1848
|
|
|
1389
1849
|
class StartContext(ParserRuleContext):
|
|
@@ -1416,7 +1876,7 @@ class Parser(Parser):
|
|
|
1416
1876
|
else:
|
|
1417
1877
|
return visitor.visitChildren(self)
|
|
1418
1878
|
|
|
1419
|
-
def start(self):
|
|
1879
|
+
def start(self) -> StartContext:
|
|
1420
1880
|
|
|
1421
1881
|
localctx = Parser.StartContext(self, self._ctx, self.state)
|
|
1422
1882
|
self.enterRule(localctx, 0, self.RULE_start)
|
|
@@ -1551,7 +2011,6 @@ class Parser(Parser):
|
|
|
1551
2011
|
self.defOperators()
|
|
1552
2012
|
pass
|
|
1553
2013
|
|
|
1554
|
-
|
|
1555
2014
|
except RecognitionException as re:
|
|
1556
2015
|
localctx.exception = re
|
|
1557
2016
|
self._errHandler.reportError(self, re)
|
|
@@ -1922,8 +2381,16 @@ class Parser(Parser):
|
|
|
1922
2381
|
self.state = 245
|
|
1923
2382
|
localctx.op = self._input.LT(1)
|
|
1924
2383
|
_la = self._input.LA(1)
|
|
1925
|
-
if not (
|
|
1926
|
-
|
|
2384
|
+
if not (
|
|
2385
|
+
(
|
|
2386
|
+
((_la) & ~0x3F) == 0
|
|
2387
|
+
and (
|
|
2388
|
+
(1 << _la)
|
|
2389
|
+
& ((1 << Parser.PLUS) | (1 << Parser.MINUS) | (1 << Parser.NOT))
|
|
2390
|
+
)
|
|
2391
|
+
!= 0
|
|
2392
|
+
)
|
|
2393
|
+
):
|
|
1927
2394
|
localctx.op = self._errHandler.recoverInline(self)
|
|
1928
2395
|
else:
|
|
1929
2396
|
self._errHandler.reportMatch(self)
|
|
@@ -1979,14 +2446,15 @@ class Parser(Parser):
|
|
|
1979
2446
|
self._errHandler.sync(self)
|
|
1980
2447
|
la_ = self._interp.adaptivePredict(self._input, 4, self._ctx)
|
|
1981
2448
|
if la_ == 1:
|
|
1982
|
-
localctx = Parser.ArithmeticExprContext(
|
|
1983
|
-
|
|
1984
|
-
|
|
2449
|
+
localctx = Parser.ArithmeticExprContext(
|
|
2450
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2451
|
+
)
|
|
1985
2452
|
localctx.left = _prevctx
|
|
1986
2453
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
1987
2454
|
self.state = 258
|
|
1988
2455
|
if not self.precpred(self._ctx, 9):
|
|
1989
2456
|
from antlr4.error.Errors import FailedPredicateException
|
|
2457
|
+
|
|
1990
2458
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 9)")
|
|
1991
2459
|
self.state = 259
|
|
1992
2460
|
localctx.op = self._input.LT(1)
|
|
@@ -2001,15 +2469,15 @@ class Parser(Parser):
|
|
|
2001
2469
|
pass
|
|
2002
2470
|
|
|
2003
2471
|
elif la_ == 2:
|
|
2004
|
-
localctx = Parser.ArithmeticExprOrConcatContext(
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
_parentState))
|
|
2472
|
+
localctx = Parser.ArithmeticExprOrConcatContext(
|
|
2473
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2474
|
+
)
|
|
2008
2475
|
localctx.left = _prevctx
|
|
2009
2476
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2010
2477
|
self.state = 261
|
|
2011
2478
|
if not self.precpred(self._ctx, 8):
|
|
2012
2479
|
from antlr4.error.Errors import FailedPredicateException
|
|
2480
|
+
|
|
2013
2481
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 8)")
|
|
2014
2482
|
self.state = 262
|
|
2015
2483
|
localctx.op = self._input.LT(1)
|
|
@@ -2024,14 +2492,15 @@ class Parser(Parser):
|
|
|
2024
2492
|
pass
|
|
2025
2493
|
|
|
2026
2494
|
elif la_ == 3:
|
|
2027
|
-
localctx = Parser.ComparisonExprContext(
|
|
2028
|
-
|
|
2029
|
-
|
|
2495
|
+
localctx = Parser.ComparisonExprContext(
|
|
2496
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2497
|
+
)
|
|
2030
2498
|
localctx.left = _prevctx
|
|
2031
2499
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2032
2500
|
self.state = 264
|
|
2033
2501
|
if not self.precpred(self._ctx, 7):
|
|
2034
2502
|
from antlr4.error.Errors import FailedPredicateException
|
|
2503
|
+
|
|
2035
2504
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 7)")
|
|
2036
2505
|
self.state = 265
|
|
2037
2506
|
localctx.op = self.comparisonOperand()
|
|
@@ -2040,14 +2509,15 @@ class Parser(Parser):
|
|
|
2040
2509
|
pass
|
|
2041
2510
|
|
|
2042
2511
|
elif la_ == 4:
|
|
2043
|
-
localctx = Parser.BooleanExprContext(
|
|
2044
|
-
|
|
2045
|
-
|
|
2512
|
+
localctx = Parser.BooleanExprContext(
|
|
2513
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2514
|
+
)
|
|
2046
2515
|
localctx.left = _prevctx
|
|
2047
2516
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2048
2517
|
self.state = 268
|
|
2049
2518
|
if not self.precpred(self._ctx, 5):
|
|
2050
2519
|
from antlr4.error.Errors import FailedPredicateException
|
|
2520
|
+
|
|
2051
2521
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 5)")
|
|
2052
2522
|
self.state = 269
|
|
2053
2523
|
localctx.op = self.match(Parser.AND)
|
|
@@ -2056,14 +2526,15 @@ class Parser(Parser):
|
|
|
2056
2526
|
pass
|
|
2057
2527
|
|
|
2058
2528
|
elif la_ == 5:
|
|
2059
|
-
localctx = Parser.BooleanExprContext(
|
|
2060
|
-
|
|
2061
|
-
|
|
2529
|
+
localctx = Parser.BooleanExprContext(
|
|
2530
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2531
|
+
)
|
|
2062
2532
|
localctx.left = _prevctx
|
|
2063
2533
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2064
2534
|
self.state = 271
|
|
2065
2535
|
if not self.precpred(self._ctx, 4):
|
|
2066
2536
|
from antlr4.error.Errors import FailedPredicateException
|
|
2537
|
+
|
|
2067
2538
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 4)")
|
|
2068
2539
|
self.state = 272
|
|
2069
2540
|
localctx.op = self._input.LT(1)
|
|
@@ -2078,14 +2549,15 @@ class Parser(Parser):
|
|
|
2078
2549
|
pass
|
|
2079
2550
|
|
|
2080
2551
|
elif la_ == 6:
|
|
2081
|
-
localctx = Parser.ClauseExprContext(
|
|
2082
|
-
|
|
2083
|
-
|
|
2552
|
+
localctx = Parser.ClauseExprContext(
|
|
2553
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2554
|
+
)
|
|
2084
2555
|
localctx.dataset = _prevctx
|
|
2085
2556
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2086
2557
|
self.state = 274
|
|
2087
2558
|
if not self.precpred(self._ctx, 12):
|
|
2088
2559
|
from antlr4.error.Errors import FailedPredicateException
|
|
2560
|
+
|
|
2089
2561
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 12)")
|
|
2090
2562
|
self.state = 275
|
|
2091
2563
|
self.match(Parser.QLPAREN)
|
|
@@ -2096,13 +2568,14 @@ class Parser(Parser):
|
|
|
2096
2568
|
pass
|
|
2097
2569
|
|
|
2098
2570
|
elif la_ == 7:
|
|
2099
|
-
localctx = Parser.MembershipExprContext(
|
|
2100
|
-
|
|
2101
|
-
|
|
2571
|
+
localctx = Parser.MembershipExprContext(
|
|
2572
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2573
|
+
)
|
|
2102
2574
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2103
2575
|
self.state = 279
|
|
2104
2576
|
if not self.precpred(self._ctx, 11):
|
|
2105
2577
|
from antlr4.error.Errors import FailedPredicateException
|
|
2578
|
+
|
|
2106
2579
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 11)")
|
|
2107
2580
|
self.state = 280
|
|
2108
2581
|
self.match(Parser.MEMBERSHIP)
|
|
@@ -2111,14 +2584,15 @@ class Parser(Parser):
|
|
|
2111
2584
|
pass
|
|
2112
2585
|
|
|
2113
2586
|
elif la_ == 8:
|
|
2114
|
-
localctx = Parser.InNotInExprContext(
|
|
2115
|
-
|
|
2116
|
-
|
|
2587
|
+
localctx = Parser.InNotInExprContext(
|
|
2588
|
+
self, Parser.ExprContext(self, _parentctx, _parentState)
|
|
2589
|
+
)
|
|
2117
2590
|
localctx.left = _prevctx
|
|
2118
2591
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_expr)
|
|
2119
2592
|
self.state = 282
|
|
2120
2593
|
if not self.precpred(self._ctx, 6):
|
|
2121
2594
|
from antlr4.error.Errors import FailedPredicateException
|
|
2595
|
+
|
|
2122
2596
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 6)")
|
|
2123
2597
|
self.state = 283
|
|
2124
2598
|
localctx.op = self._input.LT(1)
|
|
@@ -2170,8 +2644,9 @@ class Parser(Parser):
|
|
|
2170
2644
|
|
|
2171
2645
|
class ArithmeticExprCompContext(ExprComponentContext):
|
|
2172
2646
|
|
|
2173
|
-
def __init__(
|
|
2174
|
-
|
|
2647
|
+
def __init__(
|
|
2648
|
+
self, parser, ctx: ParserRuleContext
|
|
2649
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2175
2650
|
super().__init__(parser)
|
|
2176
2651
|
self.left = None # ExprComponentContext
|
|
2177
2652
|
self.op = None # Token
|
|
@@ -2198,8 +2673,9 @@ class Parser(Parser):
|
|
|
2198
2673
|
|
|
2199
2674
|
class IfExprCompContext(ExprComponentContext):
|
|
2200
2675
|
|
|
2201
|
-
def __init__(
|
|
2202
|
-
|
|
2676
|
+
def __init__(
|
|
2677
|
+
self, parser, ctx: ParserRuleContext
|
|
2678
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2203
2679
|
super().__init__(parser)
|
|
2204
2680
|
self.conditionalExpr = None # ExprComponentContext
|
|
2205
2681
|
self.thenExpr = None # ExprComponentContext
|
|
@@ -2229,8 +2705,9 @@ class Parser(Parser):
|
|
|
2229
2705
|
|
|
2230
2706
|
class ComparisonExprCompContext(ExprComponentContext):
|
|
2231
2707
|
|
|
2232
|
-
def __init__(
|
|
2233
|
-
|
|
2708
|
+
def __init__(
|
|
2709
|
+
self, parser, ctx: ParserRuleContext
|
|
2710
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2234
2711
|
super().__init__(parser)
|
|
2235
2712
|
self.left = None # ExprComponentContext
|
|
2236
2713
|
self.right = None # ExprComponentContext
|
|
@@ -2253,8 +2730,9 @@ class Parser(Parser):
|
|
|
2253
2730
|
|
|
2254
2731
|
class FunctionsExpressionCompContext(ExprComponentContext):
|
|
2255
2732
|
|
|
2256
|
-
def __init__(
|
|
2257
|
-
|
|
2733
|
+
def __init__(
|
|
2734
|
+
self, parser, ctx: ParserRuleContext
|
|
2735
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2258
2736
|
super().__init__(parser)
|
|
2259
2737
|
self.copyFrom(ctx)
|
|
2260
2738
|
|
|
@@ -2269,8 +2747,9 @@ class Parser(Parser):
|
|
|
2269
2747
|
|
|
2270
2748
|
class CompIdContext(ExprComponentContext):
|
|
2271
2749
|
|
|
2272
|
-
def __init__(
|
|
2273
|
-
|
|
2750
|
+
def __init__(
|
|
2751
|
+
self, parser, ctx: ParserRuleContext
|
|
2752
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2274
2753
|
super().__init__(parser)
|
|
2275
2754
|
self.copyFrom(ctx)
|
|
2276
2755
|
|
|
@@ -2285,8 +2764,9 @@ class Parser(Parser):
|
|
|
2285
2764
|
|
|
2286
2765
|
class ConstantExprCompContext(ExprComponentContext):
|
|
2287
2766
|
|
|
2288
|
-
def __init__(
|
|
2289
|
-
|
|
2767
|
+
def __init__(
|
|
2768
|
+
self, parser, ctx: ParserRuleContext
|
|
2769
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2290
2770
|
super().__init__(parser)
|
|
2291
2771
|
self.copyFrom(ctx)
|
|
2292
2772
|
|
|
@@ -2301,8 +2781,9 @@ class Parser(Parser):
|
|
|
2301
2781
|
|
|
2302
2782
|
class ArithmeticExprOrConcatCompContext(ExprComponentContext):
|
|
2303
2783
|
|
|
2304
|
-
def __init__(
|
|
2305
|
-
|
|
2784
|
+
def __init__(
|
|
2785
|
+
self, parser, ctx: ParserRuleContext
|
|
2786
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2306
2787
|
super().__init__(parser)
|
|
2307
2788
|
self.left = None # ExprComponentContext
|
|
2308
2789
|
self.op = None # Token
|
|
@@ -2332,8 +2813,9 @@ class Parser(Parser):
|
|
|
2332
2813
|
|
|
2333
2814
|
class ParenthesisExprCompContext(ExprComponentContext):
|
|
2334
2815
|
|
|
2335
|
-
def __init__(
|
|
2336
|
-
|
|
2816
|
+
def __init__(
|
|
2817
|
+
self, parser, ctx: ParserRuleContext
|
|
2818
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2337
2819
|
super().__init__(parser)
|
|
2338
2820
|
self.copyFrom(ctx)
|
|
2339
2821
|
|
|
@@ -2354,8 +2836,9 @@ class Parser(Parser):
|
|
|
2354
2836
|
|
|
2355
2837
|
class InNotInExprCompContext(ExprComponentContext):
|
|
2356
2838
|
|
|
2357
|
-
def __init__(
|
|
2358
|
-
|
|
2839
|
+
def __init__(
|
|
2840
|
+
self, parser, ctx: ParserRuleContext
|
|
2841
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2359
2842
|
super().__init__(parser)
|
|
2360
2843
|
self.left = None # ExprComponentContext
|
|
2361
2844
|
self.op = None # Token
|
|
@@ -2384,8 +2867,9 @@ class Parser(Parser):
|
|
|
2384
2867
|
|
|
2385
2868
|
class UnaryExprCompContext(ExprComponentContext):
|
|
2386
2869
|
|
|
2387
|
-
def __init__(
|
|
2388
|
-
|
|
2870
|
+
def __init__(
|
|
2871
|
+
self, parser, ctx: ParserRuleContext
|
|
2872
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2389
2873
|
super().__init__(parser)
|
|
2390
2874
|
self.op = None # Token
|
|
2391
2875
|
self.right = None # ExprComponentContext
|
|
@@ -2411,8 +2895,9 @@ class Parser(Parser):
|
|
|
2411
2895
|
|
|
2412
2896
|
class BooleanExprCompContext(ExprComponentContext):
|
|
2413
2897
|
|
|
2414
|
-
def __init__(
|
|
2415
|
-
|
|
2898
|
+
def __init__(
|
|
2899
|
+
self, parser, ctx: ParserRuleContext
|
|
2900
|
+
): # actually a VtlParser.ExprComponentContext
|
|
2416
2901
|
super().__init__(parser)
|
|
2417
2902
|
self.left = None # ExprComponentContext
|
|
2418
2903
|
self.op = None # Token
|
|
@@ -2481,8 +2966,16 @@ class Parser(Parser):
|
|
|
2481
2966
|
self.state = 299
|
|
2482
2967
|
localctx.op = self._input.LT(1)
|
|
2483
2968
|
_la = self._input.LA(1)
|
|
2484
|
-
if not (
|
|
2485
|
-
|
|
2969
|
+
if not (
|
|
2970
|
+
(
|
|
2971
|
+
((_la) & ~0x3F) == 0
|
|
2972
|
+
and (
|
|
2973
|
+
(1 << _la)
|
|
2974
|
+
& ((1 << Parser.PLUS) | (1 << Parser.MINUS) | (1 << Parser.NOT))
|
|
2975
|
+
)
|
|
2976
|
+
!= 0
|
|
2977
|
+
)
|
|
2978
|
+
):
|
|
2486
2979
|
localctx.op = self._errHandler.recoverInline(self)
|
|
2487
2980
|
else:
|
|
2488
2981
|
self._errHandler.reportMatch(self)
|
|
@@ -2538,15 +3031,15 @@ class Parser(Parser):
|
|
|
2538
3031
|
self._errHandler.sync(self)
|
|
2539
3032
|
la_ = self._interp.adaptivePredict(self._input, 8, self._ctx)
|
|
2540
3033
|
if la_ == 1:
|
|
2541
|
-
localctx = Parser.ArithmeticExprCompContext(
|
|
2542
|
-
|
|
2543
|
-
|
|
2544
|
-
_parentState))
|
|
3034
|
+
localctx = Parser.ArithmeticExprCompContext(
|
|
3035
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3036
|
+
)
|
|
2545
3037
|
localctx.left = _prevctx
|
|
2546
3038
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2547
3039
|
self.state = 312
|
|
2548
3040
|
if not self.precpred(self._ctx, 9):
|
|
2549
3041
|
from antlr4.error.Errors import FailedPredicateException
|
|
3042
|
+
|
|
2550
3043
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 9)")
|
|
2551
3044
|
self.state = 313
|
|
2552
3045
|
localctx.op = self._input.LT(1)
|
|
@@ -2561,15 +3054,15 @@ class Parser(Parser):
|
|
|
2561
3054
|
pass
|
|
2562
3055
|
|
|
2563
3056
|
elif la_ == 2:
|
|
2564
|
-
localctx = Parser.ArithmeticExprOrConcatCompContext(
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
_parentState))
|
|
3057
|
+
localctx = Parser.ArithmeticExprOrConcatCompContext(
|
|
3058
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3059
|
+
)
|
|
2568
3060
|
localctx.left = _prevctx
|
|
2569
3061
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2570
3062
|
self.state = 315
|
|
2571
3063
|
if not self.precpred(self._ctx, 8):
|
|
2572
3064
|
from antlr4.error.Errors import FailedPredicateException
|
|
3065
|
+
|
|
2573
3066
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 8)")
|
|
2574
3067
|
self.state = 316
|
|
2575
3068
|
localctx.op = self._input.LT(1)
|
|
@@ -2584,15 +3077,15 @@ class Parser(Parser):
|
|
|
2584
3077
|
pass
|
|
2585
3078
|
|
|
2586
3079
|
elif la_ == 3:
|
|
2587
|
-
localctx = Parser.ComparisonExprCompContext(
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
_parentState))
|
|
3080
|
+
localctx = Parser.ComparisonExprCompContext(
|
|
3081
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3082
|
+
)
|
|
2591
3083
|
localctx.left = _prevctx
|
|
2592
3084
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2593
3085
|
self.state = 318
|
|
2594
3086
|
if not self.precpred(self._ctx, 7):
|
|
2595
3087
|
from antlr4.error.Errors import FailedPredicateException
|
|
3088
|
+
|
|
2596
3089
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 7)")
|
|
2597
3090
|
self.state = 319
|
|
2598
3091
|
self.comparisonOperand()
|
|
@@ -2601,15 +3094,15 @@ class Parser(Parser):
|
|
|
2601
3094
|
pass
|
|
2602
3095
|
|
|
2603
3096
|
elif la_ == 4:
|
|
2604
|
-
localctx = Parser.BooleanExprCompContext(
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
_parentState))
|
|
3097
|
+
localctx = Parser.BooleanExprCompContext(
|
|
3098
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3099
|
+
)
|
|
2608
3100
|
localctx.left = _prevctx
|
|
2609
3101
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2610
3102
|
self.state = 322
|
|
2611
3103
|
if not self.precpred(self._ctx, 5):
|
|
2612
3104
|
from antlr4.error.Errors import FailedPredicateException
|
|
3105
|
+
|
|
2613
3106
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 5)")
|
|
2614
3107
|
self.state = 323
|
|
2615
3108
|
localctx.op = self.match(Parser.AND)
|
|
@@ -2618,15 +3111,15 @@ class Parser(Parser):
|
|
|
2618
3111
|
pass
|
|
2619
3112
|
|
|
2620
3113
|
elif la_ == 5:
|
|
2621
|
-
localctx = Parser.BooleanExprCompContext(
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
_parentState))
|
|
3114
|
+
localctx = Parser.BooleanExprCompContext(
|
|
3115
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3116
|
+
)
|
|
2625
3117
|
localctx.left = _prevctx
|
|
2626
3118
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2627
3119
|
self.state = 325
|
|
2628
3120
|
if not self.precpred(self._ctx, 4):
|
|
2629
3121
|
from antlr4.error.Errors import FailedPredicateException
|
|
3122
|
+
|
|
2630
3123
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 4)")
|
|
2631
3124
|
self.state = 326
|
|
2632
3125
|
localctx.op = self._input.LT(1)
|
|
@@ -2641,15 +3134,15 @@ class Parser(Parser):
|
|
|
2641
3134
|
pass
|
|
2642
3135
|
|
|
2643
3136
|
elif la_ == 6:
|
|
2644
|
-
localctx = Parser.InNotInExprCompContext(
|
|
2645
|
-
|
|
2646
|
-
|
|
2647
|
-
_parentState))
|
|
3137
|
+
localctx = Parser.InNotInExprCompContext(
|
|
3138
|
+
self, Parser.ExprComponentContext(self, _parentctx, _parentState)
|
|
3139
|
+
)
|
|
2648
3140
|
localctx.left = _prevctx
|
|
2649
3141
|
self.pushNewRecursionContext(localctx, _startState, self.RULE_exprComponent)
|
|
2650
3142
|
self.state = 328
|
|
2651
3143
|
if not self.precpred(self._ctx, 6):
|
|
2652
3144
|
from antlr4.error.Errors import FailedPredicateException
|
|
3145
|
+
|
|
2653
3146
|
raise FailedPredicateException(self, "self.precpred(self._ctx, 6)")
|
|
2654
3147
|
self.state = 329
|
|
2655
3148
|
localctx.op = self._input.LT(1)
|
|
@@ -2701,8 +3194,9 @@ class Parser(Parser):
|
|
|
2701
3194
|
|
|
2702
3195
|
class NumericFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2703
3196
|
|
|
2704
|
-
def __init__(
|
|
2705
|
-
|
|
3197
|
+
def __init__(
|
|
3198
|
+
self, parser, ctx: ParserRuleContext
|
|
3199
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2706
3200
|
super().__init__(parser)
|
|
2707
3201
|
self.copyFrom(ctx)
|
|
2708
3202
|
|
|
@@ -2717,8 +3211,9 @@ class Parser(Parser):
|
|
|
2717
3211
|
|
|
2718
3212
|
class StringFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2719
3213
|
|
|
2720
|
-
def __init__(
|
|
2721
|
-
|
|
3214
|
+
def __init__(
|
|
3215
|
+
self, parser, ctx: ParserRuleContext
|
|
3216
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2722
3217
|
super().__init__(parser)
|
|
2723
3218
|
self.copyFrom(ctx)
|
|
2724
3219
|
|
|
@@ -2733,8 +3228,9 @@ class Parser(Parser):
|
|
|
2733
3228
|
|
|
2734
3229
|
class ComparisonFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2735
3230
|
|
|
2736
|
-
def __init__(
|
|
2737
|
-
|
|
3231
|
+
def __init__(
|
|
3232
|
+
self, parser, ctx: ParserRuleContext
|
|
3233
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2738
3234
|
super().__init__(parser)
|
|
2739
3235
|
self.copyFrom(ctx)
|
|
2740
3236
|
|
|
@@ -2749,8 +3245,9 @@ class Parser(Parser):
|
|
|
2749
3245
|
|
|
2750
3246
|
class TimeFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2751
3247
|
|
|
2752
|
-
def __init__(
|
|
2753
|
-
|
|
3248
|
+
def __init__(
|
|
3249
|
+
self, parser, ctx: ParserRuleContext
|
|
3250
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2754
3251
|
super().__init__(parser)
|
|
2755
3252
|
self.copyFrom(ctx)
|
|
2756
3253
|
|
|
@@ -2765,8 +3262,9 @@ class Parser(Parser):
|
|
|
2765
3262
|
|
|
2766
3263
|
class GenericFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2767
3264
|
|
|
2768
|
-
def __init__(
|
|
2769
|
-
|
|
3265
|
+
def __init__(
|
|
3266
|
+
self, parser, ctx: ParserRuleContext
|
|
3267
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2770
3268
|
super().__init__(parser)
|
|
2771
3269
|
self.copyFrom(ctx)
|
|
2772
3270
|
|
|
@@ -2781,8 +3279,9 @@ class Parser(Parser):
|
|
|
2781
3279
|
|
|
2782
3280
|
class AnalyticFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2783
3281
|
|
|
2784
|
-
def __init__(
|
|
2785
|
-
|
|
3282
|
+
def __init__(
|
|
3283
|
+
self, parser, ctx: ParserRuleContext
|
|
3284
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2786
3285
|
super().__init__(parser)
|
|
2787
3286
|
self.copyFrom(ctx)
|
|
2788
3287
|
|
|
@@ -2797,8 +3296,9 @@ class Parser(Parser):
|
|
|
2797
3296
|
|
|
2798
3297
|
class ConditionalFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2799
3298
|
|
|
2800
|
-
def __init__(
|
|
2801
|
-
|
|
3299
|
+
def __init__(
|
|
3300
|
+
self, parser, ctx: ParserRuleContext
|
|
3301
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2802
3302
|
super().__init__(parser)
|
|
2803
3303
|
self.copyFrom(ctx)
|
|
2804
3304
|
|
|
@@ -2813,8 +3313,9 @@ class Parser(Parser):
|
|
|
2813
3313
|
|
|
2814
3314
|
class AggregateFunctionsComponentsContext(FunctionsComponentsContext):
|
|
2815
3315
|
|
|
2816
|
-
def __init__(
|
|
2817
|
-
|
|
3316
|
+
def __init__(
|
|
3317
|
+
self, parser, ctx: ParserRuleContext
|
|
3318
|
+
): # actually a VtlParser.FunctionsComponentsContext
|
|
2818
3319
|
super().__init__(parser)
|
|
2819
3320
|
self.copyFrom(ctx)
|
|
2820
3321
|
|
|
@@ -2891,7 +3392,6 @@ class Parser(Parser):
|
|
|
2891
3392
|
self.anFunctionComponent()
|
|
2892
3393
|
pass
|
|
2893
3394
|
|
|
2894
|
-
|
|
2895
3395
|
except RecognitionException as re:
|
|
2896
3396
|
localctx.exception = re
|
|
2897
3397
|
self._errHandler.reportError(self, re)
|
|
@@ -3184,7 +3684,6 @@ class Parser(Parser):
|
|
|
3184
3684
|
self.anFunction()
|
|
3185
3685
|
pass
|
|
3186
3686
|
|
|
3187
|
-
|
|
3188
3687
|
except RecognitionException as re:
|
|
3189
3688
|
localctx.exception = re
|
|
3190
3689
|
self._errHandler.reportError(self, re)
|
|
@@ -3395,9 +3894,6 @@ class Parser(Parser):
|
|
|
3395
3894
|
self.state = 384
|
|
3396
3895
|
self.havingClause()
|
|
3397
3896
|
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
3897
|
except RecognitionException as re:
|
|
3402
3898
|
localctx.exception = re
|
|
3403
3899
|
self._errHandler.reportError(self, re)
|
|
@@ -3714,8 +4210,9 @@ class Parser(Parser):
|
|
|
3714
4210
|
|
|
3715
4211
|
class JoinExprContext(JoinOperatorsContext):
|
|
3716
4212
|
|
|
3717
|
-
def __init__(
|
|
3718
|
-
|
|
4213
|
+
def __init__(
|
|
4214
|
+
self, parser, ctx: ParserRuleContext
|
|
4215
|
+
): # actually a VtlParser.JoinOperatorsContext
|
|
3719
4216
|
super().__init__(parser)
|
|
3720
4217
|
self.joinKeyword = None # Token
|
|
3721
4218
|
self.copyFrom(ctx)
|
|
@@ -3827,8 +4324,9 @@ class Parser(Parser):
|
|
|
3827
4324
|
|
|
3828
4325
|
class DefOperatorContext(DefOperatorsContext):
|
|
3829
4326
|
|
|
3830
|
-
def __init__(
|
|
3831
|
-
|
|
4327
|
+
def __init__(
|
|
4328
|
+
self, parser, ctx: ParserRuleContext
|
|
4329
|
+
): # actually a VtlParser.DefOperatorsContext
|
|
3832
4330
|
super().__init__(parser)
|
|
3833
4331
|
self.copyFrom(ctx)
|
|
3834
4332
|
|
|
@@ -3885,8 +4383,9 @@ class Parser(Parser):
|
|
|
3885
4383
|
|
|
3886
4384
|
class DefHierarchicalContext(DefOperatorsContext):
|
|
3887
4385
|
|
|
3888
|
-
def __init__(
|
|
3889
|
-
|
|
4386
|
+
def __init__(
|
|
4387
|
+
self, parser, ctx: ParserRuleContext
|
|
4388
|
+
): # actually a VtlParser.DefOperatorsContext
|
|
3890
4389
|
super().__init__(parser)
|
|
3891
4390
|
self.copyFrom(ctx)
|
|
3892
4391
|
|
|
@@ -3934,8 +4433,9 @@ class Parser(Parser):
|
|
|
3934
4433
|
|
|
3935
4434
|
class DefDatapointRulesetContext(DefOperatorsContext):
|
|
3936
4435
|
|
|
3937
|
-
def __init__(
|
|
3938
|
-
|
|
4436
|
+
def __init__(
|
|
4437
|
+
self, parser, ctx: ParserRuleContext
|
|
4438
|
+
): # actually a VtlParser.DefOperatorsContext
|
|
3939
4439
|
super().__init__(parser)
|
|
3940
4440
|
self.copyFrom(ctx)
|
|
3941
4441
|
|
|
@@ -4099,7 +4599,6 @@ class Parser(Parser):
|
|
|
4099
4599
|
self.match(Parser.RULESET)
|
|
4100
4600
|
pass
|
|
4101
4601
|
|
|
4102
|
-
|
|
4103
4602
|
except RecognitionException as re:
|
|
4104
4603
|
localctx.exception = re
|
|
4105
4604
|
self._errHandler.reportError(self, re)
|
|
@@ -4122,8 +4621,9 @@ class Parser(Parser):
|
|
|
4122
4621
|
|
|
4123
4622
|
class EvalAtomContext(GenericOperatorsContext):
|
|
4124
4623
|
|
|
4125
|
-
def __init__(
|
|
4126
|
-
|
|
4624
|
+
def __init__(
|
|
4625
|
+
self, parser, ctx: ParserRuleContext
|
|
4626
|
+
): # actually a VtlParser.GenericOperatorsContext
|
|
4127
4627
|
super().__init__(parser)
|
|
4128
4628
|
self.copyFrom(ctx)
|
|
4129
4629
|
|
|
@@ -4183,8 +4683,9 @@ class Parser(Parser):
|
|
|
4183
4683
|
|
|
4184
4684
|
class CastExprDatasetContext(GenericOperatorsContext):
|
|
4185
4685
|
|
|
4186
|
-
def __init__(
|
|
4187
|
-
|
|
4686
|
+
def __init__(
|
|
4687
|
+
self, parser, ctx: ParserRuleContext
|
|
4688
|
+
): # actually a VtlParser.GenericOperatorsContext
|
|
4188
4689
|
super().__init__(parser)
|
|
4189
4690
|
self.copyFrom(ctx)
|
|
4190
4691
|
|
|
@@ -4223,8 +4724,9 @@ class Parser(Parser):
|
|
|
4223
4724
|
|
|
4224
4725
|
class CallDatasetContext(GenericOperatorsContext):
|
|
4225
4726
|
|
|
4226
|
-
def __init__(
|
|
4227
|
-
|
|
4727
|
+
def __init__(
|
|
4728
|
+
self, parser, ctx: ParserRuleContext
|
|
4729
|
+
): # actually a VtlParser.GenericOperatorsContext
|
|
4228
4730
|
super().__init__(parser)
|
|
4229
4731
|
self.copyFrom(ctx)
|
|
4230
4732
|
|
|
@@ -4274,69 +4776,117 @@ class Parser(Parser):
|
|
|
4274
4776
|
self.state = 500
|
|
4275
4777
|
self._errHandler.sync(self)
|
|
4276
4778
|
_la = self._input.LA(1)
|
|
4277
|
-
if (
|
|
4278
|
-
|
|
4279
|
-
|
|
4280
|
-
|
|
4281
|
-
|
|
4282
|
-
|
|
4283
|
-
|
|
4284
|
-
1 << Parser.
|
|
4285
|
-
|
|
4286
|
-
|
|
4287
|
-
|
|
4288
|
-
|
|
4289
|
-
|
|
4290
|
-
|
|
4291
|
-
|
|
4292
|
-
|
|
4293
|
-
|
|
4294
|
-
|
|
4295
|
-
|
|
4296
|
-
|
|
4297
|
-
|
|
4298
|
-
|
|
4299
|
-
|
|
4300
|
-
|
|
4301
|
-
|
|
4302
|
-
|
|
4303
|
-
|
|
4304
|
-
|
|
4305
|
-
|
|
4306
|
-
|
|
4307
|
-
|
|
4308
|
-
|
|
4309
|
-
|
|
4310
|
-
|
|
4311
|
-
|
|
4312
|
-
|
|
4313
|
-
|
|
4314
|
-
|
|
4315
|
-
|
|
4316
|
-
|
|
4317
|
-
|
|
4318
|
-
|
|
4319
|
-
|
|
4320
|
-
|
|
4321
|
-
1 << (Parser.
|
|
4322
|
-
1 << (Parser.
|
|
4323
|
-
1 << (Parser.
|
|
4324
|
-
1 << (Parser.
|
|
4325
|
-
1 << (Parser.
|
|
4326
|
-
1 << (Parser.
|
|
4327
|
-
1 << (Parser.
|
|
4328
|
-
1 << (Parser.
|
|
4329
|
-
1 << (Parser.
|
|
4330
|
-
1 << (Parser.
|
|
4331
|
-
|
|
4332
|
-
|
|
4333
|
-
|
|
4334
|
-
1 << (Parser.
|
|
4335
|
-
1 << (Parser.
|
|
4336
|
-
1 << (Parser.
|
|
4337
|
-
1 << (Parser.
|
|
4338
|
-
1 << (Parser.
|
|
4339
|
-
1 << (Parser.
|
|
4779
|
+
if (
|
|
4780
|
+
(
|
|
4781
|
+
((_la) & ~0x3F) == 0
|
|
4782
|
+
and (
|
|
4783
|
+
(1 << _la)
|
|
4784
|
+
& (
|
|
4785
|
+
(1 << Parser.LPAREN)
|
|
4786
|
+
| (1 << Parser.PLUS)
|
|
4787
|
+
| (1 << Parser.MINUS)
|
|
4788
|
+
| (1 << Parser.EVAL)
|
|
4789
|
+
| (1 << Parser.IF)
|
|
4790
|
+
| (1 << Parser.CURRENT_DATE)
|
|
4791
|
+
| (1 << Parser.NOT)
|
|
4792
|
+
| (1 << Parser.BETWEEN)
|
|
4793
|
+
| (1 << Parser.NULL_CONSTANT)
|
|
4794
|
+
| (1 << Parser.ISNULL)
|
|
4795
|
+
| (1 << Parser.UNION)
|
|
4796
|
+
| (1 << Parser.SYMDIFF)
|
|
4797
|
+
| (1 << Parser.INTERSECT)
|
|
4798
|
+
| (1 << Parser.CHECK)
|
|
4799
|
+
| (1 << Parser.EXISTS_IN)
|
|
4800
|
+
)
|
|
4801
|
+
)
|
|
4802
|
+
!= 0
|
|
4803
|
+
)
|
|
4804
|
+
or (
|
|
4805
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
4806
|
+
and (
|
|
4807
|
+
(1 << (_la - 68))
|
|
4808
|
+
& (
|
|
4809
|
+
(1 << (Parser.MIN - 68))
|
|
4810
|
+
| (1 << (Parser.MAX - 68))
|
|
4811
|
+
| (1 << (Parser.ABS - 68))
|
|
4812
|
+
| (1 << (Parser.LN - 68))
|
|
4813
|
+
| (1 << (Parser.LOG - 68))
|
|
4814
|
+
| (1 << (Parser.TRUNC - 68))
|
|
4815
|
+
| (1 << (Parser.ROUND - 68))
|
|
4816
|
+
| (1 << (Parser.POWER - 68))
|
|
4817
|
+
| (1 << (Parser.MOD - 68))
|
|
4818
|
+
| (1 << (Parser.LEN - 68))
|
|
4819
|
+
| (1 << (Parser.TRIM - 68))
|
|
4820
|
+
| (1 << (Parser.UCASE - 68))
|
|
4821
|
+
| (1 << (Parser.LCASE - 68))
|
|
4822
|
+
| (1 << (Parser.SUBSTR - 68))
|
|
4823
|
+
| (1 << (Parser.SUM - 68))
|
|
4824
|
+
| (1 << (Parser.AVG - 68))
|
|
4825
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
4826
|
+
| (1 << (Parser.COUNT - 68))
|
|
4827
|
+
| (1 << (Parser.EXP - 68))
|
|
4828
|
+
| (1 << (Parser.CHARSET_MATCH - 68))
|
|
4829
|
+
| (1 << (Parser.NVL - 68))
|
|
4830
|
+
| (1 << (Parser.HIERARCHY - 68))
|
|
4831
|
+
| (1 << (Parser.OPTIONAL - 68))
|
|
4832
|
+
| (1 << (Parser.LTRIM - 68))
|
|
4833
|
+
| (1 << (Parser.RTRIM - 68))
|
|
4834
|
+
| (1 << (Parser.INSTR - 68))
|
|
4835
|
+
| (1 << (Parser.REPLACE - 68))
|
|
4836
|
+
| (1 << (Parser.CEIL - 68))
|
|
4837
|
+
| (1 << (Parser.FLOOR - 68))
|
|
4838
|
+
| (1 << (Parser.SQRT - 68))
|
|
4839
|
+
| (1 << (Parser.SETDIFF - 68))
|
|
4840
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
4841
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
4842
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
4843
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
4844
|
+
)
|
|
4845
|
+
)
|
|
4846
|
+
!= 0
|
|
4847
|
+
)
|
|
4848
|
+
or (
|
|
4849
|
+
(((_la - 135)) & ~0x3F) == 0
|
|
4850
|
+
and (
|
|
4851
|
+
(1 << (_la - 135))
|
|
4852
|
+
& (
|
|
4853
|
+
(1 << (Parser.FIRST_VALUE - 135))
|
|
4854
|
+
| (1 << (Parser.LAST_VALUE - 135))
|
|
4855
|
+
| (1 << (Parser.LAG - 135))
|
|
4856
|
+
| (1 << (Parser.LEAD - 135))
|
|
4857
|
+
| (1 << (Parser.RATIO_TO_REPORT - 135))
|
|
4858
|
+
| (1 << (Parser.FILL_TIME_SERIES - 135))
|
|
4859
|
+
| (1 << (Parser.FLOW_TO_STOCK - 135))
|
|
4860
|
+
| (1 << (Parser.STOCK_TO_FLOW - 135))
|
|
4861
|
+
| (1 << (Parser.TIMESHIFT - 135))
|
|
4862
|
+
| (1 << (Parser.INNER_JOIN - 135))
|
|
4863
|
+
| (1 << (Parser.LEFT_JOIN - 135))
|
|
4864
|
+
| (1 << (Parser.CROSS_JOIN - 135))
|
|
4865
|
+
| (1 << (Parser.FULL_JOIN - 135))
|
|
4866
|
+
| (1 << (Parser.PERIOD_INDICATOR - 135))
|
|
4867
|
+
)
|
|
4868
|
+
)
|
|
4869
|
+
!= 0
|
|
4870
|
+
)
|
|
4871
|
+
or (
|
|
4872
|
+
(((_la - 199)) & ~0x3F) == 0
|
|
4873
|
+
and (
|
|
4874
|
+
(1 << (_la - 199))
|
|
4875
|
+
& (
|
|
4876
|
+
(1 << (Parser.TIME_AGG - 199))
|
|
4877
|
+
| (1 << (Parser.CAST - 199))
|
|
4878
|
+
| (1 << (Parser.CHECK_DATAPOINT - 199))
|
|
4879
|
+
| (1 << (Parser.CHECK_HIERARCHY - 199))
|
|
4880
|
+
| (1 << (Parser.INTEGER_CONSTANT - 199))
|
|
4881
|
+
| (1 << (Parser.NUMBER_CONSTANT - 199))
|
|
4882
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 199))
|
|
4883
|
+
| (1 << (Parser.STRING_CONSTANT - 199))
|
|
4884
|
+
| (1 << (Parser.IDENTIFIER - 199))
|
|
4885
|
+
)
|
|
4886
|
+
)
|
|
4887
|
+
!= 0
|
|
4888
|
+
)
|
|
4889
|
+
):
|
|
4340
4890
|
self.state = 492
|
|
4341
4891
|
self.parameter()
|
|
4342
4892
|
self.state = 497
|
|
@@ -4372,9 +4922,14 @@ class Parser(Parser):
|
|
|
4372
4922
|
self.state = 508
|
|
4373
4923
|
self.varID()
|
|
4374
4924
|
pass
|
|
4375
|
-
elif token in [
|
|
4376
|
-
|
|
4377
|
-
|
|
4925
|
+
elif token in [
|
|
4926
|
+
Parser.NULL_CONSTANT,
|
|
4927
|
+
Parser.CAST,
|
|
4928
|
+
Parser.INTEGER_CONSTANT,
|
|
4929
|
+
Parser.NUMBER_CONSTANT,
|
|
4930
|
+
Parser.BOOLEAN_CONSTANT,
|
|
4931
|
+
Parser.STRING_CONSTANT,
|
|
4932
|
+
]:
|
|
4378
4933
|
self.state = 509
|
|
4379
4934
|
self.scalarItem()
|
|
4380
4935
|
pass
|
|
@@ -4395,9 +4950,14 @@ class Parser(Parser):
|
|
|
4395
4950
|
self.state = 513
|
|
4396
4951
|
self.varID()
|
|
4397
4952
|
pass
|
|
4398
|
-
elif token in [
|
|
4399
|
-
|
|
4400
|
-
|
|
4953
|
+
elif token in [
|
|
4954
|
+
Parser.NULL_CONSTANT,
|
|
4955
|
+
Parser.CAST,
|
|
4956
|
+
Parser.INTEGER_CONSTANT,
|
|
4957
|
+
Parser.NUMBER_CONSTANT,
|
|
4958
|
+
Parser.BOOLEAN_CONSTANT,
|
|
4959
|
+
Parser.STRING_CONSTANT,
|
|
4960
|
+
]:
|
|
4401
4961
|
self.state = 514
|
|
4402
4962
|
self.scalarItem()
|
|
4403
4963
|
pass
|
|
@@ -4445,9 +5005,17 @@ class Parser(Parser):
|
|
|
4445
5005
|
self.state = 539
|
|
4446
5006
|
self._errHandler.sync(self)
|
|
4447
5007
|
token = self._input.LA(1)
|
|
4448
|
-
if token in [
|
|
4449
|
-
|
|
4450
|
-
|
|
5008
|
+
if token in [
|
|
5009
|
+
Parser.BOOLEAN,
|
|
5010
|
+
Parser.DATE,
|
|
5011
|
+
Parser.TIME_PERIOD,
|
|
5012
|
+
Parser.NUMBER,
|
|
5013
|
+
Parser.STRING,
|
|
5014
|
+
Parser.TIME,
|
|
5015
|
+
Parser.INTEGER,
|
|
5016
|
+
Parser.DURATION,
|
|
5017
|
+
Parser.SCALAR,
|
|
5018
|
+
]:
|
|
4451
5019
|
self.state = 537
|
|
4452
5020
|
self.basicScalarType()
|
|
4453
5021
|
pass
|
|
@@ -4495,8 +5063,9 @@ class Parser(Parser):
|
|
|
4495
5063
|
|
|
4496
5064
|
class EvalAtomComponentContext(GenericOperatorsComponentContext):
|
|
4497
5065
|
|
|
4498
|
-
def __init__(
|
|
4499
|
-
|
|
5066
|
+
def __init__(
|
|
5067
|
+
self, parser, ctx: ParserRuleContext
|
|
5068
|
+
): # actually a VtlParser.GenericOperatorsComponentContext
|
|
4500
5069
|
super().__init__(parser)
|
|
4501
5070
|
self.copyFrom(ctx)
|
|
4502
5071
|
|
|
@@ -4556,8 +5125,9 @@ class Parser(Parser):
|
|
|
4556
5125
|
|
|
4557
5126
|
class CastExprComponentContext(GenericOperatorsComponentContext):
|
|
4558
5127
|
|
|
4559
|
-
def __init__(
|
|
4560
|
-
|
|
5128
|
+
def __init__(
|
|
5129
|
+
self, parser, ctx: ParserRuleContext
|
|
5130
|
+
): # actually a VtlParser.GenericOperatorsComponentContext
|
|
4561
5131
|
super().__init__(parser)
|
|
4562
5132
|
self.copyFrom(ctx)
|
|
4563
5133
|
|
|
@@ -4596,8 +5166,9 @@ class Parser(Parser):
|
|
|
4596
5166
|
|
|
4597
5167
|
class CallComponentContext(GenericOperatorsComponentContext):
|
|
4598
5168
|
|
|
4599
|
-
def __init__(
|
|
4600
|
-
|
|
5169
|
+
def __init__(
|
|
5170
|
+
self, parser, ctx: ParserRuleContext
|
|
5171
|
+
): # actually a VtlParser.GenericOperatorsComponentContext
|
|
4601
5172
|
super().__init__(parser)
|
|
4602
5173
|
self.copyFrom(ctx)
|
|
4603
5174
|
|
|
@@ -4647,45 +5218,105 @@ class Parser(Parser):
|
|
|
4647
5218
|
self.state = 559
|
|
4648
5219
|
self._errHandler.sync(self)
|
|
4649
5220
|
_la = self._input.LA(1)
|
|
4650
|
-
if (
|
|
4651
|
-
|
|
4652
|
-
|
|
4653
|
-
|
|
4654
|
-
|
|
4655
|
-
|
|
4656
|
-
|
|
4657
|
-
|
|
4658
|
-
|
|
4659
|
-
|
|
4660
|
-
|
|
4661
|
-
|
|
4662
|
-
|
|
4663
|
-
|
|
4664
|
-
|
|
4665
|
-
|
|
4666
|
-
|
|
4667
|
-
|
|
4668
|
-
|
|
4669
|
-
|
|
4670
|
-
|
|
4671
|
-
|
|
4672
|
-
|
|
4673
|
-
|
|
4674
|
-
|
|
4675
|
-
|
|
4676
|
-
1 << (Parser.
|
|
4677
|
-
1 << (Parser.
|
|
4678
|
-
1 << (Parser.
|
|
4679
|
-
1 << (Parser.
|
|
4680
|
-
1 << (Parser.
|
|
4681
|
-
1 << (Parser.
|
|
4682
|
-
|
|
4683
|
-
|
|
4684
|
-
|
|
4685
|
-
1 << (Parser.
|
|
4686
|
-
1 << (Parser.
|
|
4687
|
-
1 << (Parser.
|
|
4688
|
-
1 << (Parser.
|
|
5221
|
+
if (
|
|
5222
|
+
(
|
|
5223
|
+
((_la) & ~0x3F) == 0
|
|
5224
|
+
and (
|
|
5225
|
+
(1 << _la)
|
|
5226
|
+
& (
|
|
5227
|
+
(1 << Parser.LPAREN)
|
|
5228
|
+
| (1 << Parser.PLUS)
|
|
5229
|
+
| (1 << Parser.MINUS)
|
|
5230
|
+
| (1 << Parser.EVAL)
|
|
5231
|
+
| (1 << Parser.IF)
|
|
5232
|
+
| (1 << Parser.CURRENT_DATE)
|
|
5233
|
+
| (1 << Parser.NOT)
|
|
5234
|
+
| (1 << Parser.BETWEEN)
|
|
5235
|
+
| (1 << Parser.NULL_CONSTANT)
|
|
5236
|
+
| (1 << Parser.ISNULL)
|
|
5237
|
+
)
|
|
5238
|
+
)
|
|
5239
|
+
!= 0
|
|
5240
|
+
)
|
|
5241
|
+
or (
|
|
5242
|
+
(((_la - 65)) & ~0x3F) == 0
|
|
5243
|
+
and (
|
|
5244
|
+
(1 << (_la - 65))
|
|
5245
|
+
& (
|
|
5246
|
+
(1 << (Parser.RANK - 65))
|
|
5247
|
+
| (1 << (Parser.MIN - 65))
|
|
5248
|
+
| (1 << (Parser.MAX - 65))
|
|
5249
|
+
| (1 << (Parser.ABS - 65))
|
|
5250
|
+
| (1 << (Parser.LN - 65))
|
|
5251
|
+
| (1 << (Parser.LOG - 65))
|
|
5252
|
+
| (1 << (Parser.TRUNC - 65))
|
|
5253
|
+
| (1 << (Parser.ROUND - 65))
|
|
5254
|
+
| (1 << (Parser.POWER - 65))
|
|
5255
|
+
| (1 << (Parser.MOD - 65))
|
|
5256
|
+
| (1 << (Parser.LEN - 65))
|
|
5257
|
+
| (1 << (Parser.TRIM - 65))
|
|
5258
|
+
| (1 << (Parser.UCASE - 65))
|
|
5259
|
+
| (1 << (Parser.LCASE - 65))
|
|
5260
|
+
| (1 << (Parser.SUBSTR - 65))
|
|
5261
|
+
| (1 << (Parser.SUM - 65))
|
|
5262
|
+
| (1 << (Parser.AVG - 65))
|
|
5263
|
+
| (1 << (Parser.MEDIAN - 65))
|
|
5264
|
+
| (1 << (Parser.COUNT - 65))
|
|
5265
|
+
| (1 << (Parser.EXP - 65))
|
|
5266
|
+
| (1 << (Parser.CHARSET_MATCH - 65))
|
|
5267
|
+
| (1 << (Parser.NVL - 65))
|
|
5268
|
+
| (1 << (Parser.OPTIONAL - 65))
|
|
5269
|
+
| (1 << (Parser.LTRIM - 65))
|
|
5270
|
+
| (1 << (Parser.RTRIM - 65))
|
|
5271
|
+
| (1 << (Parser.INSTR - 65))
|
|
5272
|
+
| (1 << (Parser.REPLACE - 65))
|
|
5273
|
+
| (1 << (Parser.CEIL - 65))
|
|
5274
|
+
| (1 << (Parser.FLOOR - 65))
|
|
5275
|
+
| (1 << (Parser.SQRT - 65))
|
|
5276
|
+
| (1 << (Parser.STDDEV_POP - 65))
|
|
5277
|
+
)
|
|
5278
|
+
)
|
|
5279
|
+
!= 0
|
|
5280
|
+
)
|
|
5281
|
+
or (
|
|
5282
|
+
(((_la - 129)) & ~0x3F) == 0
|
|
5283
|
+
and (
|
|
5284
|
+
(1 << (_la - 129))
|
|
5285
|
+
& (
|
|
5286
|
+
(1 << (Parser.STDDEV_SAMP - 129))
|
|
5287
|
+
| (1 << (Parser.VAR_POP - 129))
|
|
5288
|
+
| (1 << (Parser.VAR_SAMP - 129))
|
|
5289
|
+
| (1 << (Parser.FIRST_VALUE - 129))
|
|
5290
|
+
| (1 << (Parser.LAST_VALUE - 129))
|
|
5291
|
+
| (1 << (Parser.LAG - 129))
|
|
5292
|
+
| (1 << (Parser.LEAD - 129))
|
|
5293
|
+
| (1 << (Parser.RATIO_TO_REPORT - 129))
|
|
5294
|
+
| (1 << (Parser.FILL_TIME_SERIES - 129))
|
|
5295
|
+
| (1 << (Parser.FLOW_TO_STOCK - 129))
|
|
5296
|
+
| (1 << (Parser.STOCK_TO_FLOW - 129))
|
|
5297
|
+
| (1 << (Parser.TIMESHIFT - 129))
|
|
5298
|
+
)
|
|
5299
|
+
)
|
|
5300
|
+
!= 0
|
|
5301
|
+
)
|
|
5302
|
+
or (
|
|
5303
|
+
(((_la - 196)) & ~0x3F) == 0
|
|
5304
|
+
and (
|
|
5305
|
+
(1 << (_la - 196))
|
|
5306
|
+
& (
|
|
5307
|
+
(1 << (Parser.PERIOD_INDICATOR - 196))
|
|
5308
|
+
| (1 << (Parser.TIME_AGG - 196))
|
|
5309
|
+
| (1 << (Parser.CAST - 196))
|
|
5310
|
+
| (1 << (Parser.INTEGER_CONSTANT - 196))
|
|
5311
|
+
| (1 << (Parser.NUMBER_CONSTANT - 196))
|
|
5312
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 196))
|
|
5313
|
+
| (1 << (Parser.STRING_CONSTANT - 196))
|
|
5314
|
+
| (1 << (Parser.IDENTIFIER - 196))
|
|
5315
|
+
)
|
|
5316
|
+
)
|
|
5317
|
+
!= 0
|
|
5318
|
+
)
|
|
5319
|
+
):
|
|
4689
5320
|
self.state = 551
|
|
4690
5321
|
self.parameterComponent()
|
|
4691
5322
|
self.state = 556
|
|
@@ -4717,9 +5348,17 @@ class Parser(Parser):
|
|
|
4717
5348
|
self.state = 569
|
|
4718
5349
|
self._errHandler.sync(self)
|
|
4719
5350
|
token = self._input.LA(1)
|
|
4720
|
-
if token in [
|
|
4721
|
-
|
|
4722
|
-
|
|
5351
|
+
if token in [
|
|
5352
|
+
Parser.BOOLEAN,
|
|
5353
|
+
Parser.DATE,
|
|
5354
|
+
Parser.TIME_PERIOD,
|
|
5355
|
+
Parser.NUMBER,
|
|
5356
|
+
Parser.STRING,
|
|
5357
|
+
Parser.TIME,
|
|
5358
|
+
Parser.INTEGER,
|
|
5359
|
+
Parser.DURATION,
|
|
5360
|
+
Parser.SCALAR,
|
|
5361
|
+
]:
|
|
4723
5362
|
self.state = 567
|
|
4724
5363
|
self.basicScalarType()
|
|
4725
5364
|
pass
|
|
@@ -4760,9 +5399,14 @@ class Parser(Parser):
|
|
|
4760
5399
|
self.state = 581
|
|
4761
5400
|
self.componentID()
|
|
4762
5401
|
pass
|
|
4763
|
-
elif token in [
|
|
4764
|
-
|
|
4765
|
-
|
|
5402
|
+
elif token in [
|
|
5403
|
+
Parser.NULL_CONSTANT,
|
|
5404
|
+
Parser.CAST,
|
|
5405
|
+
Parser.INTEGER_CONSTANT,
|
|
5406
|
+
Parser.NUMBER_CONSTANT,
|
|
5407
|
+
Parser.BOOLEAN_CONSTANT,
|
|
5408
|
+
Parser.STRING_CONSTANT,
|
|
5409
|
+
]:
|
|
4766
5410
|
self.state = 582
|
|
4767
5411
|
self.scalarItem()
|
|
4768
5412
|
pass
|
|
@@ -4783,9 +5427,14 @@ class Parser(Parser):
|
|
|
4783
5427
|
self.state = 586
|
|
4784
5428
|
self.componentID()
|
|
4785
5429
|
pass
|
|
4786
|
-
elif token in [
|
|
4787
|
-
|
|
4788
|
-
|
|
5430
|
+
elif token in [
|
|
5431
|
+
Parser.NULL_CONSTANT,
|
|
5432
|
+
Parser.CAST,
|
|
5433
|
+
Parser.INTEGER_CONSTANT,
|
|
5434
|
+
Parser.NUMBER_CONSTANT,
|
|
5435
|
+
Parser.BOOLEAN_CONSTANT,
|
|
5436
|
+
Parser.STRING_CONSTANT,
|
|
5437
|
+
]:
|
|
4789
5438
|
self.state = 587
|
|
4790
5439
|
self.scalarItem()
|
|
4791
5440
|
pass
|
|
@@ -4859,20 +5508,68 @@ class Parser(Parser):
|
|
|
4859
5508
|
self.state = 610
|
|
4860
5509
|
self._errHandler.sync(self)
|
|
4861
5510
|
token = self._input.LA(1)
|
|
4862
|
-
if token in [
|
|
4863
|
-
|
|
4864
|
-
|
|
4865
|
-
|
|
4866
|
-
|
|
4867
|
-
|
|
4868
|
-
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
|
|
4872
|
-
|
|
4873
|
-
|
|
4874
|
-
|
|
4875
|
-
|
|
5511
|
+
if token in [
|
|
5512
|
+
Parser.LPAREN,
|
|
5513
|
+
Parser.PLUS,
|
|
5514
|
+
Parser.MINUS,
|
|
5515
|
+
Parser.EVAL,
|
|
5516
|
+
Parser.IF,
|
|
5517
|
+
Parser.CURRENT_DATE,
|
|
5518
|
+
Parser.NOT,
|
|
5519
|
+
Parser.BETWEEN,
|
|
5520
|
+
Parser.NULL_CONSTANT,
|
|
5521
|
+
Parser.ISNULL,
|
|
5522
|
+
Parser.RANK,
|
|
5523
|
+
Parser.MIN,
|
|
5524
|
+
Parser.MAX,
|
|
5525
|
+
Parser.ABS,
|
|
5526
|
+
Parser.LN,
|
|
5527
|
+
Parser.LOG,
|
|
5528
|
+
Parser.TRUNC,
|
|
5529
|
+
Parser.ROUND,
|
|
5530
|
+
Parser.POWER,
|
|
5531
|
+
Parser.MOD,
|
|
5532
|
+
Parser.LEN,
|
|
5533
|
+
Parser.TRIM,
|
|
5534
|
+
Parser.UCASE,
|
|
5535
|
+
Parser.LCASE,
|
|
5536
|
+
Parser.SUBSTR,
|
|
5537
|
+
Parser.SUM,
|
|
5538
|
+
Parser.AVG,
|
|
5539
|
+
Parser.MEDIAN,
|
|
5540
|
+
Parser.COUNT,
|
|
5541
|
+
Parser.EXP,
|
|
5542
|
+
Parser.CHARSET_MATCH,
|
|
5543
|
+
Parser.NVL,
|
|
5544
|
+
Parser.LTRIM,
|
|
5545
|
+
Parser.RTRIM,
|
|
5546
|
+
Parser.INSTR,
|
|
5547
|
+
Parser.REPLACE,
|
|
5548
|
+
Parser.CEIL,
|
|
5549
|
+
Parser.FLOOR,
|
|
5550
|
+
Parser.SQRT,
|
|
5551
|
+
Parser.STDDEV_POP,
|
|
5552
|
+
Parser.STDDEV_SAMP,
|
|
5553
|
+
Parser.VAR_POP,
|
|
5554
|
+
Parser.VAR_SAMP,
|
|
5555
|
+
Parser.FIRST_VALUE,
|
|
5556
|
+
Parser.LAST_VALUE,
|
|
5557
|
+
Parser.LAG,
|
|
5558
|
+
Parser.LEAD,
|
|
5559
|
+
Parser.RATIO_TO_REPORT,
|
|
5560
|
+
Parser.FILL_TIME_SERIES,
|
|
5561
|
+
Parser.FLOW_TO_STOCK,
|
|
5562
|
+
Parser.STOCK_TO_FLOW,
|
|
5563
|
+
Parser.TIMESHIFT,
|
|
5564
|
+
Parser.PERIOD_INDICATOR,
|
|
5565
|
+
Parser.TIME_AGG,
|
|
5566
|
+
Parser.CAST,
|
|
5567
|
+
Parser.INTEGER_CONSTANT,
|
|
5568
|
+
Parser.NUMBER_CONSTANT,
|
|
5569
|
+
Parser.BOOLEAN_CONSTANT,
|
|
5570
|
+
Parser.STRING_CONSTANT,
|
|
5571
|
+
Parser.IDENTIFIER,
|
|
5572
|
+
]:
|
|
4876
5573
|
self.enterOuterAlt(localctx, 1)
|
|
4877
5574
|
self.state = 608
|
|
4878
5575
|
self.exprComponent(0)
|
|
@@ -4922,24 +5619,80 @@ class Parser(Parser):
|
|
|
4922
5619
|
self.state = 614
|
|
4923
5620
|
self._errHandler.sync(self)
|
|
4924
5621
|
token = self._input.LA(1)
|
|
4925
|
-
if token in [
|
|
4926
|
-
|
|
4927
|
-
|
|
4928
|
-
|
|
4929
|
-
|
|
4930
|
-
|
|
4931
|
-
|
|
4932
|
-
|
|
4933
|
-
|
|
4934
|
-
|
|
4935
|
-
|
|
4936
|
-
|
|
4937
|
-
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
|
|
4942
|
-
|
|
5622
|
+
if token in [
|
|
5623
|
+
Parser.LPAREN,
|
|
5624
|
+
Parser.PLUS,
|
|
5625
|
+
Parser.MINUS,
|
|
5626
|
+
Parser.EVAL,
|
|
5627
|
+
Parser.IF,
|
|
5628
|
+
Parser.CURRENT_DATE,
|
|
5629
|
+
Parser.NOT,
|
|
5630
|
+
Parser.BETWEEN,
|
|
5631
|
+
Parser.NULL_CONSTANT,
|
|
5632
|
+
Parser.ISNULL,
|
|
5633
|
+
Parser.UNION,
|
|
5634
|
+
Parser.SYMDIFF,
|
|
5635
|
+
Parser.INTERSECT,
|
|
5636
|
+
Parser.CHECK,
|
|
5637
|
+
Parser.EXISTS_IN,
|
|
5638
|
+
Parser.MIN,
|
|
5639
|
+
Parser.MAX,
|
|
5640
|
+
Parser.ABS,
|
|
5641
|
+
Parser.LN,
|
|
5642
|
+
Parser.LOG,
|
|
5643
|
+
Parser.TRUNC,
|
|
5644
|
+
Parser.ROUND,
|
|
5645
|
+
Parser.POWER,
|
|
5646
|
+
Parser.MOD,
|
|
5647
|
+
Parser.LEN,
|
|
5648
|
+
Parser.TRIM,
|
|
5649
|
+
Parser.UCASE,
|
|
5650
|
+
Parser.LCASE,
|
|
5651
|
+
Parser.SUBSTR,
|
|
5652
|
+
Parser.SUM,
|
|
5653
|
+
Parser.AVG,
|
|
5654
|
+
Parser.MEDIAN,
|
|
5655
|
+
Parser.COUNT,
|
|
5656
|
+
Parser.EXP,
|
|
5657
|
+
Parser.CHARSET_MATCH,
|
|
5658
|
+
Parser.NVL,
|
|
5659
|
+
Parser.HIERARCHY,
|
|
5660
|
+
Parser.LTRIM,
|
|
5661
|
+
Parser.RTRIM,
|
|
5662
|
+
Parser.INSTR,
|
|
5663
|
+
Parser.REPLACE,
|
|
5664
|
+
Parser.CEIL,
|
|
5665
|
+
Parser.FLOOR,
|
|
5666
|
+
Parser.SQRT,
|
|
5667
|
+
Parser.SETDIFF,
|
|
5668
|
+
Parser.STDDEV_POP,
|
|
5669
|
+
Parser.STDDEV_SAMP,
|
|
5670
|
+
Parser.VAR_POP,
|
|
5671
|
+
Parser.VAR_SAMP,
|
|
5672
|
+
Parser.FIRST_VALUE,
|
|
5673
|
+
Parser.LAST_VALUE,
|
|
5674
|
+
Parser.LAG,
|
|
5675
|
+
Parser.LEAD,
|
|
5676
|
+
Parser.RATIO_TO_REPORT,
|
|
5677
|
+
Parser.FILL_TIME_SERIES,
|
|
5678
|
+
Parser.FLOW_TO_STOCK,
|
|
5679
|
+
Parser.STOCK_TO_FLOW,
|
|
5680
|
+
Parser.TIMESHIFT,
|
|
5681
|
+
Parser.INNER_JOIN,
|
|
5682
|
+
Parser.LEFT_JOIN,
|
|
5683
|
+
Parser.CROSS_JOIN,
|
|
5684
|
+
Parser.FULL_JOIN,
|
|
5685
|
+
Parser.PERIOD_INDICATOR,
|
|
5686
|
+
Parser.TIME_AGG,
|
|
5687
|
+
Parser.CAST,
|
|
5688
|
+
Parser.CHECK_DATAPOINT,
|
|
5689
|
+
Parser.CHECK_HIERARCHY,
|
|
5690
|
+
Parser.INTEGER_CONSTANT,
|
|
5691
|
+
Parser.NUMBER_CONSTANT,
|
|
5692
|
+
Parser.BOOLEAN_CONSTANT,
|
|
5693
|
+
Parser.STRING_CONSTANT,
|
|
5694
|
+
Parser.IDENTIFIER,
|
|
5695
|
+
]:
|
|
4943
5696
|
self.enterOuterAlt(localctx, 1)
|
|
4944
5697
|
self.state = 612
|
|
4945
5698
|
self.expr(0)
|
|
@@ -4974,8 +5727,9 @@ class Parser(Parser):
|
|
|
4974
5727
|
|
|
4975
5728
|
class InstrAtomContext(StringOperatorsContext):
|
|
4976
5729
|
|
|
4977
|
-
def __init__(
|
|
4978
|
-
|
|
5730
|
+
def __init__(
|
|
5731
|
+
self, parser, ctx: ParserRuleContext
|
|
5732
|
+
): # actually a VtlParser.StringOperatorsContext
|
|
4979
5733
|
super().__init__(parser)
|
|
4980
5734
|
self.pattern = None # ExprContext
|
|
4981
5735
|
self.startParameter = None # OptionalExprContext
|
|
@@ -5017,8 +5771,9 @@ class Parser(Parser):
|
|
|
5017
5771
|
|
|
5018
5772
|
class UnaryStringFunctionContext(StringOperatorsContext):
|
|
5019
5773
|
|
|
5020
|
-
def __init__(
|
|
5021
|
-
|
|
5774
|
+
def __init__(
|
|
5775
|
+
self, parser, ctx: ParserRuleContext
|
|
5776
|
+
): # actually a VtlParser.StringOperatorsContext
|
|
5022
5777
|
super().__init__(parser)
|
|
5023
5778
|
self.op = None # Token
|
|
5024
5779
|
self.copyFrom(ctx)
|
|
@@ -5058,8 +5813,9 @@ class Parser(Parser):
|
|
|
5058
5813
|
|
|
5059
5814
|
class SubstrAtomContext(StringOperatorsContext):
|
|
5060
5815
|
|
|
5061
|
-
def __init__(
|
|
5062
|
-
|
|
5816
|
+
def __init__(
|
|
5817
|
+
self, parser, ctx: ParserRuleContext
|
|
5818
|
+
): # actually a VtlParser.StringOperatorsContext
|
|
5063
5819
|
super().__init__(parser)
|
|
5064
5820
|
self.startParameter = None # OptionalExprContext
|
|
5065
5821
|
self.endParameter = None # OptionalExprContext
|
|
@@ -5097,8 +5853,9 @@ class Parser(Parser):
|
|
|
5097
5853
|
|
|
5098
5854
|
class ReplaceAtomContext(StringOperatorsContext):
|
|
5099
5855
|
|
|
5100
|
-
def __init__(
|
|
5101
|
-
|
|
5856
|
+
def __init__(
|
|
5857
|
+
self, parser, ctx: ParserRuleContext
|
|
5858
|
+
): # actually a VtlParser.StringOperatorsContext
|
|
5102
5859
|
super().__init__(parser)
|
|
5103
5860
|
self.param = None # ExprContext
|
|
5104
5861
|
self.copyFrom(ctx)
|
|
@@ -5142,17 +5899,36 @@ class Parser(Parser):
|
|
|
5142
5899
|
self.state = 664
|
|
5143
5900
|
self._errHandler.sync(self)
|
|
5144
5901
|
token = self._input.LA(1)
|
|
5145
|
-
if token in [
|
|
5146
|
-
|
|
5902
|
+
if token in [
|
|
5903
|
+
Parser.LEN,
|
|
5904
|
+
Parser.TRIM,
|
|
5905
|
+
Parser.UCASE,
|
|
5906
|
+
Parser.LCASE,
|
|
5907
|
+
Parser.LTRIM,
|
|
5908
|
+
Parser.RTRIM,
|
|
5909
|
+
]:
|
|
5147
5910
|
localctx = Parser.UnaryStringFunctionContext(self, localctx)
|
|
5148
5911
|
self.enterOuterAlt(localctx, 1)
|
|
5149
5912
|
self.state = 616
|
|
5150
5913
|
localctx.op = self._input.LT(1)
|
|
5151
5914
|
_la = self._input.LA(1)
|
|
5152
|
-
if not (
|
|
5153
|
-
|
|
5154
|
-
|
|
5155
|
-
|
|
5915
|
+
if not (
|
|
5916
|
+
(
|
|
5917
|
+
(((_la - 81)) & ~0x3F) == 0
|
|
5918
|
+
and (
|
|
5919
|
+
(1 << (_la - 81))
|
|
5920
|
+
& (
|
|
5921
|
+
(1 << (Parser.LEN - 81))
|
|
5922
|
+
| (1 << (Parser.TRIM - 81))
|
|
5923
|
+
| (1 << (Parser.UCASE - 81))
|
|
5924
|
+
| (1 << (Parser.LCASE - 81))
|
|
5925
|
+
| (1 << (Parser.LTRIM - 81))
|
|
5926
|
+
| (1 << (Parser.RTRIM - 81))
|
|
5927
|
+
)
|
|
5928
|
+
)
|
|
5929
|
+
!= 0
|
|
5930
|
+
)
|
|
5931
|
+
):
|
|
5156
5932
|
localctx.op = self._errHandler.recoverInline(self)
|
|
5157
5933
|
else:
|
|
5158
5934
|
self._errHandler.reportMatch(self)
|
|
@@ -5287,8 +6063,9 @@ class Parser(Parser):
|
|
|
5287
6063
|
|
|
5288
6064
|
class ReplaceAtomComponentContext(StringOperatorsComponentContext):
|
|
5289
6065
|
|
|
5290
|
-
def __init__(
|
|
5291
|
-
|
|
6066
|
+
def __init__(
|
|
6067
|
+
self, parser, ctx: ParserRuleContext
|
|
6068
|
+
): # actually a VtlParser.StringOperatorsComponentContext
|
|
5292
6069
|
super().__init__(parser)
|
|
5293
6070
|
self.param = None # ExprComponentContext
|
|
5294
6071
|
self.copyFrom(ctx)
|
|
@@ -5325,8 +6102,9 @@ class Parser(Parser):
|
|
|
5325
6102
|
|
|
5326
6103
|
class UnaryStringFunctionComponentContext(StringOperatorsComponentContext):
|
|
5327
6104
|
|
|
5328
|
-
def __init__(
|
|
5329
|
-
|
|
6105
|
+
def __init__(
|
|
6106
|
+
self, parser, ctx: ParserRuleContext
|
|
6107
|
+
): # actually a VtlParser.StringOperatorsComponentContext
|
|
5330
6108
|
super().__init__(parser)
|
|
5331
6109
|
self.op = None # Token
|
|
5332
6110
|
self.copyFrom(ctx)
|
|
@@ -5366,8 +6144,9 @@ class Parser(Parser):
|
|
|
5366
6144
|
|
|
5367
6145
|
class SubstrAtomComponentContext(StringOperatorsComponentContext):
|
|
5368
6146
|
|
|
5369
|
-
def __init__(
|
|
5370
|
-
|
|
6147
|
+
def __init__(
|
|
6148
|
+
self, parser, ctx: ParserRuleContext
|
|
6149
|
+
): # actually a VtlParser.StringOperatorsComponentContext
|
|
5371
6150
|
super().__init__(parser)
|
|
5372
6151
|
self.startParameter = None # OptionalExprComponentContext
|
|
5373
6152
|
self.endParameter = None # OptionalExprComponentContext
|
|
@@ -5405,8 +6184,9 @@ class Parser(Parser):
|
|
|
5405
6184
|
|
|
5406
6185
|
class InstrAtomComponentContext(StringOperatorsComponentContext):
|
|
5407
6186
|
|
|
5408
|
-
def __init__(
|
|
5409
|
-
|
|
6187
|
+
def __init__(
|
|
6188
|
+
self, parser, ctx: ParserRuleContext
|
|
6189
|
+
): # actually a VtlParser.StringOperatorsComponentContext
|
|
5410
6190
|
super().__init__(parser)
|
|
5411
6191
|
self.pattern = None # ExprComponentContext
|
|
5412
6192
|
self.startParameter = None # OptionalExprComponentContext
|
|
@@ -5455,17 +6235,36 @@ class Parser(Parser):
|
|
|
5455
6235
|
self.state = 714
|
|
5456
6236
|
self._errHandler.sync(self)
|
|
5457
6237
|
token = self._input.LA(1)
|
|
5458
|
-
if token in [
|
|
5459
|
-
|
|
6238
|
+
if token in [
|
|
6239
|
+
Parser.LEN,
|
|
6240
|
+
Parser.TRIM,
|
|
6241
|
+
Parser.UCASE,
|
|
6242
|
+
Parser.LCASE,
|
|
6243
|
+
Parser.LTRIM,
|
|
6244
|
+
Parser.RTRIM,
|
|
6245
|
+
]:
|
|
5460
6246
|
localctx = Parser.UnaryStringFunctionComponentContext(self, localctx)
|
|
5461
6247
|
self.enterOuterAlt(localctx, 1)
|
|
5462
6248
|
self.state = 666
|
|
5463
6249
|
localctx.op = self._input.LT(1)
|
|
5464
6250
|
_la = self._input.LA(1)
|
|
5465
|
-
if not (
|
|
5466
|
-
|
|
5467
|
-
|
|
5468
|
-
|
|
6251
|
+
if not (
|
|
6252
|
+
(
|
|
6253
|
+
(((_la - 81)) & ~0x3F) == 0
|
|
6254
|
+
and (
|
|
6255
|
+
(1 << (_la - 81))
|
|
6256
|
+
& (
|
|
6257
|
+
(1 << (Parser.LEN - 81))
|
|
6258
|
+
| (1 << (Parser.TRIM - 81))
|
|
6259
|
+
| (1 << (Parser.UCASE - 81))
|
|
6260
|
+
| (1 << (Parser.LCASE - 81))
|
|
6261
|
+
| (1 << (Parser.LTRIM - 81))
|
|
6262
|
+
| (1 << (Parser.RTRIM - 81))
|
|
6263
|
+
)
|
|
6264
|
+
)
|
|
6265
|
+
!= 0
|
|
6266
|
+
)
|
|
6267
|
+
):
|
|
5469
6268
|
localctx.op = self._errHandler.recoverInline(self)
|
|
5470
6269
|
else:
|
|
5471
6270
|
self._errHandler.reportMatch(self)
|
|
@@ -5600,8 +6399,9 @@ class Parser(Parser):
|
|
|
5600
6399
|
|
|
5601
6400
|
class UnaryNumericContext(NumericOperatorsContext):
|
|
5602
6401
|
|
|
5603
|
-
def __init__(
|
|
5604
|
-
|
|
6402
|
+
def __init__(
|
|
6403
|
+
self, parser, ctx: ParserRuleContext
|
|
6404
|
+
): # actually a VtlParser.NumericOperatorsContext
|
|
5605
6405
|
super().__init__(parser)
|
|
5606
6406
|
self.op = None # Token
|
|
5607
6407
|
self.copyFrom(ctx)
|
|
@@ -5641,8 +6441,9 @@ class Parser(Parser):
|
|
|
5641
6441
|
|
|
5642
6442
|
class UnaryWithOptionalNumericContext(NumericOperatorsContext):
|
|
5643
6443
|
|
|
5644
|
-
def __init__(
|
|
5645
|
-
|
|
6444
|
+
def __init__(
|
|
6445
|
+
self, parser, ctx: ParserRuleContext
|
|
6446
|
+
): # actually a VtlParser.NumericOperatorsContext
|
|
5646
6447
|
super().__init__(parser)
|
|
5647
6448
|
self.op = None # Token
|
|
5648
6449
|
self.copyFrom(ctx)
|
|
@@ -5676,8 +6477,9 @@ class Parser(Parser):
|
|
|
5676
6477
|
|
|
5677
6478
|
class BinaryNumericContext(NumericOperatorsContext):
|
|
5678
6479
|
|
|
5679
|
-
def __init__(
|
|
5680
|
-
|
|
6480
|
+
def __init__(
|
|
6481
|
+
self, parser, ctx: ParserRuleContext
|
|
6482
|
+
): # actually a VtlParser.NumericOperatorsContext
|
|
5681
6483
|
super().__init__(parser)
|
|
5682
6484
|
self.op = None # Token
|
|
5683
6485
|
self.left = None # ExprContext
|
|
@@ -5729,10 +6531,23 @@ class Parser(Parser):
|
|
|
5729
6531
|
self.state = 716
|
|
5730
6532
|
localctx.op = self._input.LT(1)
|
|
5731
6533
|
_la = self._input.LA(1)
|
|
5732
|
-
if not (
|
|
5733
|
-
|
|
5734
|
-
|
|
5735
|
-
|
|
6534
|
+
if not (
|
|
6535
|
+
(
|
|
6536
|
+
(((_la - 73)) & ~0x3F) == 0
|
|
6537
|
+
and (
|
|
6538
|
+
(1 << (_la - 73))
|
|
6539
|
+
& (
|
|
6540
|
+
(1 << (Parser.ABS - 73))
|
|
6541
|
+
| (1 << (Parser.LN - 73))
|
|
6542
|
+
| (1 << (Parser.EXP - 73))
|
|
6543
|
+
| (1 << (Parser.CEIL - 73))
|
|
6544
|
+
| (1 << (Parser.FLOOR - 73))
|
|
6545
|
+
| (1 << (Parser.SQRT - 73))
|
|
6546
|
+
)
|
|
6547
|
+
)
|
|
6548
|
+
!= 0
|
|
6549
|
+
)
|
|
6550
|
+
):
|
|
5736
6551
|
localctx.op = self._errHandler.recoverInline(self)
|
|
5737
6552
|
else:
|
|
5738
6553
|
self._errHandler.reportMatch(self)
|
|
@@ -5777,9 +6592,20 @@ class Parser(Parser):
|
|
|
5777
6592
|
self.state = 730
|
|
5778
6593
|
localctx.op = self._input.LT(1)
|
|
5779
6594
|
_la = self._input.LA(1)
|
|
5780
|
-
if not (
|
|
5781
|
-
|
|
5782
|
-
|
|
6595
|
+
if not (
|
|
6596
|
+
(
|
|
6597
|
+
(((_la - 76)) & ~0x3F) == 0
|
|
6598
|
+
and (
|
|
6599
|
+
(1 << (_la - 76))
|
|
6600
|
+
& (
|
|
6601
|
+
(1 << (Parser.LOG - 76))
|
|
6602
|
+
| (1 << (Parser.POWER - 76))
|
|
6603
|
+
| (1 << (Parser.MOD - 76))
|
|
6604
|
+
)
|
|
6605
|
+
)
|
|
6606
|
+
!= 0
|
|
6607
|
+
)
|
|
6608
|
+
):
|
|
5783
6609
|
localctx.op = self._errHandler.recoverInline(self)
|
|
5784
6610
|
else:
|
|
5785
6611
|
self._errHandler.reportMatch(self)
|
|
@@ -5820,8 +6646,9 @@ class Parser(Parser):
|
|
|
5820
6646
|
|
|
5821
6647
|
class UnaryNumericComponentContext(NumericOperatorsComponentContext):
|
|
5822
6648
|
|
|
5823
|
-
def __init__(
|
|
5824
|
-
|
|
6649
|
+
def __init__(
|
|
6650
|
+
self, parser, ctx: ParserRuleContext
|
|
6651
|
+
): # actually a VtlParser.NumericOperatorsComponentContext
|
|
5825
6652
|
super().__init__(parser)
|
|
5826
6653
|
self.op = None # Token
|
|
5827
6654
|
self.copyFrom(ctx)
|
|
@@ -5861,8 +6688,9 @@ class Parser(Parser):
|
|
|
5861
6688
|
|
|
5862
6689
|
class BinaryNumericComponentContext(NumericOperatorsComponentContext):
|
|
5863
6690
|
|
|
5864
|
-
def __init__(
|
|
5865
|
-
|
|
6691
|
+
def __init__(
|
|
6692
|
+
self, parser, ctx: ParserRuleContext
|
|
6693
|
+
): # actually a VtlParser.NumericOperatorsComponentContext
|
|
5866
6694
|
super().__init__(parser)
|
|
5867
6695
|
self.op = None # Token
|
|
5868
6696
|
self.left = None # ExprComponentContext
|
|
@@ -5901,8 +6729,9 @@ class Parser(Parser):
|
|
|
5901
6729
|
|
|
5902
6730
|
class UnaryWithOptionalNumericComponentContext(NumericOperatorsComponentContext):
|
|
5903
6731
|
|
|
5904
|
-
def __init__(
|
|
5905
|
-
|
|
6732
|
+
def __init__(
|
|
6733
|
+
self, parser, ctx: ParserRuleContext
|
|
6734
|
+
): # actually a VtlParser.NumericOperatorsComponentContext
|
|
5906
6735
|
super().__init__(parser)
|
|
5907
6736
|
self.op = None # Token
|
|
5908
6737
|
self.copyFrom(ctx)
|
|
@@ -5949,10 +6778,23 @@ class Parser(Parser):
|
|
|
5949
6778
|
self.state = 739
|
|
5950
6779
|
localctx.op = self._input.LT(1)
|
|
5951
6780
|
_la = self._input.LA(1)
|
|
5952
|
-
if not (
|
|
5953
|
-
|
|
5954
|
-
|
|
5955
|
-
|
|
6781
|
+
if not (
|
|
6782
|
+
(
|
|
6783
|
+
(((_la - 73)) & ~0x3F) == 0
|
|
6784
|
+
and (
|
|
6785
|
+
(1 << (_la - 73))
|
|
6786
|
+
& (
|
|
6787
|
+
(1 << (Parser.ABS - 73))
|
|
6788
|
+
| (1 << (Parser.LN - 73))
|
|
6789
|
+
| (1 << (Parser.EXP - 73))
|
|
6790
|
+
| (1 << (Parser.CEIL - 73))
|
|
6791
|
+
| (1 << (Parser.FLOOR - 73))
|
|
6792
|
+
| (1 << (Parser.SQRT - 73))
|
|
6793
|
+
)
|
|
6794
|
+
)
|
|
6795
|
+
!= 0
|
|
6796
|
+
)
|
|
6797
|
+
):
|
|
5956
6798
|
localctx.op = self._errHandler.recoverInline(self)
|
|
5957
6799
|
else:
|
|
5958
6800
|
self._errHandler.reportMatch(self)
|
|
@@ -5997,9 +6839,20 @@ class Parser(Parser):
|
|
|
5997
6839
|
self.state = 753
|
|
5998
6840
|
localctx.op = self._input.LT(1)
|
|
5999
6841
|
_la = self._input.LA(1)
|
|
6000
|
-
if not (
|
|
6001
|
-
|
|
6002
|
-
|
|
6842
|
+
if not (
|
|
6843
|
+
(
|
|
6844
|
+
(((_la - 76)) & ~0x3F) == 0
|
|
6845
|
+
and (
|
|
6846
|
+
(1 << (_la - 76))
|
|
6847
|
+
& (
|
|
6848
|
+
(1 << (Parser.LOG - 76))
|
|
6849
|
+
| (1 << (Parser.POWER - 76))
|
|
6850
|
+
| (1 << (Parser.MOD - 76))
|
|
6851
|
+
)
|
|
6852
|
+
)
|
|
6853
|
+
!= 0
|
|
6854
|
+
)
|
|
6855
|
+
):
|
|
6003
6856
|
localctx.op = self._errHandler.recoverInline(self)
|
|
6004
6857
|
else:
|
|
6005
6858
|
self._errHandler.reportMatch(self)
|
|
@@ -6040,8 +6893,9 @@ class Parser(Parser):
|
|
|
6040
6893
|
|
|
6041
6894
|
class BetweenAtomContext(ComparisonOperatorsContext):
|
|
6042
6895
|
|
|
6043
|
-
def __init__(
|
|
6044
|
-
|
|
6896
|
+
def __init__(
|
|
6897
|
+
self, parser, ctx: ParserRuleContext
|
|
6898
|
+
): # actually a VtlParser.ComparisonOperatorsContext
|
|
6045
6899
|
super().__init__(parser)
|
|
6046
6900
|
self.op = None # ExprContext
|
|
6047
6901
|
self.from_ = None # ExprContext
|
|
@@ -6077,8 +6931,9 @@ class Parser(Parser):
|
|
|
6077
6931
|
|
|
6078
6932
|
class CharsetMatchAtomContext(ComparisonOperatorsContext):
|
|
6079
6933
|
|
|
6080
|
-
def __init__(
|
|
6081
|
-
|
|
6934
|
+
def __init__(
|
|
6935
|
+
self, parser, ctx: ParserRuleContext
|
|
6936
|
+
): # actually a VtlParser.ComparisonOperatorsContext
|
|
6082
6937
|
super().__init__(parser)
|
|
6083
6938
|
self.op = None # ExprContext
|
|
6084
6939
|
self.pattern = None # ExprContext
|
|
@@ -6110,8 +6965,9 @@ class Parser(Parser):
|
|
|
6110
6965
|
|
|
6111
6966
|
class IsNullAtomContext(ComparisonOperatorsContext):
|
|
6112
6967
|
|
|
6113
|
-
def __init__(
|
|
6114
|
-
|
|
6968
|
+
def __init__(
|
|
6969
|
+
self, parser, ctx: ParserRuleContext
|
|
6970
|
+
): # actually a VtlParser.ComparisonOperatorsContext
|
|
6115
6971
|
super().__init__(parser)
|
|
6116
6972
|
self.copyFrom(ctx)
|
|
6117
6973
|
|
|
@@ -6135,8 +6991,9 @@ class Parser(Parser):
|
|
|
6135
6991
|
|
|
6136
6992
|
class ExistInAtomContext(ComparisonOperatorsContext):
|
|
6137
6993
|
|
|
6138
|
-
def __init__(
|
|
6139
|
-
|
|
6994
|
+
def __init__(
|
|
6995
|
+
self, parser, ctx: ParserRuleContext
|
|
6996
|
+
): # actually a VtlParser.ComparisonOperatorsContext
|
|
6140
6997
|
super().__init__(parser)
|
|
6141
6998
|
self.left = None # ExprContext
|
|
6142
6999
|
self.right = None # ExprContext
|
|
@@ -6279,8 +7136,9 @@ class Parser(Parser):
|
|
|
6279
7136
|
|
|
6280
7137
|
class IsNullAtomComponentContext(ComparisonOperatorsComponentContext):
|
|
6281
7138
|
|
|
6282
|
-
def __init__(
|
|
6283
|
-
|
|
7139
|
+
def __init__(
|
|
7140
|
+
self, parser, ctx: ParserRuleContext
|
|
7141
|
+
): # actually a VtlParser.ComparisonOperatorsComponentContext
|
|
6284
7142
|
super().__init__(parser)
|
|
6285
7143
|
self.copyFrom(ctx)
|
|
6286
7144
|
|
|
@@ -6304,8 +7162,9 @@ class Parser(Parser):
|
|
|
6304
7162
|
|
|
6305
7163
|
class CharsetMatchAtomComponentContext(ComparisonOperatorsComponentContext):
|
|
6306
7164
|
|
|
6307
|
-
def __init__(
|
|
6308
|
-
|
|
7165
|
+
def __init__(
|
|
7166
|
+
self, parser, ctx: ParserRuleContext
|
|
7167
|
+
): # actually a VtlParser.ComparisonOperatorsComponentContext
|
|
6309
7168
|
super().__init__(parser)
|
|
6310
7169
|
self.op = None # ExprComponentContext
|
|
6311
7170
|
self.pattern = None # ExprComponentContext
|
|
@@ -6337,8 +7196,9 @@ class Parser(Parser):
|
|
|
6337
7196
|
|
|
6338
7197
|
class BetweenAtomComponentContext(ComparisonOperatorsComponentContext):
|
|
6339
7198
|
|
|
6340
|
-
def __init__(
|
|
6341
|
-
|
|
7199
|
+
def __init__(
|
|
7200
|
+
self, parser, ctx: ParserRuleContext
|
|
7201
|
+
): # actually a VtlParser.ComparisonOperatorsComponentContext
|
|
6342
7202
|
super().__init__(parser)
|
|
6343
7203
|
self.op = None # ExprComponentContext
|
|
6344
7204
|
self.from_ = None # ExprComponentContext
|
|
@@ -6453,8 +7313,9 @@ class Parser(Parser):
|
|
|
6453
7313
|
|
|
6454
7314
|
class FlowAtomContext(TimeOperatorsContext):
|
|
6455
7315
|
|
|
6456
|
-
def __init__(
|
|
6457
|
-
|
|
7316
|
+
def __init__(
|
|
7317
|
+
self, parser, ctx: ParserRuleContext
|
|
7318
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6458
7319
|
super().__init__(parser)
|
|
6459
7320
|
self.op = None # Token
|
|
6460
7321
|
self.copyFrom(ctx)
|
|
@@ -6482,8 +7343,9 @@ class Parser(Parser):
|
|
|
6482
7343
|
|
|
6483
7344
|
class TimeShiftAtomContext(TimeOperatorsContext):
|
|
6484
7345
|
|
|
6485
|
-
def __init__(
|
|
6486
|
-
|
|
7346
|
+
def __init__(
|
|
7347
|
+
self, parser, ctx: ParserRuleContext
|
|
7348
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6487
7349
|
super().__init__(parser)
|
|
6488
7350
|
self.copyFrom(ctx)
|
|
6489
7351
|
|
|
@@ -6513,8 +7375,9 @@ class Parser(Parser):
|
|
|
6513
7375
|
|
|
6514
7376
|
class TimeAggAtomContext(TimeOperatorsContext):
|
|
6515
7377
|
|
|
6516
|
-
def __init__(
|
|
6517
|
-
|
|
7378
|
+
def __init__(
|
|
7379
|
+
self, parser, ctx: ParserRuleContext
|
|
7380
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6518
7381
|
super().__init__(parser)
|
|
6519
7382
|
self.periodIndTo = None # Token
|
|
6520
7383
|
self.periodIndFrom = None # Token
|
|
@@ -6562,8 +7425,9 @@ class Parser(Parser):
|
|
|
6562
7425
|
|
|
6563
7426
|
class CurrentDateAtomContext(TimeOperatorsContext):
|
|
6564
7427
|
|
|
6565
|
-
def __init__(
|
|
6566
|
-
|
|
7428
|
+
def __init__(
|
|
7429
|
+
self, parser, ctx: ParserRuleContext
|
|
7430
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6567
7431
|
super().__init__(parser)
|
|
6568
7432
|
self.copyFrom(ctx)
|
|
6569
7433
|
|
|
@@ -6584,8 +7448,9 @@ class Parser(Parser):
|
|
|
6584
7448
|
|
|
6585
7449
|
class PeriodAtomContext(TimeOperatorsContext):
|
|
6586
7450
|
|
|
6587
|
-
def __init__(
|
|
6588
|
-
|
|
7451
|
+
def __init__(
|
|
7452
|
+
self, parser, ctx: ParserRuleContext
|
|
7453
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6589
7454
|
super().__init__(parser)
|
|
6590
7455
|
self.copyFrom(ctx)
|
|
6591
7456
|
|
|
@@ -6609,8 +7474,9 @@ class Parser(Parser):
|
|
|
6609
7474
|
|
|
6610
7475
|
class FillTimeAtomContext(TimeOperatorsContext):
|
|
6611
7476
|
|
|
6612
|
-
def __init__(
|
|
6613
|
-
|
|
7477
|
+
def __init__(
|
|
7478
|
+
self, parser, ctx: ParserRuleContext
|
|
7479
|
+
): # actually a VtlParser.TimeOperatorsContext
|
|
6614
7480
|
super().__init__(parser)
|
|
6615
7481
|
self.copyFrom(ctx)
|
|
6616
7482
|
|
|
@@ -6660,68 +7526,116 @@ class Parser(Parser):
|
|
|
6660
7526
|
self.state = 822
|
|
6661
7527
|
self._errHandler.sync(self)
|
|
6662
7528
|
_la = self._input.LA(1)
|
|
6663
|
-
if (
|
|
6664
|
-
|
|
6665
|
-
|
|
6666
|
-
|
|
6667
|
-
|
|
6668
|
-
|
|
6669
|
-
|
|
6670
|
-
1 << Parser.
|
|
6671
|
-
|
|
6672
|
-
|
|
6673
|
-
|
|
6674
|
-
|
|
6675
|
-
|
|
6676
|
-
|
|
6677
|
-
|
|
6678
|
-
|
|
6679
|
-
|
|
6680
|
-
|
|
6681
|
-
|
|
6682
|
-
|
|
6683
|
-
|
|
6684
|
-
|
|
6685
|
-
|
|
6686
|
-
|
|
6687
|
-
|
|
6688
|
-
|
|
6689
|
-
|
|
6690
|
-
|
|
6691
|
-
|
|
6692
|
-
|
|
6693
|
-
|
|
6694
|
-
|
|
6695
|
-
|
|
6696
|
-
|
|
6697
|
-
|
|
6698
|
-
|
|
6699
|
-
|
|
6700
|
-
|
|
6701
|
-
|
|
6702
|
-
|
|
6703
|
-
|
|
6704
|
-
|
|
6705
|
-
|
|
6706
|
-
1 << (Parser.
|
|
6707
|
-
1 << (Parser.
|
|
6708
|
-
1 << (Parser.
|
|
6709
|
-
1 << (Parser.
|
|
6710
|
-
1 << (Parser.
|
|
6711
|
-
1 << (Parser.
|
|
6712
|
-
1 << (Parser.
|
|
6713
|
-
1 << (Parser.
|
|
6714
|
-
1 << (Parser.
|
|
6715
|
-
1 << (Parser.
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
|
|
6719
|
-
1 << (Parser.
|
|
6720
|
-
1 << (Parser.
|
|
6721
|
-
1 << (Parser.
|
|
6722
|
-
1 << (Parser.
|
|
6723
|
-
1 << (Parser.
|
|
6724
|
-
1 << (Parser.
|
|
7529
|
+
if (
|
|
7530
|
+
(
|
|
7531
|
+
((_la) & ~0x3F) == 0
|
|
7532
|
+
and (
|
|
7533
|
+
(1 << _la)
|
|
7534
|
+
& (
|
|
7535
|
+
(1 << Parser.LPAREN)
|
|
7536
|
+
| (1 << Parser.PLUS)
|
|
7537
|
+
| (1 << Parser.MINUS)
|
|
7538
|
+
| (1 << Parser.EVAL)
|
|
7539
|
+
| (1 << Parser.IF)
|
|
7540
|
+
| (1 << Parser.CURRENT_DATE)
|
|
7541
|
+
| (1 << Parser.NOT)
|
|
7542
|
+
| (1 << Parser.BETWEEN)
|
|
7543
|
+
| (1 << Parser.NULL_CONSTANT)
|
|
7544
|
+
| (1 << Parser.ISNULL)
|
|
7545
|
+
| (1 << Parser.UNION)
|
|
7546
|
+
| (1 << Parser.SYMDIFF)
|
|
7547
|
+
| (1 << Parser.INTERSECT)
|
|
7548
|
+
| (1 << Parser.CHECK)
|
|
7549
|
+
| (1 << Parser.EXISTS_IN)
|
|
7550
|
+
)
|
|
7551
|
+
)
|
|
7552
|
+
!= 0
|
|
7553
|
+
)
|
|
7554
|
+
or (
|
|
7555
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
7556
|
+
and (
|
|
7557
|
+
(1 << (_la - 68))
|
|
7558
|
+
& (
|
|
7559
|
+
(1 << (Parser.MIN - 68))
|
|
7560
|
+
| (1 << (Parser.MAX - 68))
|
|
7561
|
+
| (1 << (Parser.ABS - 68))
|
|
7562
|
+
| (1 << (Parser.LN - 68))
|
|
7563
|
+
| (1 << (Parser.LOG - 68))
|
|
7564
|
+
| (1 << (Parser.TRUNC - 68))
|
|
7565
|
+
| (1 << (Parser.ROUND - 68))
|
|
7566
|
+
| (1 << (Parser.POWER - 68))
|
|
7567
|
+
| (1 << (Parser.MOD - 68))
|
|
7568
|
+
| (1 << (Parser.LEN - 68))
|
|
7569
|
+
| (1 << (Parser.TRIM - 68))
|
|
7570
|
+
| (1 << (Parser.UCASE - 68))
|
|
7571
|
+
| (1 << (Parser.LCASE - 68))
|
|
7572
|
+
| (1 << (Parser.SUBSTR - 68))
|
|
7573
|
+
| (1 << (Parser.SUM - 68))
|
|
7574
|
+
| (1 << (Parser.AVG - 68))
|
|
7575
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
7576
|
+
| (1 << (Parser.COUNT - 68))
|
|
7577
|
+
| (1 << (Parser.EXP - 68))
|
|
7578
|
+
| (1 << (Parser.CHARSET_MATCH - 68))
|
|
7579
|
+
| (1 << (Parser.NVL - 68))
|
|
7580
|
+
| (1 << (Parser.HIERARCHY - 68))
|
|
7581
|
+
| (1 << (Parser.LTRIM - 68))
|
|
7582
|
+
| (1 << (Parser.RTRIM - 68))
|
|
7583
|
+
| (1 << (Parser.INSTR - 68))
|
|
7584
|
+
| (1 << (Parser.REPLACE - 68))
|
|
7585
|
+
| (1 << (Parser.CEIL - 68))
|
|
7586
|
+
| (1 << (Parser.FLOOR - 68))
|
|
7587
|
+
| (1 << (Parser.SQRT - 68))
|
|
7588
|
+
| (1 << (Parser.SETDIFF - 68))
|
|
7589
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
7590
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
7591
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
7592
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
7593
|
+
)
|
|
7594
|
+
)
|
|
7595
|
+
!= 0
|
|
7596
|
+
)
|
|
7597
|
+
or (
|
|
7598
|
+
(((_la - 135)) & ~0x3F) == 0
|
|
7599
|
+
and (
|
|
7600
|
+
(1 << (_la - 135))
|
|
7601
|
+
& (
|
|
7602
|
+
(1 << (Parser.FIRST_VALUE - 135))
|
|
7603
|
+
| (1 << (Parser.LAST_VALUE - 135))
|
|
7604
|
+
| (1 << (Parser.LAG - 135))
|
|
7605
|
+
| (1 << (Parser.LEAD - 135))
|
|
7606
|
+
| (1 << (Parser.RATIO_TO_REPORT - 135))
|
|
7607
|
+
| (1 << (Parser.FILL_TIME_SERIES - 135))
|
|
7608
|
+
| (1 << (Parser.FLOW_TO_STOCK - 135))
|
|
7609
|
+
| (1 << (Parser.STOCK_TO_FLOW - 135))
|
|
7610
|
+
| (1 << (Parser.TIMESHIFT - 135))
|
|
7611
|
+
| (1 << (Parser.INNER_JOIN - 135))
|
|
7612
|
+
| (1 << (Parser.LEFT_JOIN - 135))
|
|
7613
|
+
| (1 << (Parser.CROSS_JOIN - 135))
|
|
7614
|
+
| (1 << (Parser.FULL_JOIN - 135))
|
|
7615
|
+
| (1 << (Parser.PERIOD_INDICATOR - 135))
|
|
7616
|
+
)
|
|
7617
|
+
)
|
|
7618
|
+
!= 0
|
|
7619
|
+
)
|
|
7620
|
+
or (
|
|
7621
|
+
(((_la - 199)) & ~0x3F) == 0
|
|
7622
|
+
and (
|
|
7623
|
+
(1 << (_la - 199))
|
|
7624
|
+
& (
|
|
7625
|
+
(1 << (Parser.TIME_AGG - 199))
|
|
7626
|
+
| (1 << (Parser.CAST - 199))
|
|
7627
|
+
| (1 << (Parser.CHECK_DATAPOINT - 199))
|
|
7628
|
+
| (1 << (Parser.CHECK_HIERARCHY - 199))
|
|
7629
|
+
| (1 << (Parser.INTEGER_CONSTANT - 199))
|
|
7630
|
+
| (1 << (Parser.NUMBER_CONSTANT - 199))
|
|
7631
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 199))
|
|
7632
|
+
| (1 << (Parser.STRING_CONSTANT - 199))
|
|
7633
|
+
| (1 << (Parser.IDENTIFIER - 199))
|
|
7634
|
+
)
|
|
7635
|
+
)
|
|
7636
|
+
!= 0
|
|
7637
|
+
)
|
|
7638
|
+
):
|
|
6725
7639
|
self.state = 821
|
|
6726
7640
|
self.expr(0)
|
|
6727
7641
|
|
|
@@ -6873,8 +7787,9 @@ class Parser(Parser):
|
|
|
6873
7787
|
|
|
6874
7788
|
class PeriodAtomComponentContext(TimeOperatorsComponentContext):
|
|
6875
7789
|
|
|
6876
|
-
def __init__(
|
|
6877
|
-
|
|
7790
|
+
def __init__(
|
|
7791
|
+
self, parser, ctx: ParserRuleContext
|
|
7792
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
6878
7793
|
super().__init__(parser)
|
|
6879
7794
|
self.copyFrom(ctx)
|
|
6880
7795
|
|
|
@@ -6898,8 +7813,9 @@ class Parser(Parser):
|
|
|
6898
7813
|
|
|
6899
7814
|
class TimeShiftAtomComponentContext(TimeOperatorsComponentContext):
|
|
6900
7815
|
|
|
6901
|
-
def __init__(
|
|
6902
|
-
|
|
7816
|
+
def __init__(
|
|
7817
|
+
self, parser, ctx: ParserRuleContext
|
|
7818
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
6903
7819
|
super().__init__(parser)
|
|
6904
7820
|
self.copyFrom(ctx)
|
|
6905
7821
|
|
|
@@ -6929,8 +7845,9 @@ class Parser(Parser):
|
|
|
6929
7845
|
|
|
6930
7846
|
class TimeAggAtomComponentContext(TimeOperatorsComponentContext):
|
|
6931
7847
|
|
|
6932
|
-
def __init__(
|
|
6933
|
-
|
|
7848
|
+
def __init__(
|
|
7849
|
+
self, parser, ctx: ParserRuleContext
|
|
7850
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
6934
7851
|
super().__init__(parser)
|
|
6935
7852
|
self.periodIndTo = None # Token
|
|
6936
7853
|
self.periodIndFrom = None # Token
|
|
@@ -6978,8 +7895,9 @@ class Parser(Parser):
|
|
|
6978
7895
|
|
|
6979
7896
|
class CurrentDateAtomComponentContext(TimeOperatorsComponentContext):
|
|
6980
7897
|
|
|
6981
|
-
def __init__(
|
|
6982
|
-
|
|
7898
|
+
def __init__(
|
|
7899
|
+
self, parser, ctx: ParserRuleContext
|
|
7900
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
6983
7901
|
super().__init__(parser)
|
|
6984
7902
|
self.copyFrom(ctx)
|
|
6985
7903
|
|
|
@@ -7000,8 +7918,9 @@ class Parser(Parser):
|
|
|
7000
7918
|
|
|
7001
7919
|
class FlowAtomComponentContext(TimeOperatorsComponentContext):
|
|
7002
7920
|
|
|
7003
|
-
def __init__(
|
|
7004
|
-
|
|
7921
|
+
def __init__(
|
|
7922
|
+
self, parser, ctx: ParserRuleContext
|
|
7923
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
7005
7924
|
super().__init__(parser)
|
|
7006
7925
|
self.op = None # Token
|
|
7007
7926
|
self.copyFrom(ctx)
|
|
@@ -7029,8 +7948,9 @@ class Parser(Parser):
|
|
|
7029
7948
|
|
|
7030
7949
|
class FillTimeAtomComponentContext(TimeOperatorsComponentContext):
|
|
7031
7950
|
|
|
7032
|
-
def __init__(
|
|
7033
|
-
|
|
7951
|
+
def __init__(
|
|
7952
|
+
self, parser, ctx: ParserRuleContext
|
|
7953
|
+
): # actually a VtlParser.TimeOperatorsComponentContext
|
|
7034
7954
|
super().__init__(parser)
|
|
7035
7955
|
self.copyFrom(ctx)
|
|
7036
7956
|
|
|
@@ -7080,45 +8000,104 @@ class Parser(Parser):
|
|
|
7080
8000
|
self.state = 870
|
|
7081
8001
|
self._errHandler.sync(self)
|
|
7082
8002
|
_la = self._input.LA(1)
|
|
7083
|
-
if (
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7095
|
-
|
|
7096
|
-
|
|
7097
|
-
|
|
7098
|
-
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
|
|
7103
|
-
|
|
7104
|
-
|
|
7105
|
-
|
|
7106
|
-
|
|
7107
|
-
|
|
7108
|
-
|
|
7109
|
-
1 << (Parser.
|
|
7110
|
-
1 << (Parser.
|
|
7111
|
-
1 << (Parser.
|
|
7112
|
-
1 << (Parser.
|
|
7113
|
-
1 << (Parser.
|
|
7114
|
-
1 << (Parser.
|
|
7115
|
-
|
|
7116
|
-
|
|
7117
|
-
|
|
7118
|
-
1 << (Parser.
|
|
7119
|
-
1 << (Parser.
|
|
7120
|
-
1 << (Parser.
|
|
7121
|
-
1 << (Parser.
|
|
8003
|
+
if (
|
|
8004
|
+
(
|
|
8005
|
+
((_la) & ~0x3F) == 0
|
|
8006
|
+
and (
|
|
8007
|
+
(1 << _la)
|
|
8008
|
+
& (
|
|
8009
|
+
(1 << Parser.LPAREN)
|
|
8010
|
+
| (1 << Parser.PLUS)
|
|
8011
|
+
| (1 << Parser.MINUS)
|
|
8012
|
+
| (1 << Parser.EVAL)
|
|
8013
|
+
| (1 << Parser.IF)
|
|
8014
|
+
| (1 << Parser.CURRENT_DATE)
|
|
8015
|
+
| (1 << Parser.NOT)
|
|
8016
|
+
| (1 << Parser.BETWEEN)
|
|
8017
|
+
| (1 << Parser.NULL_CONSTANT)
|
|
8018
|
+
| (1 << Parser.ISNULL)
|
|
8019
|
+
)
|
|
8020
|
+
)
|
|
8021
|
+
!= 0
|
|
8022
|
+
)
|
|
8023
|
+
or (
|
|
8024
|
+
(((_la - 65)) & ~0x3F) == 0
|
|
8025
|
+
and (
|
|
8026
|
+
(1 << (_la - 65))
|
|
8027
|
+
& (
|
|
8028
|
+
(1 << (Parser.RANK - 65))
|
|
8029
|
+
| (1 << (Parser.MIN - 65))
|
|
8030
|
+
| (1 << (Parser.MAX - 65))
|
|
8031
|
+
| (1 << (Parser.ABS - 65))
|
|
8032
|
+
| (1 << (Parser.LN - 65))
|
|
8033
|
+
| (1 << (Parser.LOG - 65))
|
|
8034
|
+
| (1 << (Parser.TRUNC - 65))
|
|
8035
|
+
| (1 << (Parser.ROUND - 65))
|
|
8036
|
+
| (1 << (Parser.POWER - 65))
|
|
8037
|
+
| (1 << (Parser.MOD - 65))
|
|
8038
|
+
| (1 << (Parser.LEN - 65))
|
|
8039
|
+
| (1 << (Parser.TRIM - 65))
|
|
8040
|
+
| (1 << (Parser.UCASE - 65))
|
|
8041
|
+
| (1 << (Parser.LCASE - 65))
|
|
8042
|
+
| (1 << (Parser.SUBSTR - 65))
|
|
8043
|
+
| (1 << (Parser.SUM - 65))
|
|
8044
|
+
| (1 << (Parser.AVG - 65))
|
|
8045
|
+
| (1 << (Parser.MEDIAN - 65))
|
|
8046
|
+
| (1 << (Parser.COUNT - 65))
|
|
8047
|
+
| (1 << (Parser.EXP - 65))
|
|
8048
|
+
| (1 << (Parser.CHARSET_MATCH - 65))
|
|
8049
|
+
| (1 << (Parser.NVL - 65))
|
|
8050
|
+
| (1 << (Parser.LTRIM - 65))
|
|
8051
|
+
| (1 << (Parser.RTRIM - 65))
|
|
8052
|
+
| (1 << (Parser.INSTR - 65))
|
|
8053
|
+
| (1 << (Parser.REPLACE - 65))
|
|
8054
|
+
| (1 << (Parser.CEIL - 65))
|
|
8055
|
+
| (1 << (Parser.FLOOR - 65))
|
|
8056
|
+
| (1 << (Parser.SQRT - 65))
|
|
8057
|
+
| (1 << (Parser.STDDEV_POP - 65))
|
|
8058
|
+
)
|
|
8059
|
+
)
|
|
8060
|
+
!= 0
|
|
8061
|
+
)
|
|
8062
|
+
or (
|
|
8063
|
+
(((_la - 129)) & ~0x3F) == 0
|
|
8064
|
+
and (
|
|
8065
|
+
(1 << (_la - 129))
|
|
8066
|
+
& (
|
|
8067
|
+
(1 << (Parser.STDDEV_SAMP - 129))
|
|
8068
|
+
| (1 << (Parser.VAR_POP - 129))
|
|
8069
|
+
| (1 << (Parser.VAR_SAMP - 129))
|
|
8070
|
+
| (1 << (Parser.FIRST_VALUE - 129))
|
|
8071
|
+
| (1 << (Parser.LAST_VALUE - 129))
|
|
8072
|
+
| (1 << (Parser.LAG - 129))
|
|
8073
|
+
| (1 << (Parser.LEAD - 129))
|
|
8074
|
+
| (1 << (Parser.RATIO_TO_REPORT - 129))
|
|
8075
|
+
| (1 << (Parser.FILL_TIME_SERIES - 129))
|
|
8076
|
+
| (1 << (Parser.FLOW_TO_STOCK - 129))
|
|
8077
|
+
| (1 << (Parser.STOCK_TO_FLOW - 129))
|
|
8078
|
+
| (1 << (Parser.TIMESHIFT - 129))
|
|
8079
|
+
)
|
|
8080
|
+
)
|
|
8081
|
+
!= 0
|
|
8082
|
+
)
|
|
8083
|
+
or (
|
|
8084
|
+
(((_la - 196)) & ~0x3F) == 0
|
|
8085
|
+
and (
|
|
8086
|
+
(1 << (_la - 196))
|
|
8087
|
+
& (
|
|
8088
|
+
(1 << (Parser.PERIOD_INDICATOR - 196))
|
|
8089
|
+
| (1 << (Parser.TIME_AGG - 196))
|
|
8090
|
+
| (1 << (Parser.CAST - 196))
|
|
8091
|
+
| (1 << (Parser.INTEGER_CONSTANT - 196))
|
|
8092
|
+
| (1 << (Parser.NUMBER_CONSTANT - 196))
|
|
8093
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 196))
|
|
8094
|
+
| (1 << (Parser.STRING_CONSTANT - 196))
|
|
8095
|
+
| (1 << (Parser.IDENTIFIER - 196))
|
|
8096
|
+
)
|
|
8097
|
+
)
|
|
8098
|
+
!= 0
|
|
8099
|
+
)
|
|
8100
|
+
):
|
|
7122
8101
|
self.state = 869
|
|
7123
8102
|
self.exprComponent(0)
|
|
7124
8103
|
|
|
@@ -7270,8 +8249,9 @@ class Parser(Parser):
|
|
|
7270
8249
|
|
|
7271
8250
|
class SetOrSYmDiffAtomContext(SetOperatorsContext):
|
|
7272
8251
|
|
|
7273
|
-
def __init__(
|
|
7274
|
-
|
|
8252
|
+
def __init__(
|
|
8253
|
+
self, parser, ctx: ParserRuleContext
|
|
8254
|
+
): # actually a VtlParser.SetOperatorsContext
|
|
7275
8255
|
super().__init__(parser)
|
|
7276
8256
|
self.op = None # Token
|
|
7277
8257
|
self.left = None # ExprContext
|
|
@@ -7307,8 +8287,9 @@ class Parser(Parser):
|
|
|
7307
8287
|
|
|
7308
8288
|
class IntersectAtomContext(SetOperatorsContext):
|
|
7309
8289
|
|
|
7310
|
-
def __init__(
|
|
7311
|
-
|
|
8290
|
+
def __init__(
|
|
8291
|
+
self, parser, ctx: ParserRuleContext
|
|
8292
|
+
): # actually a VtlParser.SetOperatorsContext
|
|
7312
8293
|
super().__init__(parser)
|
|
7313
8294
|
self.left = None # ExprContext
|
|
7314
8295
|
self.copyFrom(ctx)
|
|
@@ -7342,8 +8323,9 @@ class Parser(Parser):
|
|
|
7342
8323
|
|
|
7343
8324
|
class UnionAtomContext(SetOperatorsContext):
|
|
7344
8325
|
|
|
7345
|
-
def __init__(
|
|
7346
|
-
|
|
8326
|
+
def __init__(
|
|
8327
|
+
self, parser, ctx: ParserRuleContext
|
|
8328
|
+
): # actually a VtlParser.SetOperatorsContext
|
|
7347
8329
|
super().__init__(parser)
|
|
7348
8330
|
self.left = None # ExprContext
|
|
7349
8331
|
self.copyFrom(ctx)
|
|
@@ -7559,11 +8541,17 @@ class Parser(Parser):
|
|
|
7559
8541
|
self.state = 959
|
|
7560
8542
|
self._errHandler.sync(self)
|
|
7561
8543
|
_la = self._input.LA(1)
|
|
7562
|
-
if (((
|
|
7563
|
-
|
|
7564
|
-
|
|
7565
|
-
|
|
7566
|
-
|
|
8544
|
+
if (((_la - 213)) & ~0x3F) == 0 and (
|
|
8545
|
+
(1 << (_la - 213))
|
|
8546
|
+
& (
|
|
8547
|
+
(1 << (Parser.NON_NULL - 213))
|
|
8548
|
+
| (1 << (Parser.NON_ZERO - 213))
|
|
8549
|
+
| (1 << (Parser.PARTIAL_NULL - 213))
|
|
8550
|
+
| (1 << (Parser.PARTIAL_ZERO - 213))
|
|
8551
|
+
| (1 << (Parser.ALWAYS_NULL - 213))
|
|
8552
|
+
| (1 << (Parser.ALWAYS_ZERO - 213))
|
|
8553
|
+
)
|
|
8554
|
+
) != 0:
|
|
7567
8555
|
self.state = 958
|
|
7568
8556
|
self.validationMode()
|
|
7569
8557
|
|
|
@@ -7605,8 +8593,9 @@ class Parser(Parser):
|
|
|
7605
8593
|
|
|
7606
8594
|
class ValidateHRrulesetContext(ValidationOperatorsContext):
|
|
7607
8595
|
|
|
7608
|
-
def __init__(
|
|
7609
|
-
|
|
8596
|
+
def __init__(
|
|
8597
|
+
self, parser, ctx: ParserRuleContext
|
|
8598
|
+
): # actually a VtlParser.ValidationOperatorsContext
|
|
7610
8599
|
super().__init__(parser)
|
|
7611
8600
|
self.op = None # ExprContext
|
|
7612
8601
|
self.hrName = None # Token
|
|
@@ -7656,8 +8645,9 @@ class Parser(Parser):
|
|
|
7656
8645
|
|
|
7657
8646
|
class ValidateDPrulesetContext(ValidationOperatorsContext):
|
|
7658
8647
|
|
|
7659
|
-
def __init__(
|
|
7660
|
-
|
|
8648
|
+
def __init__(
|
|
8649
|
+
self, parser, ctx: ParserRuleContext
|
|
8650
|
+
): # actually a VtlParser.ValidationOperatorsContext
|
|
7661
8651
|
super().__init__(parser)
|
|
7662
8652
|
self.op = None # ExprContext
|
|
7663
8653
|
self.dpName = None # Token
|
|
@@ -7704,8 +8694,9 @@ class Parser(Parser):
|
|
|
7704
8694
|
|
|
7705
8695
|
class ValidationSimpleContext(ValidationOperatorsContext):
|
|
7706
8696
|
|
|
7707
|
-
def __init__(
|
|
7708
|
-
|
|
8697
|
+
def __init__(
|
|
8698
|
+
self, parser, ctx: ParserRuleContext
|
|
8699
|
+
): # actually a VtlParser.ValidationOperatorsContext
|
|
7709
8700
|
super().__init__(parser)
|
|
7710
8701
|
self.op = None # ExprContext
|
|
7711
8702
|
self.codeErr = None # ErCodeContext
|
|
@@ -7830,11 +8821,17 @@ class Parser(Parser):
|
|
|
7830
8821
|
self.state = 1003
|
|
7831
8822
|
self._errHandler.sync(self)
|
|
7832
8823
|
_la = self._input.LA(1)
|
|
7833
|
-
if (((
|
|
7834
|
-
|
|
7835
|
-
|
|
7836
|
-
|
|
7837
|
-
|
|
8824
|
+
if (((_la - 213)) & ~0x3F) == 0 and (
|
|
8825
|
+
(1 << (_la - 213))
|
|
8826
|
+
& (
|
|
8827
|
+
(1 << (Parser.NON_NULL - 213))
|
|
8828
|
+
| (1 << (Parser.NON_ZERO - 213))
|
|
8829
|
+
| (1 << (Parser.PARTIAL_NULL - 213))
|
|
8830
|
+
| (1 << (Parser.PARTIAL_ZERO - 213))
|
|
8831
|
+
| (1 << (Parser.ALWAYS_NULL - 213))
|
|
8832
|
+
| (1 << (Parser.ALWAYS_ZERO - 213))
|
|
8833
|
+
)
|
|
8834
|
+
) != 0:
|
|
7838
8835
|
self.state = 1002
|
|
7839
8836
|
self.validationMode()
|
|
7840
8837
|
|
|
@@ -7926,8 +8923,9 @@ class Parser(Parser):
|
|
|
7926
8923
|
|
|
7927
8924
|
class NvlAtomContext(ConditionalOperatorsContext):
|
|
7928
8925
|
|
|
7929
|
-
def __init__(
|
|
7930
|
-
|
|
8926
|
+
def __init__(
|
|
8927
|
+
self, parser, ctx: ParserRuleContext
|
|
8928
|
+
): # actually a VtlParser.ConditionalOperatorsContext
|
|
7931
8929
|
super().__init__(parser)
|
|
7932
8930
|
self.left = None # ExprContext
|
|
7933
8931
|
self.right = None # ExprContext
|
|
@@ -7998,8 +8996,9 @@ class Parser(Parser):
|
|
|
7998
8996
|
|
|
7999
8997
|
class NvlAtomComponentContext(ConditionalOperatorsComponentContext):
|
|
8000
8998
|
|
|
8001
|
-
def __init__(
|
|
8002
|
-
|
|
8999
|
+
def __init__(
|
|
9000
|
+
self, parser, ctx: ParserRuleContext
|
|
9001
|
+
): # actually a VtlParser.ConditionalOperatorsComponentContext
|
|
8003
9002
|
super().__init__(parser)
|
|
8004
9003
|
self.left = None # ExprComponentContext
|
|
8005
9004
|
self.right = None # ExprComponentContext
|
|
@@ -8070,8 +9069,9 @@ class Parser(Parser):
|
|
|
8070
9069
|
|
|
8071
9070
|
class AggrCompContext(AggrOperatorsContext):
|
|
8072
9071
|
|
|
8073
|
-
def __init__(
|
|
8074
|
-
|
|
9072
|
+
def __init__(
|
|
9073
|
+
self, parser, ctx: ParserRuleContext
|
|
9074
|
+
): # actually a VtlParser.AggrOperatorsContext
|
|
8075
9075
|
super().__init__(parser)
|
|
8076
9076
|
self.op = None # Token
|
|
8077
9077
|
self.copyFrom(ctx)
|
|
@@ -8123,8 +9123,9 @@ class Parser(Parser):
|
|
|
8123
9123
|
|
|
8124
9124
|
class CountAggrCompContext(AggrOperatorsContext):
|
|
8125
9125
|
|
|
8126
|
-
def __init__(
|
|
8127
|
-
|
|
9126
|
+
def __init__(
|
|
9127
|
+
self, parser, ctx: ParserRuleContext
|
|
9128
|
+
): # actually a VtlParser.AggrOperatorsContext
|
|
8128
9129
|
super().__init__(parser)
|
|
8129
9130
|
self.copyFrom(ctx)
|
|
8130
9131
|
|
|
@@ -8158,13 +9159,27 @@ class Parser(Parser):
|
|
|
8158
9159
|
self.state = 1046
|
|
8159
9160
|
localctx.op = self._input.LT(1)
|
|
8160
9161
|
_la = self._input.LA(1)
|
|
8161
|
-
if not (
|
|
8162
|
-
|
|
8163
|
-
|
|
8164
|
-
|
|
8165
|
-
|
|
8166
|
-
|
|
8167
|
-
1 << (Parser.
|
|
9162
|
+
if not (
|
|
9163
|
+
(
|
|
9164
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
9165
|
+
and (
|
|
9166
|
+
(1 << (_la - 68))
|
|
9167
|
+
& (
|
|
9168
|
+
(1 << (Parser.MIN - 68))
|
|
9169
|
+
| (1 << (Parser.MAX - 68))
|
|
9170
|
+
| (1 << (Parser.SUM - 68))
|
|
9171
|
+
| (1 << (Parser.AVG - 68))
|
|
9172
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
9173
|
+
| (1 << (Parser.COUNT - 68))
|
|
9174
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
9175
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
9176
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
9177
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
9178
|
+
)
|
|
9179
|
+
)
|
|
9180
|
+
!= 0
|
|
9181
|
+
)
|
|
9182
|
+
):
|
|
8168
9183
|
localctx.op = self._errHandler.recoverInline(self)
|
|
8169
9184
|
else:
|
|
8170
9185
|
self._errHandler.reportMatch(self)
|
|
@@ -8188,7 +9203,6 @@ class Parser(Parser):
|
|
|
8188
9203
|
self.match(Parser.RPAREN)
|
|
8189
9204
|
pass
|
|
8190
9205
|
|
|
8191
|
-
|
|
8192
9206
|
except RecognitionException as re:
|
|
8193
9207
|
localctx.exception = re
|
|
8194
9208
|
self._errHandler.reportError(self, re)
|
|
@@ -8211,8 +9225,9 @@ class Parser(Parser):
|
|
|
8211
9225
|
|
|
8212
9226
|
class AggrDatasetContext(AggrOperatorsGroupingContext):
|
|
8213
9227
|
|
|
8214
|
-
def __init__(
|
|
8215
|
-
|
|
9228
|
+
def __init__(
|
|
9229
|
+
self, parser, ctx: ParserRuleContext
|
|
9230
|
+
): # actually a VtlParser.AggrOperatorsGroupingContext
|
|
8216
9231
|
super().__init__(parser)
|
|
8217
9232
|
self.op = None # Token
|
|
8218
9233
|
self.copyFrom(ctx)
|
|
@@ -8279,12 +9294,27 @@ class Parser(Parser):
|
|
|
8279
9294
|
self.state = 1056
|
|
8280
9295
|
localctx.op = self._input.LT(1)
|
|
8281
9296
|
_la = self._input.LA(1)
|
|
8282
|
-
if not (
|
|
8283
|
-
|
|
8284
|
-
|
|
8285
|
-
|
|
8286
|
-
|
|
8287
|
-
|
|
9297
|
+
if not (
|
|
9298
|
+
(
|
|
9299
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
9300
|
+
and (
|
|
9301
|
+
(1 << (_la - 68))
|
|
9302
|
+
& (
|
|
9303
|
+
(1 << (Parser.MIN - 68))
|
|
9304
|
+
| (1 << (Parser.MAX - 68))
|
|
9305
|
+
| (1 << (Parser.SUM - 68))
|
|
9306
|
+
| (1 << (Parser.AVG - 68))
|
|
9307
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
9308
|
+
| (1 << (Parser.COUNT - 68))
|
|
9309
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
9310
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
9311
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
9312
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
9313
|
+
)
|
|
9314
|
+
)
|
|
9315
|
+
!= 0
|
|
9316
|
+
)
|
|
9317
|
+
):
|
|
8288
9318
|
localctx.op = self._errHandler.recoverInline(self)
|
|
8289
9319
|
else:
|
|
8290
9320
|
self._errHandler.reportMatch(self)
|
|
@@ -8330,8 +9360,9 @@ class Parser(Parser):
|
|
|
8330
9360
|
|
|
8331
9361
|
class LagOrLeadAnContext(AnFunctionContext):
|
|
8332
9362
|
|
|
8333
|
-
def __init__(
|
|
8334
|
-
|
|
9363
|
+
def __init__(
|
|
9364
|
+
self, parser, ctx: ParserRuleContext
|
|
9365
|
+
): # actually a VtlParser.AnFunctionContext
|
|
8335
9366
|
super().__init__(parser)
|
|
8336
9367
|
self.op = None # Token
|
|
8337
9368
|
self.offet = None # SignedIntegerContext
|
|
@@ -8390,8 +9421,9 @@ class Parser(Parser):
|
|
|
8390
9421
|
|
|
8391
9422
|
class RatioToReportAnContext(AnFunctionContext):
|
|
8392
9423
|
|
|
8393
|
-
def __init__(
|
|
8394
|
-
|
|
9424
|
+
def __init__(
|
|
9425
|
+
self, parser, ctx: ParserRuleContext
|
|
9426
|
+
): # actually a VtlParser.AnFunctionContext
|
|
8395
9427
|
super().__init__(parser)
|
|
8396
9428
|
self.op = None # Token
|
|
8397
9429
|
self.partition = None # PartitionByClauseContext
|
|
@@ -8429,8 +9461,9 @@ class Parser(Parser):
|
|
|
8429
9461
|
|
|
8430
9462
|
class AnSimpleFunctionContext(AnFunctionContext):
|
|
8431
9463
|
|
|
8432
|
-
def __init__(
|
|
8433
|
-
|
|
9464
|
+
def __init__(
|
|
9465
|
+
self, parser, ctx: ParserRuleContext
|
|
9466
|
+
): # actually a VtlParser.AnFunctionContext
|
|
8434
9467
|
super().__init__(parser)
|
|
8435
9468
|
self.op = None # Token
|
|
8436
9469
|
self.partition = None # PartitionByClauseContext
|
|
@@ -8516,22 +9549,48 @@ class Parser(Parser):
|
|
|
8516
9549
|
self.state = 1114
|
|
8517
9550
|
self._errHandler.sync(self)
|
|
8518
9551
|
token = self._input.LA(1)
|
|
8519
|
-
if token in [
|
|
8520
|
-
|
|
8521
|
-
|
|
9552
|
+
if token in [
|
|
9553
|
+
Parser.MIN,
|
|
9554
|
+
Parser.MAX,
|
|
9555
|
+
Parser.SUM,
|
|
9556
|
+
Parser.AVG,
|
|
9557
|
+
Parser.MEDIAN,
|
|
9558
|
+
Parser.COUNT,
|
|
9559
|
+
Parser.STDDEV_POP,
|
|
9560
|
+
Parser.STDDEV_SAMP,
|
|
9561
|
+
Parser.VAR_POP,
|
|
9562
|
+
Parser.VAR_SAMP,
|
|
9563
|
+
Parser.FIRST_VALUE,
|
|
9564
|
+
Parser.LAST_VALUE,
|
|
9565
|
+
]:
|
|
8522
9566
|
localctx = Parser.AnSimpleFunctionContext(self, localctx)
|
|
8523
9567
|
self.enterOuterAlt(localctx, 1)
|
|
8524
9568
|
self.state = 1067
|
|
8525
9569
|
localctx.op = self._input.LT(1)
|
|
8526
9570
|
_la = self._input.LA(1)
|
|
8527
|
-
if not (
|
|
8528
|
-
|
|
8529
|
-
|
|
8530
|
-
|
|
8531
|
-
|
|
8532
|
-
|
|
8533
|
-
1 << (
|
|
8534
|
-
Parser.
|
|
9571
|
+
if not (
|
|
9572
|
+
(
|
|
9573
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
9574
|
+
and (
|
|
9575
|
+
(1 << (_la - 68))
|
|
9576
|
+
& (
|
|
9577
|
+
(1 << (Parser.MIN - 68))
|
|
9578
|
+
| (1 << (Parser.MAX - 68))
|
|
9579
|
+
| (1 << (Parser.SUM - 68))
|
|
9580
|
+
| (1 << (Parser.AVG - 68))
|
|
9581
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
9582
|
+
| (1 << (Parser.COUNT - 68))
|
|
9583
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
9584
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
9585
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
9586
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
9587
|
+
)
|
|
9588
|
+
)
|
|
9589
|
+
!= 0
|
|
9590
|
+
)
|
|
9591
|
+
or _la == Parser.FIRST_VALUE
|
|
9592
|
+
or _la == Parser.LAST_VALUE
|
|
9593
|
+
):
|
|
8535
9594
|
localctx.op = self._errHandler.recoverInline(self)
|
|
8536
9595
|
else:
|
|
8537
9596
|
self._errHandler.reportMatch(self)
|
|
@@ -8668,8 +9727,9 @@ class Parser(Parser):
|
|
|
8668
9727
|
|
|
8669
9728
|
class AnSimpleFunctionComponentContext(AnFunctionComponentContext):
|
|
8670
9729
|
|
|
8671
|
-
def __init__(
|
|
8672
|
-
|
|
9730
|
+
def __init__(
|
|
9731
|
+
self, parser, ctx: ParserRuleContext
|
|
9732
|
+
): # actually a VtlParser.AnFunctionComponentContext
|
|
8673
9733
|
super().__init__(parser)
|
|
8674
9734
|
self.op = None # Token
|
|
8675
9735
|
self.partition = None # PartitionByClauseContext
|
|
@@ -8748,8 +9808,9 @@ class Parser(Parser):
|
|
|
8748
9808
|
|
|
8749
9809
|
class LagOrLeadAnComponentContext(AnFunctionComponentContext):
|
|
8750
9810
|
|
|
8751
|
-
def __init__(
|
|
8752
|
-
|
|
9811
|
+
def __init__(
|
|
9812
|
+
self, parser, ctx: ParserRuleContext
|
|
9813
|
+
): # actually a VtlParser.AnFunctionComponentContext
|
|
8753
9814
|
super().__init__(parser)
|
|
8754
9815
|
self.op = None # Token
|
|
8755
9816
|
self.offet = None # SignedIntegerContext
|
|
@@ -8805,8 +9866,9 @@ class Parser(Parser):
|
|
|
8805
9866
|
|
|
8806
9867
|
class RankAnComponentContext(AnFunctionComponentContext):
|
|
8807
9868
|
|
|
8808
|
-
def __init__(
|
|
8809
|
-
|
|
9869
|
+
def __init__(
|
|
9870
|
+
self, parser, ctx: ParserRuleContext
|
|
9871
|
+
): # actually a VtlParser.AnFunctionComponentContext
|
|
8810
9872
|
super().__init__(parser)
|
|
8811
9873
|
self.op = None # Token
|
|
8812
9874
|
self.partition = None # PartitionByClauseContext
|
|
@@ -8845,8 +9907,9 @@ class Parser(Parser):
|
|
|
8845
9907
|
|
|
8846
9908
|
class RatioToReportAnComponentContext(AnFunctionComponentContext):
|
|
8847
9909
|
|
|
8848
|
-
def __init__(
|
|
8849
|
-
|
|
9910
|
+
def __init__(
|
|
9911
|
+
self, parser, ctx: ParserRuleContext
|
|
9912
|
+
): # actually a VtlParser.AnFunctionComponentContext
|
|
8850
9913
|
super().__init__(parser)
|
|
8851
9914
|
self.op = None # Token
|
|
8852
9915
|
self.partition = None # PartitionByClauseContext
|
|
@@ -8891,22 +9954,48 @@ class Parser(Parser):
|
|
|
8891
9954
|
self.state = 1174
|
|
8892
9955
|
self._errHandler.sync(self)
|
|
8893
9956
|
token = self._input.LA(1)
|
|
8894
|
-
if token in [
|
|
8895
|
-
|
|
8896
|
-
|
|
9957
|
+
if token in [
|
|
9958
|
+
Parser.MIN,
|
|
9959
|
+
Parser.MAX,
|
|
9960
|
+
Parser.SUM,
|
|
9961
|
+
Parser.AVG,
|
|
9962
|
+
Parser.MEDIAN,
|
|
9963
|
+
Parser.COUNT,
|
|
9964
|
+
Parser.STDDEV_POP,
|
|
9965
|
+
Parser.STDDEV_SAMP,
|
|
9966
|
+
Parser.VAR_POP,
|
|
9967
|
+
Parser.VAR_SAMP,
|
|
9968
|
+
Parser.FIRST_VALUE,
|
|
9969
|
+
Parser.LAST_VALUE,
|
|
9970
|
+
]:
|
|
8897
9971
|
localctx = Parser.AnSimpleFunctionComponentContext(self, localctx)
|
|
8898
9972
|
self.enterOuterAlt(localctx, 1)
|
|
8899
9973
|
self.state = 1116
|
|
8900
9974
|
localctx.op = self._input.LT(1)
|
|
8901
9975
|
_la = self._input.LA(1)
|
|
8902
|
-
if not (
|
|
8903
|
-
|
|
8904
|
-
|
|
8905
|
-
|
|
8906
|
-
|
|
8907
|
-
|
|
8908
|
-
1 << (
|
|
8909
|
-
Parser.
|
|
9976
|
+
if not (
|
|
9977
|
+
(
|
|
9978
|
+
(((_la - 68)) & ~0x3F) == 0
|
|
9979
|
+
and (
|
|
9980
|
+
(1 << (_la - 68))
|
|
9981
|
+
& (
|
|
9982
|
+
(1 << (Parser.MIN - 68))
|
|
9983
|
+
| (1 << (Parser.MAX - 68))
|
|
9984
|
+
| (1 << (Parser.SUM - 68))
|
|
9985
|
+
| (1 << (Parser.AVG - 68))
|
|
9986
|
+
| (1 << (Parser.MEDIAN - 68))
|
|
9987
|
+
| (1 << (Parser.COUNT - 68))
|
|
9988
|
+
| (1 << (Parser.STDDEV_POP - 68))
|
|
9989
|
+
| (1 << (Parser.STDDEV_SAMP - 68))
|
|
9990
|
+
| (1 << (Parser.VAR_POP - 68))
|
|
9991
|
+
| (1 << (Parser.VAR_SAMP - 68))
|
|
9992
|
+
)
|
|
9993
|
+
)
|
|
9994
|
+
!= 0
|
|
9995
|
+
)
|
|
9996
|
+
or _la == Parser.FIRST_VALUE
|
|
9997
|
+
or _la == Parser.LAST_VALUE
|
|
9998
|
+
):
|
|
8910
9999
|
localctx.op = self._errHandler.recoverInline(self)
|
|
8911
10000
|
else:
|
|
8912
10001
|
self._errHandler.reportMatch(self)
|
|
@@ -8972,12 +10061,20 @@ class Parser(Parser):
|
|
|
8972
10061
|
self.state = 1139
|
|
8973
10062
|
self._errHandler.sync(self)
|
|
8974
10063
|
_la = self._input.LA(1)
|
|
8975
|
-
if _la == Parser.NULL_CONSTANT or (
|
|
8976
|
-
|
|
8977
|
-
|
|
8978
|
-
1 << (
|
|
8979
|
-
|
|
8980
|
-
|
|
10064
|
+
if _la == Parser.NULL_CONSTANT or (
|
|
10065
|
+
(((_la - 206)) & ~0x3F) == 0
|
|
10066
|
+
and (
|
|
10067
|
+
(1 << (_la - 206))
|
|
10068
|
+
& (
|
|
10069
|
+
(1 << (Parser.CAST - 206))
|
|
10070
|
+
| (1 << (Parser.INTEGER_CONSTANT - 206))
|
|
10071
|
+
| (1 << (Parser.NUMBER_CONSTANT - 206))
|
|
10072
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 206))
|
|
10073
|
+
| (1 << (Parser.STRING_CONSTANT - 206))
|
|
10074
|
+
)
|
|
10075
|
+
)
|
|
10076
|
+
!= 0
|
|
10077
|
+
):
|
|
8981
10078
|
self.state = 1138
|
|
8982
10079
|
localctx.defaultValue = self.scalarItem()
|
|
8983
10080
|
|
|
@@ -9197,10 +10294,19 @@ class Parser(Parser):
|
|
|
9197
10294
|
self.state = 1189
|
|
9198
10295
|
self._errHandler.sync(self)
|
|
9199
10296
|
_la = self._input.LA(1)
|
|
9200
|
-
if (
|
|
9201
|
-
|
|
9202
|
-
|
|
9203
|
-
|
|
10297
|
+
if (
|
|
10298
|
+
(((_la - 91)) & ~0x3F) == 0
|
|
10299
|
+
and (
|
|
10300
|
+
(1 << (_la - 91))
|
|
10301
|
+
& (
|
|
10302
|
+
(1 << (Parser.DIMENSION - 91))
|
|
10303
|
+
| (1 << (Parser.MEASURE - 91))
|
|
10304
|
+
| (1 << (Parser.ATTRIBUTE - 91))
|
|
10305
|
+
| (1 << (Parser.VIRAL - 91))
|
|
10306
|
+
)
|
|
10307
|
+
)
|
|
10308
|
+
!= 0
|
|
10309
|
+
) or _la == Parser.COMPONENT:
|
|
9204
10310
|
self.state = 1188
|
|
9205
10311
|
self.componentRole()
|
|
9206
10312
|
|
|
@@ -9255,10 +10361,19 @@ class Parser(Parser):
|
|
|
9255
10361
|
self.state = 1196
|
|
9256
10362
|
self._errHandler.sync(self)
|
|
9257
10363
|
_la = self._input.LA(1)
|
|
9258
|
-
if (
|
|
9259
|
-
|
|
9260
|
-
|
|
9261
|
-
|
|
10364
|
+
if (
|
|
10365
|
+
(((_la - 91)) & ~0x3F) == 0
|
|
10366
|
+
and (
|
|
10367
|
+
(1 << (_la - 91))
|
|
10368
|
+
& (
|
|
10369
|
+
(1 << (Parser.DIMENSION - 91))
|
|
10370
|
+
| (1 << (Parser.MEASURE - 91))
|
|
10371
|
+
| (1 << (Parser.ATTRIBUTE - 91))
|
|
10372
|
+
| (1 << (Parser.VIRAL - 91))
|
|
10373
|
+
)
|
|
10374
|
+
)
|
|
10375
|
+
!= 0
|
|
10376
|
+
) or _la == Parser.COMPONENT:
|
|
9262
10377
|
self.state = 1195
|
|
9263
10378
|
self.componentRole()
|
|
9264
10379
|
|
|
@@ -9334,8 +10449,9 @@ class Parser(Parser):
|
|
|
9334
10449
|
|
|
9335
10450
|
class ScalarWithCastContext(ScalarItemContext):
|
|
9336
10451
|
|
|
9337
|
-
def __init__(
|
|
9338
|
-
|
|
10452
|
+
def __init__(
|
|
10453
|
+
self, parser, ctx: ParserRuleContext
|
|
10454
|
+
): # actually a VtlParser.ScalarItemContext
|
|
9339
10455
|
super().__init__(parser)
|
|
9340
10456
|
self.copyFrom(ctx)
|
|
9341
10457
|
|
|
@@ -9371,8 +10487,9 @@ class Parser(Parser):
|
|
|
9371
10487
|
|
|
9372
10488
|
class SimpleScalarContext(ScalarItemContext):
|
|
9373
10489
|
|
|
9374
|
-
def __init__(
|
|
9375
|
-
|
|
10490
|
+
def __init__(
|
|
10491
|
+
self, parser, ctx: ParserRuleContext
|
|
10492
|
+
): # actually a VtlParser.ScalarItemContext
|
|
9376
10493
|
super().__init__(parser)
|
|
9377
10494
|
self.copyFrom(ctx)
|
|
9378
10495
|
|
|
@@ -9394,8 +10511,13 @@ class Parser(Parser):
|
|
|
9394
10511
|
self.state = 1218
|
|
9395
10512
|
self._errHandler.sync(self)
|
|
9396
10513
|
token = self._input.LA(1)
|
|
9397
|
-
if token in [
|
|
9398
|
-
|
|
10514
|
+
if token in [
|
|
10515
|
+
Parser.NULL_CONSTANT,
|
|
10516
|
+
Parser.INTEGER_CONSTANT,
|
|
10517
|
+
Parser.NUMBER_CONSTANT,
|
|
10518
|
+
Parser.BOOLEAN_CONSTANT,
|
|
10519
|
+
Parser.STRING_CONSTANT,
|
|
10520
|
+
]:
|
|
9399
10521
|
localctx = Parser.SimpleScalarContext(self, localctx)
|
|
9400
10522
|
self.enterOuterAlt(localctx, 1)
|
|
9401
10523
|
self.state = 1206
|
|
@@ -9571,8 +10693,6 @@ class Parser(Parser):
|
|
|
9571
10693
|
self._errHandler.sync(self)
|
|
9572
10694
|
_la = self._input.LA(1)
|
|
9573
10695
|
|
|
9574
|
-
|
|
9575
|
-
|
|
9576
10696
|
except RecognitionException as re:
|
|
9577
10697
|
localctx.exception = re
|
|
9578
10698
|
self._errHandler.reportError(self, re)
|
|
@@ -9623,7 +10743,6 @@ class Parser(Parser):
|
|
|
9623
10743
|
self.state = 1249
|
|
9624
10744
|
self.alias()
|
|
9625
10745
|
|
|
9626
|
-
|
|
9627
10746
|
except RecognitionException as re:
|
|
9628
10747
|
localctx.exception = re
|
|
9629
10748
|
self._errHandler.reportError(self, re)
|
|
@@ -9712,7 +10831,6 @@ class Parser(Parser):
|
|
|
9712
10831
|
self.state = 1263
|
|
9713
10832
|
self.renameClause()
|
|
9714
10833
|
|
|
9715
|
-
|
|
9716
10834
|
except RecognitionException as re:
|
|
9717
10835
|
localctx.exception = re
|
|
9718
10836
|
self._errHandler.reportError(self, re)
|
|
@@ -9937,7 +11055,6 @@ class Parser(Parser):
|
|
|
9937
11055
|
self._errHandler.reportMatch(self)
|
|
9938
11056
|
self.consume()
|
|
9939
11057
|
|
|
9940
|
-
|
|
9941
11058
|
except RecognitionException as re:
|
|
9942
11059
|
localctx.exception = re
|
|
9943
11060
|
self._errHandler.reportError(self, re)
|
|
@@ -10142,7 +11259,6 @@ class Parser(Parser):
|
|
|
10142
11259
|
self.match(Parser.FOLLOWING)
|
|
10143
11260
|
pass
|
|
10144
11261
|
|
|
10145
|
-
|
|
10146
11262
|
except RecognitionException as re:
|
|
10147
11263
|
localctx.exception = re
|
|
10148
11264
|
self._errHandler.reportError(self, re)
|
|
@@ -10165,8 +11281,9 @@ class Parser(Parser):
|
|
|
10165
11281
|
|
|
10166
11282
|
class GroupAllContext(GroupingClauseContext):
|
|
10167
11283
|
|
|
10168
|
-
def __init__(
|
|
10169
|
-
|
|
11284
|
+
def __init__(
|
|
11285
|
+
self, parser, ctx: ParserRuleContext
|
|
11286
|
+
): # actually a VtlParser.GroupingClauseContext
|
|
10170
11287
|
super().__init__(parser)
|
|
10171
11288
|
self.copyFrom(ctx)
|
|
10172
11289
|
|
|
@@ -10187,8 +11304,9 @@ class Parser(Parser):
|
|
|
10187
11304
|
|
|
10188
11305
|
class GroupByOrExceptContext(GroupingClauseContext):
|
|
10189
11306
|
|
|
10190
|
-
def __init__(
|
|
10191
|
-
|
|
11307
|
+
def __init__(
|
|
11308
|
+
self, parser, ctx: ParserRuleContext
|
|
11309
|
+
): # actually a VtlParser.GroupingClauseContext
|
|
10192
11310
|
super().__init__(parser)
|
|
10193
11311
|
self.op = None # Token
|
|
10194
11312
|
self.copyFrom(ctx)
|
|
@@ -10269,7 +11387,6 @@ class Parser(Parser):
|
|
|
10269
11387
|
self.exprComponent(0)
|
|
10270
11388
|
pass
|
|
10271
11389
|
|
|
10272
|
-
|
|
10273
11390
|
except RecognitionException as re:
|
|
10274
11391
|
localctx.exception = re
|
|
10275
11392
|
self._errHandler.reportError(self, re)
|
|
@@ -10364,7 +11481,6 @@ class Parser(Parser):
|
|
|
10364
11481
|
self.state = 1339
|
|
10365
11482
|
self.scalarItem()
|
|
10366
11483
|
|
|
10367
|
-
|
|
10368
11484
|
except RecognitionException as re:
|
|
10369
11485
|
localctx.exception = re
|
|
10370
11486
|
self._errHandler.reportError(self, re)
|
|
@@ -10405,9 +11521,18 @@ class Parser(Parser):
|
|
|
10405
11521
|
self.state = 1345
|
|
10406
11522
|
self._errHandler.sync(self)
|
|
10407
11523
|
token = self._input.LA(1)
|
|
10408
|
-
if token in [
|
|
10409
|
-
|
|
10410
|
-
|
|
11524
|
+
if token in [
|
|
11525
|
+
Parser.BOOLEAN,
|
|
11526
|
+
Parser.DATE,
|
|
11527
|
+
Parser.TIME_PERIOD,
|
|
11528
|
+
Parser.NUMBER,
|
|
11529
|
+
Parser.STRING,
|
|
11530
|
+
Parser.TIME,
|
|
11531
|
+
Parser.INTEGER,
|
|
11532
|
+
Parser.DURATION,
|
|
11533
|
+
Parser.SCALAR,
|
|
11534
|
+
Parser.IDENTIFIER,
|
|
11535
|
+
]:
|
|
10411
11536
|
self.enterOuterAlt(localctx, 1)
|
|
10412
11537
|
self.state = 1342
|
|
10413
11538
|
self.scalarType()
|
|
@@ -10417,8 +11542,13 @@ class Parser(Parser):
|
|
|
10417
11542
|
self.state = 1343
|
|
10418
11543
|
self.datasetType()
|
|
10419
11544
|
pass
|
|
10420
|
-
elif token in [
|
|
10421
|
-
|
|
11545
|
+
elif token in [
|
|
11546
|
+
Parser.DIMENSION,
|
|
11547
|
+
Parser.MEASURE,
|
|
11548
|
+
Parser.ATTRIBUTE,
|
|
11549
|
+
Parser.VIRAL,
|
|
11550
|
+
Parser.COMPONENT,
|
|
11551
|
+
]:
|
|
10422
11552
|
self.enterOuterAlt(localctx, 3)
|
|
10423
11553
|
self.state = 1344
|
|
10424
11554
|
self.componentType()
|
|
@@ -10463,15 +11593,29 @@ class Parser(Parser):
|
|
|
10463
11593
|
self.state = 1349
|
|
10464
11594
|
self._errHandler.sync(self)
|
|
10465
11595
|
token = self._input.LA(1)
|
|
10466
|
-
if token in [
|
|
10467
|
-
|
|
11596
|
+
if token in [
|
|
11597
|
+
Parser.DIMENSION,
|
|
11598
|
+
Parser.MEASURE,
|
|
11599
|
+
Parser.ATTRIBUTE,
|
|
11600
|
+
Parser.VIRAL,
|
|
11601
|
+
Parser.COMPONENT,
|
|
11602
|
+
]:
|
|
10468
11603
|
self.enterOuterAlt(localctx, 1)
|
|
10469
11604
|
self.state = 1347
|
|
10470
11605
|
self.componentType()
|
|
10471
11606
|
pass
|
|
10472
|
-
elif token in [
|
|
10473
|
-
|
|
10474
|
-
|
|
11607
|
+
elif token in [
|
|
11608
|
+
Parser.BOOLEAN,
|
|
11609
|
+
Parser.DATE,
|
|
11610
|
+
Parser.TIME_PERIOD,
|
|
11611
|
+
Parser.NUMBER,
|
|
11612
|
+
Parser.STRING,
|
|
11613
|
+
Parser.TIME,
|
|
11614
|
+
Parser.INTEGER,
|
|
11615
|
+
Parser.DURATION,
|
|
11616
|
+
Parser.SCALAR,
|
|
11617
|
+
Parser.IDENTIFIER,
|
|
11618
|
+
]:
|
|
10475
11619
|
self.enterOuterAlt(localctx, 2)
|
|
10476
11620
|
self.state = 1348
|
|
10477
11621
|
self.scalarType()
|
|
@@ -10525,9 +11669,18 @@ class Parser(Parser):
|
|
|
10525
11669
|
self.state = 1356
|
|
10526
11670
|
self._errHandler.sync(self)
|
|
10527
11671
|
token = self._input.LA(1)
|
|
10528
|
-
if token in [
|
|
10529
|
-
|
|
10530
|
-
|
|
11672
|
+
if token in [
|
|
11673
|
+
Parser.BOOLEAN,
|
|
11674
|
+
Parser.DATE,
|
|
11675
|
+
Parser.TIME_PERIOD,
|
|
11676
|
+
Parser.NUMBER,
|
|
11677
|
+
Parser.STRING,
|
|
11678
|
+
Parser.TIME,
|
|
11679
|
+
Parser.INTEGER,
|
|
11680
|
+
Parser.DURATION,
|
|
11681
|
+
Parser.SCALAR,
|
|
11682
|
+
Parser.IDENTIFIER,
|
|
11683
|
+
]:
|
|
10531
11684
|
self.enterOuterAlt(localctx, 1)
|
|
10532
11685
|
self.state = 1351
|
|
10533
11686
|
self.scalarType()
|
|
@@ -10542,15 +11695,26 @@ class Parser(Parser):
|
|
|
10542
11695
|
self.state = 1353
|
|
10543
11696
|
self.scalarSetType()
|
|
10544
11697
|
pass
|
|
10545
|
-
elif token in [
|
|
10546
|
-
|
|
10547
|
-
|
|
11698
|
+
elif token in [
|
|
11699
|
+
Parser.DATAPOINT,
|
|
11700
|
+
Parser.HIERARCHICAL,
|
|
11701
|
+
Parser.RULESET,
|
|
11702
|
+
Parser.DATAPOINT_ON_VD,
|
|
11703
|
+
Parser.DATAPOINT_ON_VAR,
|
|
11704
|
+
Parser.HIERARCHICAL_ON_VD,
|
|
11705
|
+
Parser.HIERARCHICAL_ON_VAR,
|
|
11706
|
+
]:
|
|
10548
11707
|
self.enterOuterAlt(localctx, 4)
|
|
10549
11708
|
self.state = 1354
|
|
10550
11709
|
self.rulesetType()
|
|
10551
11710
|
pass
|
|
10552
|
-
elif token in [
|
|
10553
|
-
|
|
11711
|
+
elif token in [
|
|
11712
|
+
Parser.DIMENSION,
|
|
11713
|
+
Parser.MEASURE,
|
|
11714
|
+
Parser.ATTRIBUTE,
|
|
11715
|
+
Parser.VIRAL,
|
|
11716
|
+
Parser.COMPONENT,
|
|
11717
|
+
]:
|
|
10554
11718
|
self.enterOuterAlt(localctx, 5)
|
|
10555
11719
|
self.state = 1355
|
|
10556
11720
|
self.componentType()
|
|
@@ -10608,8 +11772,11 @@ class Parser(Parser):
|
|
|
10608
11772
|
self.state = 1359
|
|
10609
11773
|
self.dpRuleset()
|
|
10610
11774
|
pass
|
|
10611
|
-
elif token in [
|
|
10612
|
-
|
|
11775
|
+
elif token in [
|
|
11776
|
+
Parser.HIERARCHICAL,
|
|
11777
|
+
Parser.HIERARCHICAL_ON_VD,
|
|
11778
|
+
Parser.HIERARCHICAL_ON_VAR,
|
|
11779
|
+
]:
|
|
10613
11780
|
self.enterOuterAlt(localctx, 3)
|
|
10614
11781
|
self.state = 1360
|
|
10615
11782
|
self.hrRuleset()
|
|
@@ -10665,9 +11832,17 @@ class Parser(Parser):
|
|
|
10665
11832
|
self.state = 1365
|
|
10666
11833
|
self._errHandler.sync(self)
|
|
10667
11834
|
token = self._input.LA(1)
|
|
10668
|
-
if token in [
|
|
10669
|
-
|
|
10670
|
-
|
|
11835
|
+
if token in [
|
|
11836
|
+
Parser.BOOLEAN,
|
|
11837
|
+
Parser.DATE,
|
|
11838
|
+
Parser.TIME_PERIOD,
|
|
11839
|
+
Parser.NUMBER,
|
|
11840
|
+
Parser.STRING,
|
|
11841
|
+
Parser.TIME,
|
|
11842
|
+
Parser.INTEGER,
|
|
11843
|
+
Parser.DURATION,
|
|
11844
|
+
Parser.SCALAR,
|
|
11845
|
+
]:
|
|
10671
11846
|
self.state = 1363
|
|
10672
11847
|
self.basicScalarType()
|
|
10673
11848
|
pass
|
|
@@ -10699,7 +11874,6 @@ class Parser(Parser):
|
|
|
10699
11874
|
self.state = 1373
|
|
10700
11875
|
self.match(Parser.NULL_CONSTANT)
|
|
10701
11876
|
|
|
10702
|
-
|
|
10703
11877
|
except RecognitionException as re:
|
|
10704
11878
|
localctx.exception = re
|
|
10705
11879
|
self._errHandler.reportError(self, re)
|
|
@@ -10755,7 +11929,6 @@ class Parser(Parser):
|
|
|
10755
11929
|
self.state = 1379
|
|
10756
11930
|
self.match(Parser.MT)
|
|
10757
11931
|
|
|
10758
|
-
|
|
10759
11932
|
except RecognitionException as re:
|
|
10760
11933
|
localctx.exception = re
|
|
10761
11934
|
self._errHandler.reportError(self, re)
|
|
@@ -10832,7 +12005,6 @@ class Parser(Parser):
|
|
|
10832
12005
|
self.state = 1393
|
|
10833
12006
|
self.match(Parser.GRPAREN)
|
|
10834
12007
|
|
|
10835
|
-
|
|
10836
12008
|
except RecognitionException as re:
|
|
10837
12009
|
localctx.exception = re
|
|
10838
12010
|
self._errHandler.reportError(self, re)
|
|
@@ -10875,9 +12047,18 @@ class Parser(Parser):
|
|
|
10875
12047
|
self.state = 1397
|
|
10876
12048
|
self.datasetType()
|
|
10877
12049
|
pass
|
|
10878
|
-
elif token in [
|
|
10879
|
-
|
|
10880
|
-
|
|
12050
|
+
elif token in [
|
|
12051
|
+
Parser.BOOLEAN,
|
|
12052
|
+
Parser.DATE,
|
|
12053
|
+
Parser.TIME_PERIOD,
|
|
12054
|
+
Parser.NUMBER,
|
|
12055
|
+
Parser.STRING,
|
|
12056
|
+
Parser.TIME,
|
|
12057
|
+
Parser.INTEGER,
|
|
12058
|
+
Parser.DURATION,
|
|
12059
|
+
Parser.SCALAR,
|
|
12060
|
+
Parser.IDENTIFIER,
|
|
12061
|
+
]:
|
|
10881
12062
|
self.enterOuterAlt(localctx, 2)
|
|
10882
12063
|
self.state = 1398
|
|
10883
12064
|
self.scalarType()
|
|
@@ -10940,7 +12121,6 @@ class Parser(Parser):
|
|
|
10940
12121
|
self.state = 1404
|
|
10941
12122
|
self.match(Parser.MT)
|
|
10942
12123
|
|
|
10943
|
-
|
|
10944
12124
|
except RecognitionException as re:
|
|
10945
12125
|
localctx.exception = re
|
|
10946
12126
|
self._errHandler.reportError(self, re)
|
|
@@ -11521,7 +12701,6 @@ class Parser(Parser):
|
|
|
11521
12701
|
self.state = 1496
|
|
11522
12702
|
self.alias()
|
|
11523
12703
|
|
|
11524
|
-
|
|
11525
12704
|
except RecognitionException as re:
|
|
11526
12705
|
localctx.exception = re
|
|
11527
12706
|
self._errHandler.reportError(self, re)
|
|
@@ -11671,7 +12850,6 @@ class Parser(Parser):
|
|
|
11671
12850
|
self.state = 1521
|
|
11672
12851
|
self.erLevel()
|
|
11673
12852
|
|
|
11674
|
-
|
|
11675
12853
|
except RecognitionException as re:
|
|
11676
12854
|
localctx.exception = re
|
|
11677
12855
|
self._errHandler.reportError(self, re)
|
|
@@ -11799,7 +12977,6 @@ class Parser(Parser):
|
|
|
11799
12977
|
self.state = 1540
|
|
11800
12978
|
self.erLevel()
|
|
11801
12979
|
|
|
11802
|
-
|
|
11803
12980
|
except RecognitionException as re:
|
|
11804
12981
|
localctx.exception = re
|
|
11805
12982
|
self._errHandler.reportError(self, re)
|
|
@@ -11992,9 +13169,17 @@ class Parser(Parser):
|
|
|
11992
13169
|
self.state = 1567
|
|
11993
13170
|
self._errHandler.sync(self)
|
|
11994
13171
|
_la = self._input.LA(1)
|
|
11995
|
-
if ((
|
|
11996
|
-
|
|
11997
|
-
|
|
13172
|
+
if ((_la) & ~0x3F) == 0 and (
|
|
13173
|
+
(1 << _la)
|
|
13174
|
+
& (
|
|
13175
|
+
(1 << Parser.EQ)
|
|
13176
|
+
| (1 << Parser.LT)
|
|
13177
|
+
| (1 << Parser.MT)
|
|
13178
|
+
| (1 << Parser.ME)
|
|
13179
|
+
| (1 << Parser.NEQ)
|
|
13180
|
+
| (1 << Parser.LE)
|
|
13181
|
+
)
|
|
13182
|
+
) != 0:
|
|
11998
13183
|
self.state = 1566
|
|
11999
13184
|
self.comparisonOperand()
|
|
12000
13185
|
|
|
@@ -12003,9 +13188,22 @@ class Parser(Parser):
|
|
|
12003
13188
|
self.state = 1573
|
|
12004
13189
|
self._errHandler.sync(self)
|
|
12005
13190
|
_la = self._input.LA(1)
|
|
12006
|
-
while
|
|
12007
|
-
|
|
12008
|
-
|
|
13191
|
+
while (
|
|
13192
|
+
_la == Parser.PLUS
|
|
13193
|
+
or _la == Parser.MINUS
|
|
13194
|
+
or (
|
|
13195
|
+
(((_la - 229)) & ~0x3F) == 0
|
|
13196
|
+
and (
|
|
13197
|
+
(1 << (_la - 229))
|
|
13198
|
+
& (
|
|
13199
|
+
(1 << (Parser.INTEGER_CONSTANT - 229))
|
|
13200
|
+
| (1 << (Parser.NUMBER_CONSTANT - 229))
|
|
13201
|
+
| (1 << (Parser.IDENTIFIER - 229))
|
|
13202
|
+
)
|
|
13203
|
+
)
|
|
13204
|
+
!= 0
|
|
13205
|
+
)
|
|
13206
|
+
):
|
|
12009
13207
|
self.state = 1570
|
|
12010
13208
|
self.codeItemRelationClause()
|
|
12011
13209
|
self.state = 1575
|
|
@@ -12089,7 +13287,6 @@ class Parser(Parser):
|
|
|
12089
13287
|
self.state = 1582
|
|
12090
13288
|
self.match(Parser.QRPAREN)
|
|
12091
13289
|
|
|
12092
|
-
|
|
12093
13290
|
except RecognitionException as re:
|
|
12094
13291
|
localctx.exception = re
|
|
12095
13292
|
self._errHandler.reportError(self, re)
|
|
@@ -12131,10 +13328,20 @@ class Parser(Parser):
|
|
|
12131
13328
|
self.enterOuterAlt(localctx, 1)
|
|
12132
13329
|
self.state = 1586
|
|
12133
13330
|
_la = self._input.LA(1)
|
|
12134
|
-
if not (
|
|
12135
|
-
|
|
12136
|
-
|
|
12137
|
-
|
|
13331
|
+
if not (
|
|
13332
|
+
(
|
|
13333
|
+
(((_la - 229)) & ~0x3F) == 0
|
|
13334
|
+
and (
|
|
13335
|
+
(1 << (_la - 229))
|
|
13336
|
+
& (
|
|
13337
|
+
(1 << (Parser.INTEGER_CONSTANT - 229))
|
|
13338
|
+
| (1 << (Parser.NUMBER_CONSTANT - 229))
|
|
13339
|
+
| (1 << (Parser.IDENTIFIER - 229))
|
|
13340
|
+
)
|
|
13341
|
+
)
|
|
13342
|
+
!= 0
|
|
13343
|
+
)
|
|
13344
|
+
):
|
|
12138
13345
|
self._errHandler.recoverInline(self)
|
|
12139
13346
|
else:
|
|
12140
13347
|
self._errHandler.reportMatch(self)
|
|
@@ -12161,8 +13368,9 @@ class Parser(Parser):
|
|
|
12161
13368
|
|
|
12162
13369
|
class RangeConstraintContext(ScalarTypeConstraintContext):
|
|
12163
13370
|
|
|
12164
|
-
def __init__(
|
|
12165
|
-
|
|
13371
|
+
def __init__(
|
|
13372
|
+
self, parser, ctx: ParserRuleContext
|
|
13373
|
+
): # actually a VtlParser.ScalarTypeConstraintContext
|
|
12166
13374
|
super().__init__(parser)
|
|
12167
13375
|
self.copyFrom(ctx)
|
|
12168
13376
|
|
|
@@ -12192,8 +13400,9 @@ class Parser(Parser):
|
|
|
12192
13400
|
|
|
12193
13401
|
class ConditionConstraintContext(ScalarTypeConstraintContext):
|
|
12194
13402
|
|
|
12195
|
-
def __init__(
|
|
12196
|
-
|
|
13403
|
+
def __init__(
|
|
13404
|
+
self, parser, ctx: ParserRuleContext
|
|
13405
|
+
): # actually a VtlParser.ScalarTypeConstraintContext
|
|
12197
13406
|
super().__init__(parser)
|
|
12198
13407
|
self.copyFrom(ctx)
|
|
12199
13408
|
|
|
@@ -12363,7 +13572,6 @@ class Parser(Parser):
|
|
|
12363
13572
|
self._errHandler.reportMatch(self)
|
|
12364
13573
|
self.consume()
|
|
12365
13574
|
|
|
12366
|
-
|
|
12367
13575
|
except RecognitionException as re:
|
|
12368
13576
|
localctx.exception = re
|
|
12369
13577
|
self._errHandler.reportError(self, re)
|
|
@@ -12460,11 +13668,23 @@ class Parser(Parser):
|
|
|
12460
13668
|
self.enterOuterAlt(localctx, 1)
|
|
12461
13669
|
self.state = 1616
|
|
12462
13670
|
_la = self._input.LA(1)
|
|
12463
|
-
if not (
|
|
12464
|
-
|
|
12465
|
-
|
|
12466
|
-
|
|
12467
|
-
|
|
13671
|
+
if not (
|
|
13672
|
+
(
|
|
13673
|
+
(((_la - 213)) & ~0x3F) == 0
|
|
13674
|
+
and (
|
|
13675
|
+
(1 << (_la - 213))
|
|
13676
|
+
& (
|
|
13677
|
+
(1 << (Parser.NON_NULL - 213))
|
|
13678
|
+
| (1 << (Parser.NON_ZERO - 213))
|
|
13679
|
+
| (1 << (Parser.PARTIAL_NULL - 213))
|
|
13680
|
+
| (1 << (Parser.PARTIAL_ZERO - 213))
|
|
13681
|
+
| (1 << (Parser.ALWAYS_NULL - 213))
|
|
13682
|
+
| (1 << (Parser.ALWAYS_ZERO - 213))
|
|
13683
|
+
)
|
|
13684
|
+
)
|
|
13685
|
+
!= 0
|
|
13686
|
+
)
|
|
13687
|
+
):
|
|
12468
13688
|
self._errHandler.recoverInline(self)
|
|
12469
13689
|
else:
|
|
12470
13690
|
self._errHandler.reportMatch(self)
|
|
@@ -12852,7 +14072,6 @@ class Parser(Parser):
|
|
|
12852
14072
|
self.state = 1644
|
|
12853
14073
|
self.match(Parser.IDENTIFIER)
|
|
12854
14074
|
|
|
12855
|
-
|
|
12856
14075
|
except RecognitionException as re:
|
|
12857
14076
|
localctx.exception = re
|
|
12858
14077
|
self._errHandler.reportError(self, re)
|
|
@@ -13047,9 +14266,23 @@ class Parser(Parser):
|
|
|
13047
14266
|
self.enterOuterAlt(localctx, 1)
|
|
13048
14267
|
self.state = 1664
|
|
13049
14268
|
_la = self._input.LA(1)
|
|
13050
|
-
if not (
|
|
13051
|
-
|
|
13052
|
-
|
|
14269
|
+
if not (
|
|
14270
|
+
(
|
|
14271
|
+
((_la) & ~0x3F) == 0
|
|
14272
|
+
and (
|
|
14273
|
+
(1 << _la)
|
|
14274
|
+
& (
|
|
14275
|
+
(1 << Parser.EQ)
|
|
14276
|
+
| (1 << Parser.LT)
|
|
14277
|
+
| (1 << Parser.MT)
|
|
14278
|
+
| (1 << Parser.ME)
|
|
14279
|
+
| (1 << Parser.NEQ)
|
|
14280
|
+
| (1 << Parser.LE)
|
|
14281
|
+
)
|
|
14282
|
+
)
|
|
14283
|
+
!= 0
|
|
14284
|
+
)
|
|
14285
|
+
):
|
|
13053
14286
|
self._errHandler.recoverInline(self)
|
|
13054
14287
|
else:
|
|
13055
14288
|
self._errHandler.reportMatch(self)
|
|
@@ -13091,24 +14324,80 @@ class Parser(Parser):
|
|
|
13091
14324
|
self.state = 1668
|
|
13092
14325
|
self._errHandler.sync(self)
|
|
13093
14326
|
token = self._input.LA(1)
|
|
13094
|
-
if token in [
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13098
|
-
|
|
13099
|
-
|
|
13100
|
-
|
|
13101
|
-
|
|
13102
|
-
|
|
13103
|
-
|
|
13104
|
-
|
|
13105
|
-
|
|
13106
|
-
|
|
13107
|
-
|
|
13108
|
-
|
|
13109
|
-
|
|
13110
|
-
|
|
13111
|
-
|
|
14327
|
+
if token in [
|
|
14328
|
+
Parser.LPAREN,
|
|
14329
|
+
Parser.PLUS,
|
|
14330
|
+
Parser.MINUS,
|
|
14331
|
+
Parser.EVAL,
|
|
14332
|
+
Parser.IF,
|
|
14333
|
+
Parser.CURRENT_DATE,
|
|
14334
|
+
Parser.NOT,
|
|
14335
|
+
Parser.BETWEEN,
|
|
14336
|
+
Parser.NULL_CONSTANT,
|
|
14337
|
+
Parser.ISNULL,
|
|
14338
|
+
Parser.UNION,
|
|
14339
|
+
Parser.SYMDIFF,
|
|
14340
|
+
Parser.INTERSECT,
|
|
14341
|
+
Parser.CHECK,
|
|
14342
|
+
Parser.EXISTS_IN,
|
|
14343
|
+
Parser.MIN,
|
|
14344
|
+
Parser.MAX,
|
|
14345
|
+
Parser.ABS,
|
|
14346
|
+
Parser.LN,
|
|
14347
|
+
Parser.LOG,
|
|
14348
|
+
Parser.TRUNC,
|
|
14349
|
+
Parser.ROUND,
|
|
14350
|
+
Parser.POWER,
|
|
14351
|
+
Parser.MOD,
|
|
14352
|
+
Parser.LEN,
|
|
14353
|
+
Parser.TRIM,
|
|
14354
|
+
Parser.UCASE,
|
|
14355
|
+
Parser.LCASE,
|
|
14356
|
+
Parser.SUBSTR,
|
|
14357
|
+
Parser.SUM,
|
|
14358
|
+
Parser.AVG,
|
|
14359
|
+
Parser.MEDIAN,
|
|
14360
|
+
Parser.COUNT,
|
|
14361
|
+
Parser.EXP,
|
|
14362
|
+
Parser.CHARSET_MATCH,
|
|
14363
|
+
Parser.NVL,
|
|
14364
|
+
Parser.HIERARCHY,
|
|
14365
|
+
Parser.LTRIM,
|
|
14366
|
+
Parser.RTRIM,
|
|
14367
|
+
Parser.INSTR,
|
|
14368
|
+
Parser.REPLACE,
|
|
14369
|
+
Parser.CEIL,
|
|
14370
|
+
Parser.FLOOR,
|
|
14371
|
+
Parser.SQRT,
|
|
14372
|
+
Parser.SETDIFF,
|
|
14373
|
+
Parser.STDDEV_POP,
|
|
14374
|
+
Parser.STDDEV_SAMP,
|
|
14375
|
+
Parser.VAR_POP,
|
|
14376
|
+
Parser.VAR_SAMP,
|
|
14377
|
+
Parser.FIRST_VALUE,
|
|
14378
|
+
Parser.LAST_VALUE,
|
|
14379
|
+
Parser.LAG,
|
|
14380
|
+
Parser.LEAD,
|
|
14381
|
+
Parser.RATIO_TO_REPORT,
|
|
14382
|
+
Parser.FILL_TIME_SERIES,
|
|
14383
|
+
Parser.FLOW_TO_STOCK,
|
|
14384
|
+
Parser.STOCK_TO_FLOW,
|
|
14385
|
+
Parser.TIMESHIFT,
|
|
14386
|
+
Parser.INNER_JOIN,
|
|
14387
|
+
Parser.LEFT_JOIN,
|
|
14388
|
+
Parser.CROSS_JOIN,
|
|
14389
|
+
Parser.FULL_JOIN,
|
|
14390
|
+
Parser.PERIOD_INDICATOR,
|
|
14391
|
+
Parser.TIME_AGG,
|
|
14392
|
+
Parser.CAST,
|
|
14393
|
+
Parser.CHECK_DATAPOINT,
|
|
14394
|
+
Parser.CHECK_HIERARCHY,
|
|
14395
|
+
Parser.INTEGER_CONSTANT,
|
|
14396
|
+
Parser.NUMBER_CONSTANT,
|
|
14397
|
+
Parser.BOOLEAN_CONSTANT,
|
|
14398
|
+
Parser.STRING_CONSTANT,
|
|
14399
|
+
Parser.IDENTIFIER,
|
|
14400
|
+
]:
|
|
13112
14401
|
self.enterOuterAlt(localctx, 1)
|
|
13113
14402
|
self.state = 1666
|
|
13114
14403
|
self.expr(0)
|
|
@@ -13158,20 +14447,68 @@ class Parser(Parser):
|
|
|
13158
14447
|
self.state = 1672
|
|
13159
14448
|
self._errHandler.sync(self)
|
|
13160
14449
|
token = self._input.LA(1)
|
|
13161
|
-
if token in [
|
|
13162
|
-
|
|
13163
|
-
|
|
13164
|
-
|
|
13165
|
-
|
|
13166
|
-
|
|
13167
|
-
|
|
13168
|
-
|
|
13169
|
-
|
|
13170
|
-
|
|
13171
|
-
|
|
13172
|
-
|
|
13173
|
-
|
|
13174
|
-
|
|
14450
|
+
if token in [
|
|
14451
|
+
Parser.LPAREN,
|
|
14452
|
+
Parser.PLUS,
|
|
14453
|
+
Parser.MINUS,
|
|
14454
|
+
Parser.EVAL,
|
|
14455
|
+
Parser.IF,
|
|
14456
|
+
Parser.CURRENT_DATE,
|
|
14457
|
+
Parser.NOT,
|
|
14458
|
+
Parser.BETWEEN,
|
|
14459
|
+
Parser.NULL_CONSTANT,
|
|
14460
|
+
Parser.ISNULL,
|
|
14461
|
+
Parser.RANK,
|
|
14462
|
+
Parser.MIN,
|
|
14463
|
+
Parser.MAX,
|
|
14464
|
+
Parser.ABS,
|
|
14465
|
+
Parser.LN,
|
|
14466
|
+
Parser.LOG,
|
|
14467
|
+
Parser.TRUNC,
|
|
14468
|
+
Parser.ROUND,
|
|
14469
|
+
Parser.POWER,
|
|
14470
|
+
Parser.MOD,
|
|
14471
|
+
Parser.LEN,
|
|
14472
|
+
Parser.TRIM,
|
|
14473
|
+
Parser.UCASE,
|
|
14474
|
+
Parser.LCASE,
|
|
14475
|
+
Parser.SUBSTR,
|
|
14476
|
+
Parser.SUM,
|
|
14477
|
+
Parser.AVG,
|
|
14478
|
+
Parser.MEDIAN,
|
|
14479
|
+
Parser.COUNT,
|
|
14480
|
+
Parser.EXP,
|
|
14481
|
+
Parser.CHARSET_MATCH,
|
|
14482
|
+
Parser.NVL,
|
|
14483
|
+
Parser.LTRIM,
|
|
14484
|
+
Parser.RTRIM,
|
|
14485
|
+
Parser.INSTR,
|
|
14486
|
+
Parser.REPLACE,
|
|
14487
|
+
Parser.CEIL,
|
|
14488
|
+
Parser.FLOOR,
|
|
14489
|
+
Parser.SQRT,
|
|
14490
|
+
Parser.STDDEV_POP,
|
|
14491
|
+
Parser.STDDEV_SAMP,
|
|
14492
|
+
Parser.VAR_POP,
|
|
14493
|
+
Parser.VAR_SAMP,
|
|
14494
|
+
Parser.FIRST_VALUE,
|
|
14495
|
+
Parser.LAST_VALUE,
|
|
14496
|
+
Parser.LAG,
|
|
14497
|
+
Parser.LEAD,
|
|
14498
|
+
Parser.RATIO_TO_REPORT,
|
|
14499
|
+
Parser.FILL_TIME_SERIES,
|
|
14500
|
+
Parser.FLOW_TO_STOCK,
|
|
14501
|
+
Parser.STOCK_TO_FLOW,
|
|
14502
|
+
Parser.TIMESHIFT,
|
|
14503
|
+
Parser.PERIOD_INDICATOR,
|
|
14504
|
+
Parser.TIME_AGG,
|
|
14505
|
+
Parser.CAST,
|
|
14506
|
+
Parser.INTEGER_CONSTANT,
|
|
14507
|
+
Parser.NUMBER_CONSTANT,
|
|
14508
|
+
Parser.BOOLEAN_CONSTANT,
|
|
14509
|
+
Parser.STRING_CONSTANT,
|
|
14510
|
+
Parser.IDENTIFIER,
|
|
14511
|
+
]:
|
|
13175
14512
|
self.enterOuterAlt(localctx, 1)
|
|
13176
14513
|
self.state = 1670
|
|
13177
14514
|
self.exprComponent(0)
|
|
@@ -13446,11 +14783,22 @@ class Parser(Parser):
|
|
|
13446
14783
|
self.enterOuterAlt(localctx, 1)
|
|
13447
14784
|
self.state = 1690
|
|
13448
14785
|
_la = self._input.LA(1)
|
|
13449
|
-
if not (
|
|
13450
|
-
|
|
13451
|
-
|
|
13452
|
-
|
|
13453
|
-
|
|
14786
|
+
if not (
|
|
14787
|
+
_la == Parser.NULL_CONSTANT
|
|
14788
|
+
or (
|
|
14789
|
+
(((_la - 229)) & ~0x3F) == 0
|
|
14790
|
+
and (
|
|
14791
|
+
(1 << (_la - 229))
|
|
14792
|
+
& (
|
|
14793
|
+
(1 << (Parser.INTEGER_CONSTANT - 229))
|
|
14794
|
+
| (1 << (Parser.NUMBER_CONSTANT - 229))
|
|
14795
|
+
| (1 << (Parser.BOOLEAN_CONSTANT - 229))
|
|
14796
|
+
| (1 << (Parser.STRING_CONSTANT - 229))
|
|
14797
|
+
)
|
|
14798
|
+
)
|
|
14799
|
+
!= 0
|
|
14800
|
+
)
|
|
14801
|
+
):
|
|
13454
14802
|
self._errHandler.recoverInline(self)
|
|
13455
14803
|
else:
|
|
13456
14804
|
self._errHandler.reportMatch(self)
|
|
@@ -13514,12 +14862,26 @@ class Parser(Parser):
|
|
|
13514
14862
|
self.enterOuterAlt(localctx, 1)
|
|
13515
14863
|
self.state = 1692
|
|
13516
14864
|
_la = self._input.LA(1)
|
|
13517
|
-
if not (
|
|
13518
|
-
|
|
13519
|
-
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
14865
|
+
if not (
|
|
14866
|
+
(
|
|
14867
|
+
(((_la - 156)) & ~0x3F) == 0
|
|
14868
|
+
and (
|
|
14869
|
+
(1 << (_la - 156))
|
|
14870
|
+
& (
|
|
14871
|
+
(1 << (Parser.BOOLEAN - 156))
|
|
14872
|
+
| (1 << (Parser.DATE - 156))
|
|
14873
|
+
| (1 << (Parser.TIME_PERIOD - 156))
|
|
14874
|
+
| (1 << (Parser.NUMBER - 156))
|
|
14875
|
+
| (1 << (Parser.STRING - 156))
|
|
14876
|
+
| (1 << (Parser.TIME - 156))
|
|
14877
|
+
| (1 << (Parser.INTEGER - 156))
|
|
14878
|
+
| (1 << (Parser.DURATION - 156))
|
|
14879
|
+
)
|
|
14880
|
+
)
|
|
14881
|
+
!= 0
|
|
14882
|
+
)
|
|
14883
|
+
or _la == Parser.SCALAR
|
|
14884
|
+
):
|
|
13523
14885
|
self._errHandler.recoverInline(self)
|
|
13524
14886
|
else:
|
|
13525
14887
|
self._errHandler.reportMatch(self)
|