modify grammar, add syntax test
This commit is contained in:
		@ -17,66 +17,62 @@
 | 
			
		||||
grammar SqlBase;
 | 
			
		||||
 | 
			
		||||
@parser::members {
 | 
			
		||||
  /**
 | 
			
		||||
   * When false, INTERSECT is given the greater precedence over the other set
 | 
			
		||||
   * operations (UNION, EXCEPT and MINUS) as per the SQL standard.
 | 
			
		||||
   */
 | 
			
		||||
//  public boolean legacy_setops_precedence_enbled = false;
 | 
			
		||||
  legacy_setops_precedence_enbled = false;
 | 
			
		||||
  /**
 | 
			
		||||
   * When false, a literal with an exponent would be converted into
 | 
			
		||||
   * double type rather than decimal type.
 | 
			
		||||
   */
 | 
			
		||||
//  public boolean legacy_exponent_literal_as_decimal_enabled = false;
 | 
			
		||||
  legacy_exponent_literal_as_decimal_enabled = false;
 | 
			
		||||
  /**
 | 
			
		||||
   * When true, the behavior of keywords follows ANSI SQL standard.
 | 
			
		||||
   */
 | 
			
		||||
//  public boolean SQL_standard_keyword_behavior = false;
 | 
			
		||||
  SQL_standard_keyword_behavior = false;
 | 
			
		||||
    /**
 | 
			
		||||
    * When false, INTERSECT is given the greater precedence over the other set
 | 
			
		||||
    * operations (UNION, EXCEPT and MINUS) as per the SQL standard.
 | 
			
		||||
    */
 | 
			
		||||
    //  public boolean legacy_setops_precedence_enbled = false;
 | 
			
		||||
    /**
 | 
			
		||||
    * When false, a literal with an exponent would be converted into
 | 
			
		||||
    * double type rather than decimal type.
 | 
			
		||||
    */
 | 
			
		||||
    //  public boolean legacy_exponent_literal_as_decimal_enabled = false;
 | 
			
		||||
    global.legacy_exponent_literal_as_decimal_enabled = false;
 | 
			
		||||
    /**
 | 
			
		||||
    * When true, the behavior of keywords follows ANSI SQL standard.
 | 
			
		||||
    */
 | 
			
		||||
    //  public boolean SQL_standard_keyword_behavior = false;
 | 
			
		||||
 | 
			
		||||
    global.legacy_setops_precedence_enbled = false;
 | 
			
		||||
    global.legacy_exponent_literal_as_decimal_enabled = false;
 | 
			
		||||
    global.SQL_standard_keyword_behavior = false;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
//@lexer::members {
 | 
			
		||||
//  /**
 | 
			
		||||
//   * Verify whether current token is a valid decimal token (which contains dot).
 | 
			
		||||
//   * Returns true if the character that follows the token is not a digit or letter or underscore.
 | 
			
		||||
//   *
 | 
			
		||||
//   * For example:
 | 
			
		||||
//   * For char stream "2.3", "2." is not a valid decimal token, because it is followed by digit '3'.
 | 
			
		||||
//   * For char stream "2.3_", "2.3" is not a valid decimal token, because it is followed by '_'.
 | 
			
		||||
//   * For char stream "2.3W", "2.3" is not a valid decimal token, because it is followed by 'W'.
 | 
			
		||||
//   * For char stream "12.0D 34.E2+0.12 "  12.0D is a valid decimal token because it is followed
 | 
			
		||||
//   * by a space. 34.E2 is a valid decimal token because it is followed by symbol '+'
 | 
			
		||||
//   * which is not a digit or letter or underscore.
 | 
			
		||||
//   */
 | 
			
		||||
//  public boolean isValidDecimal() {
 | 
			
		||||
//    int nextChar = _input.LA(1);
 | 
			
		||||
//    if (nextChar >= 'A' && nextChar <= 'Z' || nextChar >= '0' && nextChar <= '9' ||
 | 
			
		||||
//      nextChar == '_') {
 | 
			
		||||
//      return false;
 | 
			
		||||
//    } else {
 | 
			
		||||
//      return true;
 | 
			
		||||
//    }
 | 
			
		||||
//  }
 | 
			
		||||
//
 | 
			
		||||
//  /**
 | 
			
		||||
//   * This method will be called when we see '/*' and try to match it as a bracketed comment.
 | 
			
		||||
//   * If the next character is '+', it should be parsed as hint later, and we cannot match
 | 
			
		||||
//   * it as a bracketed comment.
 | 
			
		||||
//   *
 | 
			
		||||
//   * Returns true if the next character is '+'.
 | 
			
		||||
//   */
 | 
			
		||||
//  public boolean isHint() {
 | 
			
		||||
//    int nextChar = _input.LA(1);
 | 
			
		||||
//    if (nextChar == '+') {
 | 
			
		||||
//      return true;
 | 
			
		||||
//    } else {
 | 
			
		||||
//      return false;
 | 
			
		||||
//    }
 | 
			
		||||
//  }
 | 
			
		||||
//}
 | 
			
		||||
@lexer::members {
 | 
			
		||||
    var ctx = this
 | 
			
		||||
    /**
 | 
			
		||||
    * Verify whether current token is a valid decimal token (which contains dot).
 | 
			
		||||
    * Returns true if the character that follows the token is not a digit or letter or underscore.
 | 
			
		||||
    *
 | 
			
		||||
    * For example:
 | 
			
		||||
    * For char stream "2.3", "2." is not a valid decimal token, because it is followed by digit '3'.
 | 
			
		||||
    * For char stream "2.3_", "2.3" is not a valid decimal token, because it is followed by '_'.
 | 
			
		||||
    * For char stream "2.3W", "2.3" is not a valid decimal token, because it is followed by 'W'.
 | 
			
		||||
    * For char stream "12.0D 34.E2+0.12 "  12.0D is a valid decimal token because it is followed
 | 
			
		||||
    * by a space. 34.E2 is a valid decimal token because it is followed by symbol '+'
 | 
			
		||||
    * which is not a digit or letter or underscore.
 | 
			
		||||
    */
 | 
			
		||||
    global.isValidDecimal = function() {
 | 
			
		||||
        let nextChar = ctx._input.LA(1);
 | 
			
		||||
        return !(nextChar >= 'A' && nextChar <= 'Z' || nextChar >= '0' && nextChar <= '9' || nextChar == '_')
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
program: statement EOF;
 | 
			
		||||
    /**
 | 
			
		||||
    * This method will be called when we see '/*' and try to match it as a bracketed comment.
 | 
			
		||||
    * If the next character is '+', it should be parsed as hint later, and we cannot match
 | 
			
		||||
    * it as a bracketed comment.
 | 
			
		||||
    *
 | 
			
		||||
    * Returns true if the next character is '+'.
 | 
			
		||||
    */
 | 
			
		||||
    global.isHint = function() {
 | 
			
		||||
        let nextChar = ctx._input.LA(1);
 | 
			
		||||
        return nextChar == '+'
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
program
 | 
			
		||||
    : singleStatement EOF
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
singleStatement
 | 
			
		||||
    : statement ';'* EOF
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										735
									
								
								src/lib/spark/SqlBase.interp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										735
									
								
								src/lib/spark/SqlBase.interp
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										565
									
								
								src/lib/spark/SqlBase.tokens
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										565
									
								
								src/lib/spark/SqlBase.tokens
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,565 @@
 | 
			
		||||
T__0=1
 | 
			
		||||
T__1=2
 | 
			
		||||
T__2=3
 | 
			
		||||
T__3=4
 | 
			
		||||
T__4=5
 | 
			
		||||
T__5=6
 | 
			
		||||
T__6=7
 | 
			
		||||
T__7=8
 | 
			
		||||
T__8=9
 | 
			
		||||
T__9=10
 | 
			
		||||
T__10=11
 | 
			
		||||
ADD=12
 | 
			
		||||
AFTER=13
 | 
			
		||||
ALL=14
 | 
			
		||||
ALTER=15
 | 
			
		||||
ANALYZE=16
 | 
			
		||||
AND=17
 | 
			
		||||
ANTI=18
 | 
			
		||||
ANY=19
 | 
			
		||||
ARCHIVE=20
 | 
			
		||||
ARRAY=21
 | 
			
		||||
AS=22
 | 
			
		||||
ASC=23
 | 
			
		||||
AT=24
 | 
			
		||||
AUTHORIZATION=25
 | 
			
		||||
BETWEEN=26
 | 
			
		||||
BOTH=27
 | 
			
		||||
BUCKET=28
 | 
			
		||||
BUCKETS=29
 | 
			
		||||
BY=30
 | 
			
		||||
CACHE=31
 | 
			
		||||
CASCADE=32
 | 
			
		||||
CASE=33
 | 
			
		||||
CAST=34
 | 
			
		||||
CHANGE=35
 | 
			
		||||
CHECK=36
 | 
			
		||||
CLEAR=37
 | 
			
		||||
CLUSTER=38
 | 
			
		||||
CLUSTERED=39
 | 
			
		||||
CODEGEN=40
 | 
			
		||||
COLLATE=41
 | 
			
		||||
COLLECTION=42
 | 
			
		||||
COLUMN=43
 | 
			
		||||
COLUMNS=44
 | 
			
		||||
COMMENT=45
 | 
			
		||||
COMMIT=46
 | 
			
		||||
COMPACT=47
 | 
			
		||||
COMPACTIONS=48
 | 
			
		||||
COMPUTE=49
 | 
			
		||||
CONCATENATE=50
 | 
			
		||||
CONSTRAINT=51
 | 
			
		||||
COST=52
 | 
			
		||||
CREATE=53
 | 
			
		||||
CROSS=54
 | 
			
		||||
CUBE=55
 | 
			
		||||
CURRENT=56
 | 
			
		||||
CURRENT_DATE=57
 | 
			
		||||
CURRENT_TIME=58
 | 
			
		||||
CURRENT_TIMESTAMP=59
 | 
			
		||||
CURRENT_USER=60
 | 
			
		||||
DATA=61
 | 
			
		||||
DATABASE=62
 | 
			
		||||
DATABASES=63
 | 
			
		||||
DBPROPERTIES=64
 | 
			
		||||
DEFINED=65
 | 
			
		||||
DELETE=66
 | 
			
		||||
DELIMITED=67
 | 
			
		||||
DESC=68
 | 
			
		||||
DESCRIBE=69
 | 
			
		||||
DFS=70
 | 
			
		||||
DIRECTORIES=71
 | 
			
		||||
DIRECTORY=72
 | 
			
		||||
DISTINCT=73
 | 
			
		||||
DISTRIBUTE=74
 | 
			
		||||
DIV=75
 | 
			
		||||
DROP=76
 | 
			
		||||
ELSE=77
 | 
			
		||||
END=78
 | 
			
		||||
ESCAPE=79
 | 
			
		||||
ESCAPED=80
 | 
			
		||||
EXCEPT=81
 | 
			
		||||
EXCHANGE=82
 | 
			
		||||
EXISTS=83
 | 
			
		||||
EXPLAIN=84
 | 
			
		||||
EXPORT=85
 | 
			
		||||
EXTENDED=86
 | 
			
		||||
EXTERNAL=87
 | 
			
		||||
EXTRACT=88
 | 
			
		||||
FALSE=89
 | 
			
		||||
FETCH=90
 | 
			
		||||
FIELDS=91
 | 
			
		||||
FILTER=92
 | 
			
		||||
FILEFORMAT=93
 | 
			
		||||
FIRST=94
 | 
			
		||||
FOLLOWING=95
 | 
			
		||||
FOR=96
 | 
			
		||||
FOREIGN=97
 | 
			
		||||
FORMAT=98
 | 
			
		||||
FORMATTED=99
 | 
			
		||||
FROM=100
 | 
			
		||||
FULL=101
 | 
			
		||||
FUNCTION=102
 | 
			
		||||
FUNCTIONS=103
 | 
			
		||||
GLOBAL=104
 | 
			
		||||
GRANT=105
 | 
			
		||||
GROUP=106
 | 
			
		||||
GROUPING=107
 | 
			
		||||
HAVING=108
 | 
			
		||||
IF=109
 | 
			
		||||
IGNORE=110
 | 
			
		||||
IMPORT=111
 | 
			
		||||
IN=112
 | 
			
		||||
INDEX=113
 | 
			
		||||
INDEXES=114
 | 
			
		||||
INNER=115
 | 
			
		||||
INPATH=116
 | 
			
		||||
INPUTFORMAT=117
 | 
			
		||||
INSERT=118
 | 
			
		||||
INTERSECT=119
 | 
			
		||||
INTERVAL=120
 | 
			
		||||
INTO=121
 | 
			
		||||
IS=122
 | 
			
		||||
ITEMS=123
 | 
			
		||||
JOIN=124
 | 
			
		||||
KEYS=125
 | 
			
		||||
LAST=126
 | 
			
		||||
LATERAL=127
 | 
			
		||||
LAZY=128
 | 
			
		||||
LEADING=129
 | 
			
		||||
LEFT=130
 | 
			
		||||
LIKE=131
 | 
			
		||||
LIMIT=132
 | 
			
		||||
LINES=133
 | 
			
		||||
LIST=134
 | 
			
		||||
LOAD=135
 | 
			
		||||
LOCAL=136
 | 
			
		||||
LOCATION=137
 | 
			
		||||
LOCK=138
 | 
			
		||||
LOCKS=139
 | 
			
		||||
LOGICAL=140
 | 
			
		||||
MACRO=141
 | 
			
		||||
MAP=142
 | 
			
		||||
MATCHED=143
 | 
			
		||||
MERGE=144
 | 
			
		||||
MSCK=145
 | 
			
		||||
NAMESPACE=146
 | 
			
		||||
NAMESPACES=147
 | 
			
		||||
NATURAL=148
 | 
			
		||||
NO=149
 | 
			
		||||
NOT=150
 | 
			
		||||
NULL=151
 | 
			
		||||
NULLS=152
 | 
			
		||||
OF=153
 | 
			
		||||
ON=154
 | 
			
		||||
ONLY=155
 | 
			
		||||
OPTION=156
 | 
			
		||||
OPTIONS=157
 | 
			
		||||
OR=158
 | 
			
		||||
ORDER=159
 | 
			
		||||
OUT=160
 | 
			
		||||
OUTER=161
 | 
			
		||||
OUTPUTFORMAT=162
 | 
			
		||||
OVER=163
 | 
			
		||||
OVERLAPS=164
 | 
			
		||||
OVERLAY=165
 | 
			
		||||
OVERWRITE=166
 | 
			
		||||
PARTITION=167
 | 
			
		||||
PARTITIONED=168
 | 
			
		||||
PARTITIONS=169
 | 
			
		||||
PERCENTLIT=170
 | 
			
		||||
PIVOT=171
 | 
			
		||||
PLACING=172
 | 
			
		||||
POSITION=173
 | 
			
		||||
PRECEDING=174
 | 
			
		||||
PRIMARY=175
 | 
			
		||||
PRINCIPALS=176
 | 
			
		||||
PROPERTIES=177
 | 
			
		||||
PURGE=178
 | 
			
		||||
QUERY=179
 | 
			
		||||
RANGE=180
 | 
			
		||||
RECORDREADER=181
 | 
			
		||||
RECORDWRITER=182
 | 
			
		||||
RECOVER=183
 | 
			
		||||
REDUCE=184
 | 
			
		||||
REFERENCES=185
 | 
			
		||||
REFRESH=186
 | 
			
		||||
RENAME=187
 | 
			
		||||
REPAIR=188
 | 
			
		||||
REPLACE=189
 | 
			
		||||
RESET=190
 | 
			
		||||
RESTRICT=191
 | 
			
		||||
REVOKE=192
 | 
			
		||||
RIGHT=193
 | 
			
		||||
RLIKE=194
 | 
			
		||||
ROLE=195
 | 
			
		||||
ROLES=196
 | 
			
		||||
ROLLBACK=197
 | 
			
		||||
ROLLUP=198
 | 
			
		||||
ROW=199
 | 
			
		||||
ROWS=200
 | 
			
		||||
SCHEMA=201
 | 
			
		||||
SELECT=202
 | 
			
		||||
SEMI=203
 | 
			
		||||
SEPARATED=204
 | 
			
		||||
SERDE=205
 | 
			
		||||
SERDEPROPERTIES=206
 | 
			
		||||
SESSION_USER=207
 | 
			
		||||
SET=208
 | 
			
		||||
SETMINUS=209
 | 
			
		||||
SETS=210
 | 
			
		||||
SHOW=211
 | 
			
		||||
SKEWED=212
 | 
			
		||||
SOME=213
 | 
			
		||||
SORT=214
 | 
			
		||||
SORTED=215
 | 
			
		||||
START=216
 | 
			
		||||
STATISTICS=217
 | 
			
		||||
STORED=218
 | 
			
		||||
STRATIFY=219
 | 
			
		||||
STRUCT=220
 | 
			
		||||
SUBSTR=221
 | 
			
		||||
SUBSTRING=222
 | 
			
		||||
TABLE=223
 | 
			
		||||
TABLES=224
 | 
			
		||||
TABLESAMPLE=225
 | 
			
		||||
TBLPROPERTIES=226
 | 
			
		||||
TEMPORARY=227
 | 
			
		||||
TERMINATED=228
 | 
			
		||||
THEN=229
 | 
			
		||||
TIME=230
 | 
			
		||||
TO=231
 | 
			
		||||
TOUCH=232
 | 
			
		||||
TRAILING=233
 | 
			
		||||
TRANSACTION=234
 | 
			
		||||
TRANSACTIONS=235
 | 
			
		||||
TRANSFORM=236
 | 
			
		||||
TRIM=237
 | 
			
		||||
TRUE=238
 | 
			
		||||
TRUNCATE=239
 | 
			
		||||
TYPE=240
 | 
			
		||||
UNARCHIVE=241
 | 
			
		||||
UNBOUNDED=242
 | 
			
		||||
UNCACHE=243
 | 
			
		||||
UNION=244
 | 
			
		||||
UNIQUE=245
 | 
			
		||||
UNKNOWN=246
 | 
			
		||||
UNLOCK=247
 | 
			
		||||
UNSET=248
 | 
			
		||||
UPDATE=249
 | 
			
		||||
USE=250
 | 
			
		||||
USER=251
 | 
			
		||||
USING=252
 | 
			
		||||
VALUES=253
 | 
			
		||||
VIEW=254
 | 
			
		||||
VIEWS=255
 | 
			
		||||
WHEN=256
 | 
			
		||||
WHERE=257
 | 
			
		||||
WINDOW=258
 | 
			
		||||
WITH=259
 | 
			
		||||
ZONE=260
 | 
			
		||||
EQ=261
 | 
			
		||||
NSEQ=262
 | 
			
		||||
NEQ=263
 | 
			
		||||
NEQJ=264
 | 
			
		||||
LT=265
 | 
			
		||||
LTE=266
 | 
			
		||||
GT=267
 | 
			
		||||
GTE=268
 | 
			
		||||
PLUS=269
 | 
			
		||||
MINUS=270
 | 
			
		||||
ASTERISK=271
 | 
			
		||||
SLASH=272
 | 
			
		||||
PERCENT=273
 | 
			
		||||
TILDE=274
 | 
			
		||||
AMPERSAND=275
 | 
			
		||||
PIPE=276
 | 
			
		||||
CONCAT_PIPE=277
 | 
			
		||||
HAT=278
 | 
			
		||||
STRING=279
 | 
			
		||||
BIGINT_LITERAL=280
 | 
			
		||||
SMALLINT_LITERAL=281
 | 
			
		||||
TINYINT_LITERAL=282
 | 
			
		||||
INTEGER_VALUE=283
 | 
			
		||||
EXPONENT_VALUE=284
 | 
			
		||||
DECIMAL_VALUE=285
 | 
			
		||||
FLOAT_LITERAL=286
 | 
			
		||||
DOUBLE_LITERAL=287
 | 
			
		||||
BIGDECIMAL_LITERAL=288
 | 
			
		||||
IDENTIFIER=289
 | 
			
		||||
BACKQUOTED_IDENTIFIER=290
 | 
			
		||||
SIMPLE_COMMENT=291
 | 
			
		||||
BRACKETED_COMMENT=292
 | 
			
		||||
WS=293
 | 
			
		||||
UNRECOGNIZED=294
 | 
			
		||||
';'=1
 | 
			
		||||
'('=2
 | 
			
		||||
')'=3
 | 
			
		||||
','=4
 | 
			
		||||
'.'=5
 | 
			
		||||
'/*+'=6
 | 
			
		||||
'*/'=7
 | 
			
		||||
'->'=8
 | 
			
		||||
'['=9
 | 
			
		||||
']'=10
 | 
			
		||||
':'=11
 | 
			
		||||
'ADD'=12
 | 
			
		||||
'AFTER'=13
 | 
			
		||||
'ALL'=14
 | 
			
		||||
'ALTER'=15
 | 
			
		||||
'ANALYZE'=16
 | 
			
		||||
'AND'=17
 | 
			
		||||
'ANTI'=18
 | 
			
		||||
'ANY'=19
 | 
			
		||||
'ARCHIVE'=20
 | 
			
		||||
'ARRAY'=21
 | 
			
		||||
'AS'=22
 | 
			
		||||
'ASC'=23
 | 
			
		||||
'AT'=24
 | 
			
		||||
'AUTHORIZATION'=25
 | 
			
		||||
'BETWEEN'=26
 | 
			
		||||
'BOTH'=27
 | 
			
		||||
'BUCKET'=28
 | 
			
		||||
'BUCKETS'=29
 | 
			
		||||
'BY'=30
 | 
			
		||||
'CACHE'=31
 | 
			
		||||
'CASCADE'=32
 | 
			
		||||
'CASE'=33
 | 
			
		||||
'CAST'=34
 | 
			
		||||
'CHANGE'=35
 | 
			
		||||
'CHECK'=36
 | 
			
		||||
'CLEAR'=37
 | 
			
		||||
'CLUSTER'=38
 | 
			
		||||
'CLUSTERED'=39
 | 
			
		||||
'CODEGEN'=40
 | 
			
		||||
'COLLATE'=41
 | 
			
		||||
'COLLECTION'=42
 | 
			
		||||
'COLUMN'=43
 | 
			
		||||
'COLUMNS'=44
 | 
			
		||||
'COMMENT'=45
 | 
			
		||||
'COMMIT'=46
 | 
			
		||||
'COMPACT'=47
 | 
			
		||||
'COMPACTIONS'=48
 | 
			
		||||
'COMPUTE'=49
 | 
			
		||||
'CONCATENATE'=50
 | 
			
		||||
'CONSTRAINT'=51
 | 
			
		||||
'COST'=52
 | 
			
		||||
'CREATE'=53
 | 
			
		||||
'CROSS'=54
 | 
			
		||||
'CUBE'=55
 | 
			
		||||
'CURRENT'=56
 | 
			
		||||
'CURRENT_DATE'=57
 | 
			
		||||
'CURRENT_TIME'=58
 | 
			
		||||
'CURRENT_TIMESTAMP'=59
 | 
			
		||||
'CURRENT_USER'=60
 | 
			
		||||
'DATA'=61
 | 
			
		||||
'DATABASE'=62
 | 
			
		||||
'DBPROPERTIES'=64
 | 
			
		||||
'DEFINED'=65
 | 
			
		||||
'DELETE'=66
 | 
			
		||||
'DELIMITED'=67
 | 
			
		||||
'DESC'=68
 | 
			
		||||
'DESCRIBE'=69
 | 
			
		||||
'DFS'=70
 | 
			
		||||
'DIRECTORIES'=71
 | 
			
		||||
'DIRECTORY'=72
 | 
			
		||||
'DISTINCT'=73
 | 
			
		||||
'DISTRIBUTE'=74
 | 
			
		||||
'DIV'=75
 | 
			
		||||
'DROP'=76
 | 
			
		||||
'ELSE'=77
 | 
			
		||||
'END'=78
 | 
			
		||||
'ESCAPE'=79
 | 
			
		||||
'ESCAPED'=80
 | 
			
		||||
'EXCEPT'=81
 | 
			
		||||
'EXCHANGE'=82
 | 
			
		||||
'EXISTS'=83
 | 
			
		||||
'EXPLAIN'=84
 | 
			
		||||
'EXPORT'=85
 | 
			
		||||
'EXTENDED'=86
 | 
			
		||||
'EXTERNAL'=87
 | 
			
		||||
'EXTRACT'=88
 | 
			
		||||
'FALSE'=89
 | 
			
		||||
'FETCH'=90
 | 
			
		||||
'FIELDS'=91
 | 
			
		||||
'FILTER'=92
 | 
			
		||||
'FILEFORMAT'=93
 | 
			
		||||
'FIRST'=94
 | 
			
		||||
'FOLLOWING'=95
 | 
			
		||||
'FOR'=96
 | 
			
		||||
'FOREIGN'=97
 | 
			
		||||
'FORMAT'=98
 | 
			
		||||
'FORMATTED'=99
 | 
			
		||||
'FROM'=100
 | 
			
		||||
'FULL'=101
 | 
			
		||||
'FUNCTION'=102
 | 
			
		||||
'FUNCTIONS'=103
 | 
			
		||||
'GLOBAL'=104
 | 
			
		||||
'GRANT'=105
 | 
			
		||||
'GROUP'=106
 | 
			
		||||
'GROUPING'=107
 | 
			
		||||
'HAVING'=108
 | 
			
		||||
'IF'=109
 | 
			
		||||
'IGNORE'=110
 | 
			
		||||
'IMPORT'=111
 | 
			
		||||
'IN'=112
 | 
			
		||||
'INDEX'=113
 | 
			
		||||
'INDEXES'=114
 | 
			
		||||
'INNER'=115
 | 
			
		||||
'INPATH'=116
 | 
			
		||||
'INPUTFORMAT'=117
 | 
			
		||||
'INSERT'=118
 | 
			
		||||
'INTERSECT'=119
 | 
			
		||||
'INTERVAL'=120
 | 
			
		||||
'INTO'=121
 | 
			
		||||
'IS'=122
 | 
			
		||||
'ITEMS'=123
 | 
			
		||||
'JOIN'=124
 | 
			
		||||
'KEYS'=125
 | 
			
		||||
'LAST'=126
 | 
			
		||||
'LATERAL'=127
 | 
			
		||||
'LAZY'=128
 | 
			
		||||
'LEADING'=129
 | 
			
		||||
'LEFT'=130
 | 
			
		||||
'LIKE'=131
 | 
			
		||||
'LIMIT'=132
 | 
			
		||||
'LINES'=133
 | 
			
		||||
'LIST'=134
 | 
			
		||||
'LOAD'=135
 | 
			
		||||
'LOCAL'=136
 | 
			
		||||
'LOCATION'=137
 | 
			
		||||
'LOCK'=138
 | 
			
		||||
'LOCKS'=139
 | 
			
		||||
'LOGICAL'=140
 | 
			
		||||
'MACRO'=141
 | 
			
		||||
'MAP'=142
 | 
			
		||||
'MATCHED'=143
 | 
			
		||||
'MERGE'=144
 | 
			
		||||
'MSCK'=145
 | 
			
		||||
'NAMESPACE'=146
 | 
			
		||||
'NAMESPACES'=147
 | 
			
		||||
'NATURAL'=148
 | 
			
		||||
'NO'=149
 | 
			
		||||
'NULL'=151
 | 
			
		||||
'NULLS'=152
 | 
			
		||||
'OF'=153
 | 
			
		||||
'ON'=154
 | 
			
		||||
'ONLY'=155
 | 
			
		||||
'OPTION'=156
 | 
			
		||||
'OPTIONS'=157
 | 
			
		||||
'OR'=158
 | 
			
		||||
'ORDER'=159
 | 
			
		||||
'OUT'=160
 | 
			
		||||
'OUTER'=161
 | 
			
		||||
'OUTPUTFORMAT'=162
 | 
			
		||||
'OVER'=163
 | 
			
		||||
'OVERLAPS'=164
 | 
			
		||||
'OVERLAY'=165
 | 
			
		||||
'OVERWRITE'=166
 | 
			
		||||
'PARTITION'=167
 | 
			
		||||
'PARTITIONED'=168
 | 
			
		||||
'PARTITIONS'=169
 | 
			
		||||
'PERCENT'=170
 | 
			
		||||
'PIVOT'=171
 | 
			
		||||
'PLACING'=172
 | 
			
		||||
'POSITION'=173
 | 
			
		||||
'PRECEDING'=174
 | 
			
		||||
'PRIMARY'=175
 | 
			
		||||
'PRINCIPALS'=176
 | 
			
		||||
'PROPERTIES'=177
 | 
			
		||||
'PURGE'=178
 | 
			
		||||
'QUERY'=179
 | 
			
		||||
'RANGE'=180
 | 
			
		||||
'RECORDREADER'=181
 | 
			
		||||
'RECORDWRITER'=182
 | 
			
		||||
'RECOVER'=183
 | 
			
		||||
'REDUCE'=184
 | 
			
		||||
'REFERENCES'=185
 | 
			
		||||
'REFRESH'=186
 | 
			
		||||
'RENAME'=187
 | 
			
		||||
'REPAIR'=188
 | 
			
		||||
'REPLACE'=189
 | 
			
		||||
'RESET'=190
 | 
			
		||||
'RESTRICT'=191
 | 
			
		||||
'REVOKE'=192
 | 
			
		||||
'RIGHT'=193
 | 
			
		||||
'ROLE'=195
 | 
			
		||||
'ROLES'=196
 | 
			
		||||
'ROLLBACK'=197
 | 
			
		||||
'ROLLUP'=198
 | 
			
		||||
'ROW'=199
 | 
			
		||||
'ROWS'=200
 | 
			
		||||
'SCHEMA'=201
 | 
			
		||||
'SELECT'=202
 | 
			
		||||
'SEMI'=203
 | 
			
		||||
'SEPARATED'=204
 | 
			
		||||
'SERDE'=205
 | 
			
		||||
'SERDEPROPERTIES'=206
 | 
			
		||||
'SESSION_USER'=207
 | 
			
		||||
'SET'=208
 | 
			
		||||
'MINUS'=209
 | 
			
		||||
'SETS'=210
 | 
			
		||||
'SHOW'=211
 | 
			
		||||
'SKEWED'=212
 | 
			
		||||
'SOME'=213
 | 
			
		||||
'SORT'=214
 | 
			
		||||
'SORTED'=215
 | 
			
		||||
'START'=216
 | 
			
		||||
'STATISTICS'=217
 | 
			
		||||
'STORED'=218
 | 
			
		||||
'STRATIFY'=219
 | 
			
		||||
'STRUCT'=220
 | 
			
		||||
'SUBSTR'=221
 | 
			
		||||
'SUBSTRING'=222
 | 
			
		||||
'TABLE'=223
 | 
			
		||||
'TABLES'=224
 | 
			
		||||
'TABLESAMPLE'=225
 | 
			
		||||
'TBLPROPERTIES'=226
 | 
			
		||||
'TERMINATED'=228
 | 
			
		||||
'THEN'=229
 | 
			
		||||
'TIME'=230
 | 
			
		||||
'TO'=231
 | 
			
		||||
'TOUCH'=232
 | 
			
		||||
'TRAILING'=233
 | 
			
		||||
'TRANSACTION'=234
 | 
			
		||||
'TRANSACTIONS'=235
 | 
			
		||||
'TRANSFORM'=236
 | 
			
		||||
'TRIM'=237
 | 
			
		||||
'TRUE'=238
 | 
			
		||||
'TRUNCATE'=239
 | 
			
		||||
'TYPE'=240
 | 
			
		||||
'UNARCHIVE'=241
 | 
			
		||||
'UNBOUNDED'=242
 | 
			
		||||
'UNCACHE'=243
 | 
			
		||||
'UNION'=244
 | 
			
		||||
'UNIQUE'=245
 | 
			
		||||
'UNKNOWN'=246
 | 
			
		||||
'UNLOCK'=247
 | 
			
		||||
'UNSET'=248
 | 
			
		||||
'UPDATE'=249
 | 
			
		||||
'USE'=250
 | 
			
		||||
'USER'=251
 | 
			
		||||
'USING'=252
 | 
			
		||||
'VALUES'=253
 | 
			
		||||
'VIEW'=254
 | 
			
		||||
'VIEWS'=255
 | 
			
		||||
'WHEN'=256
 | 
			
		||||
'WHERE'=257
 | 
			
		||||
'WINDOW'=258
 | 
			
		||||
'WITH'=259
 | 
			
		||||
'ZONE'=260
 | 
			
		||||
'<=>'=262
 | 
			
		||||
'<>'=263
 | 
			
		||||
'!='=264
 | 
			
		||||
'<'=265
 | 
			
		||||
'>'=267
 | 
			
		||||
'+'=269
 | 
			
		||||
'-'=270
 | 
			
		||||
'*'=271
 | 
			
		||||
'/'=272
 | 
			
		||||
'%'=273
 | 
			
		||||
'~'=274
 | 
			
		||||
'&'=275
 | 
			
		||||
'|'=276
 | 
			
		||||
'||'=277
 | 
			
		||||
'^'=278
 | 
			
		||||
							
								
								
									
										903
									
								
								src/lib/spark/SqlBaseLexer.interp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										903
									
								
								src/lib/spark/SqlBaseLexer.interp
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										2436
									
								
								src/lib/spark/SqlBaseLexer.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2436
									
								
								src/lib/spark/SqlBaseLexer.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										565
									
								
								src/lib/spark/SqlBaseLexer.tokens
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										565
									
								
								src/lib/spark/SqlBaseLexer.tokens
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,565 @@
 | 
			
		||||
T__0=1
 | 
			
		||||
T__1=2
 | 
			
		||||
T__2=3
 | 
			
		||||
T__3=4
 | 
			
		||||
T__4=5
 | 
			
		||||
T__5=6
 | 
			
		||||
T__6=7
 | 
			
		||||
T__7=8
 | 
			
		||||
T__8=9
 | 
			
		||||
T__9=10
 | 
			
		||||
T__10=11
 | 
			
		||||
ADD=12
 | 
			
		||||
AFTER=13
 | 
			
		||||
ALL=14
 | 
			
		||||
ALTER=15
 | 
			
		||||
ANALYZE=16
 | 
			
		||||
AND=17
 | 
			
		||||
ANTI=18
 | 
			
		||||
ANY=19
 | 
			
		||||
ARCHIVE=20
 | 
			
		||||
ARRAY=21
 | 
			
		||||
AS=22
 | 
			
		||||
ASC=23
 | 
			
		||||
AT=24
 | 
			
		||||
AUTHORIZATION=25
 | 
			
		||||
BETWEEN=26
 | 
			
		||||
BOTH=27
 | 
			
		||||
BUCKET=28
 | 
			
		||||
BUCKETS=29
 | 
			
		||||
BY=30
 | 
			
		||||
CACHE=31
 | 
			
		||||
CASCADE=32
 | 
			
		||||
CASE=33
 | 
			
		||||
CAST=34
 | 
			
		||||
CHANGE=35
 | 
			
		||||
CHECK=36
 | 
			
		||||
CLEAR=37
 | 
			
		||||
CLUSTER=38
 | 
			
		||||
CLUSTERED=39
 | 
			
		||||
CODEGEN=40
 | 
			
		||||
COLLATE=41
 | 
			
		||||
COLLECTION=42
 | 
			
		||||
COLUMN=43
 | 
			
		||||
COLUMNS=44
 | 
			
		||||
COMMENT=45
 | 
			
		||||
COMMIT=46
 | 
			
		||||
COMPACT=47
 | 
			
		||||
COMPACTIONS=48
 | 
			
		||||
COMPUTE=49
 | 
			
		||||
CONCATENATE=50
 | 
			
		||||
CONSTRAINT=51
 | 
			
		||||
COST=52
 | 
			
		||||
CREATE=53
 | 
			
		||||
CROSS=54
 | 
			
		||||
CUBE=55
 | 
			
		||||
CURRENT=56
 | 
			
		||||
CURRENT_DATE=57
 | 
			
		||||
CURRENT_TIME=58
 | 
			
		||||
CURRENT_TIMESTAMP=59
 | 
			
		||||
CURRENT_USER=60
 | 
			
		||||
DATA=61
 | 
			
		||||
DATABASE=62
 | 
			
		||||
DATABASES=63
 | 
			
		||||
DBPROPERTIES=64
 | 
			
		||||
DEFINED=65
 | 
			
		||||
DELETE=66
 | 
			
		||||
DELIMITED=67
 | 
			
		||||
DESC=68
 | 
			
		||||
DESCRIBE=69
 | 
			
		||||
DFS=70
 | 
			
		||||
DIRECTORIES=71
 | 
			
		||||
DIRECTORY=72
 | 
			
		||||
DISTINCT=73
 | 
			
		||||
DISTRIBUTE=74
 | 
			
		||||
DIV=75
 | 
			
		||||
DROP=76
 | 
			
		||||
ELSE=77
 | 
			
		||||
END=78
 | 
			
		||||
ESCAPE=79
 | 
			
		||||
ESCAPED=80
 | 
			
		||||
EXCEPT=81
 | 
			
		||||
EXCHANGE=82
 | 
			
		||||
EXISTS=83
 | 
			
		||||
EXPLAIN=84
 | 
			
		||||
EXPORT=85
 | 
			
		||||
EXTENDED=86
 | 
			
		||||
EXTERNAL=87
 | 
			
		||||
EXTRACT=88
 | 
			
		||||
FALSE=89
 | 
			
		||||
FETCH=90
 | 
			
		||||
FIELDS=91
 | 
			
		||||
FILTER=92
 | 
			
		||||
FILEFORMAT=93
 | 
			
		||||
FIRST=94
 | 
			
		||||
FOLLOWING=95
 | 
			
		||||
FOR=96
 | 
			
		||||
FOREIGN=97
 | 
			
		||||
FORMAT=98
 | 
			
		||||
FORMATTED=99
 | 
			
		||||
FROM=100
 | 
			
		||||
FULL=101
 | 
			
		||||
FUNCTION=102
 | 
			
		||||
FUNCTIONS=103
 | 
			
		||||
GLOBAL=104
 | 
			
		||||
GRANT=105
 | 
			
		||||
GROUP=106
 | 
			
		||||
GROUPING=107
 | 
			
		||||
HAVING=108
 | 
			
		||||
IF=109
 | 
			
		||||
IGNORE=110
 | 
			
		||||
IMPORT=111
 | 
			
		||||
IN=112
 | 
			
		||||
INDEX=113
 | 
			
		||||
INDEXES=114
 | 
			
		||||
INNER=115
 | 
			
		||||
INPATH=116
 | 
			
		||||
INPUTFORMAT=117
 | 
			
		||||
INSERT=118
 | 
			
		||||
INTERSECT=119
 | 
			
		||||
INTERVAL=120
 | 
			
		||||
INTO=121
 | 
			
		||||
IS=122
 | 
			
		||||
ITEMS=123
 | 
			
		||||
JOIN=124
 | 
			
		||||
KEYS=125
 | 
			
		||||
LAST=126
 | 
			
		||||
LATERAL=127
 | 
			
		||||
LAZY=128
 | 
			
		||||
LEADING=129
 | 
			
		||||
LEFT=130
 | 
			
		||||
LIKE=131
 | 
			
		||||
LIMIT=132
 | 
			
		||||
LINES=133
 | 
			
		||||
LIST=134
 | 
			
		||||
LOAD=135
 | 
			
		||||
LOCAL=136
 | 
			
		||||
LOCATION=137
 | 
			
		||||
LOCK=138
 | 
			
		||||
LOCKS=139
 | 
			
		||||
LOGICAL=140
 | 
			
		||||
MACRO=141
 | 
			
		||||
MAP=142
 | 
			
		||||
MATCHED=143
 | 
			
		||||
MERGE=144
 | 
			
		||||
MSCK=145
 | 
			
		||||
NAMESPACE=146
 | 
			
		||||
NAMESPACES=147
 | 
			
		||||
NATURAL=148
 | 
			
		||||
NO=149
 | 
			
		||||
NOT=150
 | 
			
		||||
NULL=151
 | 
			
		||||
NULLS=152
 | 
			
		||||
OF=153
 | 
			
		||||
ON=154
 | 
			
		||||
ONLY=155
 | 
			
		||||
OPTION=156
 | 
			
		||||
OPTIONS=157
 | 
			
		||||
OR=158
 | 
			
		||||
ORDER=159
 | 
			
		||||
OUT=160
 | 
			
		||||
OUTER=161
 | 
			
		||||
OUTPUTFORMAT=162
 | 
			
		||||
OVER=163
 | 
			
		||||
OVERLAPS=164
 | 
			
		||||
OVERLAY=165
 | 
			
		||||
OVERWRITE=166
 | 
			
		||||
PARTITION=167
 | 
			
		||||
PARTITIONED=168
 | 
			
		||||
PARTITIONS=169
 | 
			
		||||
PERCENTLIT=170
 | 
			
		||||
PIVOT=171
 | 
			
		||||
PLACING=172
 | 
			
		||||
POSITION=173
 | 
			
		||||
PRECEDING=174
 | 
			
		||||
PRIMARY=175
 | 
			
		||||
PRINCIPALS=176
 | 
			
		||||
PROPERTIES=177
 | 
			
		||||
PURGE=178
 | 
			
		||||
QUERY=179
 | 
			
		||||
RANGE=180
 | 
			
		||||
RECORDREADER=181
 | 
			
		||||
RECORDWRITER=182
 | 
			
		||||
RECOVER=183
 | 
			
		||||
REDUCE=184
 | 
			
		||||
REFERENCES=185
 | 
			
		||||
REFRESH=186
 | 
			
		||||
RENAME=187
 | 
			
		||||
REPAIR=188
 | 
			
		||||
REPLACE=189
 | 
			
		||||
RESET=190
 | 
			
		||||
RESTRICT=191
 | 
			
		||||
REVOKE=192
 | 
			
		||||
RIGHT=193
 | 
			
		||||
RLIKE=194
 | 
			
		||||
ROLE=195
 | 
			
		||||
ROLES=196
 | 
			
		||||
ROLLBACK=197
 | 
			
		||||
ROLLUP=198
 | 
			
		||||
ROW=199
 | 
			
		||||
ROWS=200
 | 
			
		||||
SCHEMA=201
 | 
			
		||||
SELECT=202
 | 
			
		||||
SEMI=203
 | 
			
		||||
SEPARATED=204
 | 
			
		||||
SERDE=205
 | 
			
		||||
SERDEPROPERTIES=206
 | 
			
		||||
SESSION_USER=207
 | 
			
		||||
SET=208
 | 
			
		||||
SETMINUS=209
 | 
			
		||||
SETS=210
 | 
			
		||||
SHOW=211
 | 
			
		||||
SKEWED=212
 | 
			
		||||
SOME=213
 | 
			
		||||
SORT=214
 | 
			
		||||
SORTED=215
 | 
			
		||||
START=216
 | 
			
		||||
STATISTICS=217
 | 
			
		||||
STORED=218
 | 
			
		||||
STRATIFY=219
 | 
			
		||||
STRUCT=220
 | 
			
		||||
SUBSTR=221
 | 
			
		||||
SUBSTRING=222
 | 
			
		||||
TABLE=223
 | 
			
		||||
TABLES=224
 | 
			
		||||
TABLESAMPLE=225
 | 
			
		||||
TBLPROPERTIES=226
 | 
			
		||||
TEMPORARY=227
 | 
			
		||||
TERMINATED=228
 | 
			
		||||
THEN=229
 | 
			
		||||
TIME=230
 | 
			
		||||
TO=231
 | 
			
		||||
TOUCH=232
 | 
			
		||||
TRAILING=233
 | 
			
		||||
TRANSACTION=234
 | 
			
		||||
TRANSACTIONS=235
 | 
			
		||||
TRANSFORM=236
 | 
			
		||||
TRIM=237
 | 
			
		||||
TRUE=238
 | 
			
		||||
TRUNCATE=239
 | 
			
		||||
TYPE=240
 | 
			
		||||
UNARCHIVE=241
 | 
			
		||||
UNBOUNDED=242
 | 
			
		||||
UNCACHE=243
 | 
			
		||||
UNION=244
 | 
			
		||||
UNIQUE=245
 | 
			
		||||
UNKNOWN=246
 | 
			
		||||
UNLOCK=247
 | 
			
		||||
UNSET=248
 | 
			
		||||
UPDATE=249
 | 
			
		||||
USE=250
 | 
			
		||||
USER=251
 | 
			
		||||
USING=252
 | 
			
		||||
VALUES=253
 | 
			
		||||
VIEW=254
 | 
			
		||||
VIEWS=255
 | 
			
		||||
WHEN=256
 | 
			
		||||
WHERE=257
 | 
			
		||||
WINDOW=258
 | 
			
		||||
WITH=259
 | 
			
		||||
ZONE=260
 | 
			
		||||
EQ=261
 | 
			
		||||
NSEQ=262
 | 
			
		||||
NEQ=263
 | 
			
		||||
NEQJ=264
 | 
			
		||||
LT=265
 | 
			
		||||
LTE=266
 | 
			
		||||
GT=267
 | 
			
		||||
GTE=268
 | 
			
		||||
PLUS=269
 | 
			
		||||
MINUS=270
 | 
			
		||||
ASTERISK=271
 | 
			
		||||
SLASH=272
 | 
			
		||||
PERCENT=273
 | 
			
		||||
TILDE=274
 | 
			
		||||
AMPERSAND=275
 | 
			
		||||
PIPE=276
 | 
			
		||||
CONCAT_PIPE=277
 | 
			
		||||
HAT=278
 | 
			
		||||
STRING=279
 | 
			
		||||
BIGINT_LITERAL=280
 | 
			
		||||
SMALLINT_LITERAL=281
 | 
			
		||||
TINYINT_LITERAL=282
 | 
			
		||||
INTEGER_VALUE=283
 | 
			
		||||
EXPONENT_VALUE=284
 | 
			
		||||
DECIMAL_VALUE=285
 | 
			
		||||
FLOAT_LITERAL=286
 | 
			
		||||
DOUBLE_LITERAL=287
 | 
			
		||||
BIGDECIMAL_LITERAL=288
 | 
			
		||||
IDENTIFIER=289
 | 
			
		||||
BACKQUOTED_IDENTIFIER=290
 | 
			
		||||
SIMPLE_COMMENT=291
 | 
			
		||||
BRACKETED_COMMENT=292
 | 
			
		||||
WS=293
 | 
			
		||||
UNRECOGNIZED=294
 | 
			
		||||
';'=1
 | 
			
		||||
'('=2
 | 
			
		||||
')'=3
 | 
			
		||||
','=4
 | 
			
		||||
'.'=5
 | 
			
		||||
'/*+'=6
 | 
			
		||||
'*/'=7
 | 
			
		||||
'->'=8
 | 
			
		||||
'['=9
 | 
			
		||||
']'=10
 | 
			
		||||
':'=11
 | 
			
		||||
'ADD'=12
 | 
			
		||||
'AFTER'=13
 | 
			
		||||
'ALL'=14
 | 
			
		||||
'ALTER'=15
 | 
			
		||||
'ANALYZE'=16
 | 
			
		||||
'AND'=17
 | 
			
		||||
'ANTI'=18
 | 
			
		||||
'ANY'=19
 | 
			
		||||
'ARCHIVE'=20
 | 
			
		||||
'ARRAY'=21
 | 
			
		||||
'AS'=22
 | 
			
		||||
'ASC'=23
 | 
			
		||||
'AT'=24
 | 
			
		||||
'AUTHORIZATION'=25
 | 
			
		||||
'BETWEEN'=26
 | 
			
		||||
'BOTH'=27
 | 
			
		||||
'BUCKET'=28
 | 
			
		||||
'BUCKETS'=29
 | 
			
		||||
'BY'=30
 | 
			
		||||
'CACHE'=31
 | 
			
		||||
'CASCADE'=32
 | 
			
		||||
'CASE'=33
 | 
			
		||||
'CAST'=34
 | 
			
		||||
'CHANGE'=35
 | 
			
		||||
'CHECK'=36
 | 
			
		||||
'CLEAR'=37
 | 
			
		||||
'CLUSTER'=38
 | 
			
		||||
'CLUSTERED'=39
 | 
			
		||||
'CODEGEN'=40
 | 
			
		||||
'COLLATE'=41
 | 
			
		||||
'COLLECTION'=42
 | 
			
		||||
'COLUMN'=43
 | 
			
		||||
'COLUMNS'=44
 | 
			
		||||
'COMMENT'=45
 | 
			
		||||
'COMMIT'=46
 | 
			
		||||
'COMPACT'=47
 | 
			
		||||
'COMPACTIONS'=48
 | 
			
		||||
'COMPUTE'=49
 | 
			
		||||
'CONCATENATE'=50
 | 
			
		||||
'CONSTRAINT'=51
 | 
			
		||||
'COST'=52
 | 
			
		||||
'CREATE'=53
 | 
			
		||||
'CROSS'=54
 | 
			
		||||
'CUBE'=55
 | 
			
		||||
'CURRENT'=56
 | 
			
		||||
'CURRENT_DATE'=57
 | 
			
		||||
'CURRENT_TIME'=58
 | 
			
		||||
'CURRENT_TIMESTAMP'=59
 | 
			
		||||
'CURRENT_USER'=60
 | 
			
		||||
'DATA'=61
 | 
			
		||||
'DATABASE'=62
 | 
			
		||||
'DBPROPERTIES'=64
 | 
			
		||||
'DEFINED'=65
 | 
			
		||||
'DELETE'=66
 | 
			
		||||
'DELIMITED'=67
 | 
			
		||||
'DESC'=68
 | 
			
		||||
'DESCRIBE'=69
 | 
			
		||||
'DFS'=70
 | 
			
		||||
'DIRECTORIES'=71
 | 
			
		||||
'DIRECTORY'=72
 | 
			
		||||
'DISTINCT'=73
 | 
			
		||||
'DISTRIBUTE'=74
 | 
			
		||||
'DIV'=75
 | 
			
		||||
'DROP'=76
 | 
			
		||||
'ELSE'=77
 | 
			
		||||
'END'=78
 | 
			
		||||
'ESCAPE'=79
 | 
			
		||||
'ESCAPED'=80
 | 
			
		||||
'EXCEPT'=81
 | 
			
		||||
'EXCHANGE'=82
 | 
			
		||||
'EXISTS'=83
 | 
			
		||||
'EXPLAIN'=84
 | 
			
		||||
'EXPORT'=85
 | 
			
		||||
'EXTENDED'=86
 | 
			
		||||
'EXTERNAL'=87
 | 
			
		||||
'EXTRACT'=88
 | 
			
		||||
'FALSE'=89
 | 
			
		||||
'FETCH'=90
 | 
			
		||||
'FIELDS'=91
 | 
			
		||||
'FILTER'=92
 | 
			
		||||
'FILEFORMAT'=93
 | 
			
		||||
'FIRST'=94
 | 
			
		||||
'FOLLOWING'=95
 | 
			
		||||
'FOR'=96
 | 
			
		||||
'FOREIGN'=97
 | 
			
		||||
'FORMAT'=98
 | 
			
		||||
'FORMATTED'=99
 | 
			
		||||
'FROM'=100
 | 
			
		||||
'FULL'=101
 | 
			
		||||
'FUNCTION'=102
 | 
			
		||||
'FUNCTIONS'=103
 | 
			
		||||
'GLOBAL'=104
 | 
			
		||||
'GRANT'=105
 | 
			
		||||
'GROUP'=106
 | 
			
		||||
'GROUPING'=107
 | 
			
		||||
'HAVING'=108
 | 
			
		||||
'IF'=109
 | 
			
		||||
'IGNORE'=110
 | 
			
		||||
'IMPORT'=111
 | 
			
		||||
'IN'=112
 | 
			
		||||
'INDEX'=113
 | 
			
		||||
'INDEXES'=114
 | 
			
		||||
'INNER'=115
 | 
			
		||||
'INPATH'=116
 | 
			
		||||
'INPUTFORMAT'=117
 | 
			
		||||
'INSERT'=118
 | 
			
		||||
'INTERSECT'=119
 | 
			
		||||
'INTERVAL'=120
 | 
			
		||||
'INTO'=121
 | 
			
		||||
'IS'=122
 | 
			
		||||
'ITEMS'=123
 | 
			
		||||
'JOIN'=124
 | 
			
		||||
'KEYS'=125
 | 
			
		||||
'LAST'=126
 | 
			
		||||
'LATERAL'=127
 | 
			
		||||
'LAZY'=128
 | 
			
		||||
'LEADING'=129
 | 
			
		||||
'LEFT'=130
 | 
			
		||||
'LIKE'=131
 | 
			
		||||
'LIMIT'=132
 | 
			
		||||
'LINES'=133
 | 
			
		||||
'LIST'=134
 | 
			
		||||
'LOAD'=135
 | 
			
		||||
'LOCAL'=136
 | 
			
		||||
'LOCATION'=137
 | 
			
		||||
'LOCK'=138
 | 
			
		||||
'LOCKS'=139
 | 
			
		||||
'LOGICAL'=140
 | 
			
		||||
'MACRO'=141
 | 
			
		||||
'MAP'=142
 | 
			
		||||
'MATCHED'=143
 | 
			
		||||
'MERGE'=144
 | 
			
		||||
'MSCK'=145
 | 
			
		||||
'NAMESPACE'=146
 | 
			
		||||
'NAMESPACES'=147
 | 
			
		||||
'NATURAL'=148
 | 
			
		||||
'NO'=149
 | 
			
		||||
'NULL'=151
 | 
			
		||||
'NULLS'=152
 | 
			
		||||
'OF'=153
 | 
			
		||||
'ON'=154
 | 
			
		||||
'ONLY'=155
 | 
			
		||||
'OPTION'=156
 | 
			
		||||
'OPTIONS'=157
 | 
			
		||||
'OR'=158
 | 
			
		||||
'ORDER'=159
 | 
			
		||||
'OUT'=160
 | 
			
		||||
'OUTER'=161
 | 
			
		||||
'OUTPUTFORMAT'=162
 | 
			
		||||
'OVER'=163
 | 
			
		||||
'OVERLAPS'=164
 | 
			
		||||
'OVERLAY'=165
 | 
			
		||||
'OVERWRITE'=166
 | 
			
		||||
'PARTITION'=167
 | 
			
		||||
'PARTITIONED'=168
 | 
			
		||||
'PARTITIONS'=169
 | 
			
		||||
'PERCENT'=170
 | 
			
		||||
'PIVOT'=171
 | 
			
		||||
'PLACING'=172
 | 
			
		||||
'POSITION'=173
 | 
			
		||||
'PRECEDING'=174
 | 
			
		||||
'PRIMARY'=175
 | 
			
		||||
'PRINCIPALS'=176
 | 
			
		||||
'PROPERTIES'=177
 | 
			
		||||
'PURGE'=178
 | 
			
		||||
'QUERY'=179
 | 
			
		||||
'RANGE'=180
 | 
			
		||||
'RECORDREADER'=181
 | 
			
		||||
'RECORDWRITER'=182
 | 
			
		||||
'RECOVER'=183
 | 
			
		||||
'REDUCE'=184
 | 
			
		||||
'REFERENCES'=185
 | 
			
		||||
'REFRESH'=186
 | 
			
		||||
'RENAME'=187
 | 
			
		||||
'REPAIR'=188
 | 
			
		||||
'REPLACE'=189
 | 
			
		||||
'RESET'=190
 | 
			
		||||
'RESTRICT'=191
 | 
			
		||||
'REVOKE'=192
 | 
			
		||||
'RIGHT'=193
 | 
			
		||||
'ROLE'=195
 | 
			
		||||
'ROLES'=196
 | 
			
		||||
'ROLLBACK'=197
 | 
			
		||||
'ROLLUP'=198
 | 
			
		||||
'ROW'=199
 | 
			
		||||
'ROWS'=200
 | 
			
		||||
'SCHEMA'=201
 | 
			
		||||
'SELECT'=202
 | 
			
		||||
'SEMI'=203
 | 
			
		||||
'SEPARATED'=204
 | 
			
		||||
'SERDE'=205
 | 
			
		||||
'SERDEPROPERTIES'=206
 | 
			
		||||
'SESSION_USER'=207
 | 
			
		||||
'SET'=208
 | 
			
		||||
'MINUS'=209
 | 
			
		||||
'SETS'=210
 | 
			
		||||
'SHOW'=211
 | 
			
		||||
'SKEWED'=212
 | 
			
		||||
'SOME'=213
 | 
			
		||||
'SORT'=214
 | 
			
		||||
'SORTED'=215
 | 
			
		||||
'START'=216
 | 
			
		||||
'STATISTICS'=217
 | 
			
		||||
'STORED'=218
 | 
			
		||||
'STRATIFY'=219
 | 
			
		||||
'STRUCT'=220
 | 
			
		||||
'SUBSTR'=221
 | 
			
		||||
'SUBSTRING'=222
 | 
			
		||||
'TABLE'=223
 | 
			
		||||
'TABLES'=224
 | 
			
		||||
'TABLESAMPLE'=225
 | 
			
		||||
'TBLPROPERTIES'=226
 | 
			
		||||
'TERMINATED'=228
 | 
			
		||||
'THEN'=229
 | 
			
		||||
'TIME'=230
 | 
			
		||||
'TO'=231
 | 
			
		||||
'TOUCH'=232
 | 
			
		||||
'TRAILING'=233
 | 
			
		||||
'TRANSACTION'=234
 | 
			
		||||
'TRANSACTIONS'=235
 | 
			
		||||
'TRANSFORM'=236
 | 
			
		||||
'TRIM'=237
 | 
			
		||||
'TRUE'=238
 | 
			
		||||
'TRUNCATE'=239
 | 
			
		||||
'TYPE'=240
 | 
			
		||||
'UNARCHIVE'=241
 | 
			
		||||
'UNBOUNDED'=242
 | 
			
		||||
'UNCACHE'=243
 | 
			
		||||
'UNION'=244
 | 
			
		||||
'UNIQUE'=245
 | 
			
		||||
'UNKNOWN'=246
 | 
			
		||||
'UNLOCK'=247
 | 
			
		||||
'UNSET'=248
 | 
			
		||||
'UPDATE'=249
 | 
			
		||||
'USE'=250
 | 
			
		||||
'USER'=251
 | 
			
		||||
'USING'=252
 | 
			
		||||
'VALUES'=253
 | 
			
		||||
'VIEW'=254
 | 
			
		||||
'VIEWS'=255
 | 
			
		||||
'WHEN'=256
 | 
			
		||||
'WHERE'=257
 | 
			
		||||
'WINDOW'=258
 | 
			
		||||
'WITH'=259
 | 
			
		||||
'ZONE'=260
 | 
			
		||||
'<=>'=262
 | 
			
		||||
'<>'=263
 | 
			
		||||
'!='=264
 | 
			
		||||
'<'=265
 | 
			
		||||
'>'=267
 | 
			
		||||
'+'=269
 | 
			
		||||
'-'=270
 | 
			
		||||
'*'=271
 | 
			
		||||
'/'=272
 | 
			
		||||
'%'=273
 | 
			
		||||
'~'=274
 | 
			
		||||
'&'=275
 | 
			
		||||
'|'=276
 | 
			
		||||
'||'=277
 | 
			
		||||
'^'=278
 | 
			
		||||
							
								
								
									
										2445
									
								
								src/lib/spark/SqlBaseListener.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2445
									
								
								src/lib/spark/SqlBaseListener.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										31285
									
								
								src/lib/spark/SqlBaseParser.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31285
									
								
								src/lib/spark/SqlBaseParser.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1636
									
								
								src/lib/spark/SqlBaseVisitor.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1636
									
								
								src/lib/spark/SqlBaseVisitor.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user