@dbml/core 3.0.0 → 3.1.1

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.
@@ -0,0 +1,1357 @@
1
+ /*
2
+ Original: https://github.com/antlr/grammars-v4/blob/master/sql/mysql/Positive-Technologies/MySqlLexer.g4
3
+ Last updated: 2023-12-05
4
+ */
5
+
6
+ /*
7
+ MySQL (Positive Technologies) grammar
8
+ The MIT License (MIT).
9
+ Copyright (c) 2015-2017, Ivan Kochurkin (kvanttt@gmail.com), Positive Technologies.
10
+ Copyright (c) 2017, Ivan Khudyashev (IHudyashov@ptsecurity.com)
11
+
12
+ Permission is hereby granted, free of charge, to any person obtaining a copy
13
+ of this software and associated documentation files (the "Software"), to deal
14
+ in the Software without restriction, including without limitation the rights
15
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
16
+ copies of the Software, and to permit persons to whom the Software is
17
+ furnished to do so, subject to the following conditions:
18
+
19
+ The above copyright notice and this permission notice shall be included in
20
+ all copies or substantial portions of the Software.
21
+
22
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
25
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
27
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
28
+ THE SOFTWARE.
29
+ */
30
+
31
+ // $antlr-format alignTrailingComments true, columnLimit 150, maxEmptyLinesToKeep 1, reflowComments false, useTab false
32
+ // $antlr-format allowShortRulesOnASingleLine true, allowShortBlocksOnASingleLine true, minEmptyLines 0, alignSemicolons ownLine
33
+ // $antlr-format alignColons trailing, singleLineOverrulesHangingColon true, alignLexerCommands true, alignLabels true, alignTrailers true
34
+
35
+ lexer grammar MySqlLexer;
36
+
37
+ options {
38
+ caseInsensitive = true;
39
+ }
40
+
41
+ channels {
42
+ MYSQLCOMMENT,
43
+ ERRORCHANNEL
44
+ }
45
+
46
+ // SKIP
47
+
48
+ SPACE : [ \t\r\n]+ -> channel(HIDDEN);
49
+ SPEC_MYSQL_COMMENT : '/*!' .+? '*/' -> channel(MYSQLCOMMENT);
50
+ COMMENT_INPUT : '/*' .*? '*/' -> channel(HIDDEN);
51
+ LINE_COMMENT:
52
+ (('--' [ \t]* | '#') ~[\r\n]* ('\r'? '\n' | EOF) | '--' ('\r'? '\n' | EOF)) -> channel(HIDDEN)
53
+ ;
54
+
55
+ // Keywords
56
+ // Common Keywords
57
+
58
+ ADD : 'ADD';
59
+ ALL : 'ALL';
60
+ ALTER : 'ALTER';
61
+ ALWAYS : 'ALWAYS';
62
+ ANALYZE : 'ANALYZE';
63
+ AND : 'AND';
64
+ ARRAY : 'ARRAY';
65
+ AS : 'AS';
66
+ ASC : 'ASC';
67
+ ATTRIBUTE : 'ATTRIBUTE';
68
+ BEFORE : 'BEFORE';
69
+ BETWEEN : 'BETWEEN';
70
+ BOTH : 'BOTH';
71
+ BUCKETS : 'BUCKETS';
72
+ BY : 'BY';
73
+ CALL : 'CALL';
74
+ CASCADE : 'CASCADE';
75
+ CASE : 'CASE';
76
+ CAST : 'CAST';
77
+ CHANGE : 'CHANGE';
78
+ CHARACTER : 'CHARACTER';
79
+ CHECK : 'CHECK';
80
+ COLLATE : 'COLLATE';
81
+ COLUMN : 'COLUMN';
82
+ CONDITION : 'CONDITION';
83
+ CONSTRAINT : 'CONSTRAINT';
84
+ CONTINUE : 'CONTINUE';
85
+ CONVERT : 'CONVERT';
86
+ CREATE : 'CREATE';
87
+ CROSS : 'CROSS';
88
+ CURRENT : 'CURRENT';
89
+ CURRENT_ROLE : 'CURRENT_ROLE';
90
+ CURRENT_USER : 'CURRENT_USER';
91
+ CURSOR : 'CURSOR';
92
+ DATABASE : 'DATABASE';
93
+ DATABASES : 'DATABASES';
94
+ DECLARE : 'DECLARE';
95
+ DEFAULT : 'DEFAULT';
96
+ DELAYED : 'DELAYED';
97
+ DELETE : 'DELETE';
98
+ DESC : 'DESC';
99
+ DESCRIBE : 'DESCRIBE';
100
+ DETERMINISTIC : 'DETERMINISTIC';
101
+ DIAGNOSTICS : 'DIAGNOSTICS';
102
+ DISTINCT : 'DISTINCT';
103
+ DISTINCTROW : 'DISTINCTROW';
104
+ DROP : 'DROP';
105
+ EACH : 'EACH';
106
+ ELSE : 'ELSE';
107
+ ELSEIF : 'ELSEIF';
108
+ EMPTY : 'EMPTY';
109
+ ENCLOSED : 'ENCLOSED';
110
+ ENFORCED : 'ENFORCED';
111
+ ESCAPED : 'ESCAPED';
112
+ EXCEPT : 'EXCEPT';
113
+ EXISTS : 'EXISTS';
114
+ EXIT : 'EXIT';
115
+ EXPLAIN : 'EXPLAIN';
116
+ FALSE : 'FALSE';
117
+ FETCH : 'FETCH';
118
+ FOR : 'FOR';
119
+ FORCE : 'FORCE';
120
+ FOREIGN : 'FOREIGN';
121
+ FROM : 'FROM';
122
+ FULLTEXT : 'FULLTEXT';
123
+ GENERATED : 'GENERATED';
124
+ GET : 'GET';
125
+ GRANT : 'GRANT';
126
+ GROUP : 'GROUP';
127
+ HAVING : 'HAVING';
128
+ HIGH_PRIORITY : 'HIGH_PRIORITY';
129
+ HISTOGRAM : 'HISTOGRAM';
130
+ IF : 'IF';
131
+ IGNORE : 'IGNORE';
132
+ IGNORED : 'IGNORED';
133
+ IN : 'IN';
134
+ INDEX : 'INDEX';
135
+ INFILE : 'INFILE';
136
+ INNER : 'INNER';
137
+ INOUT : 'INOUT';
138
+ INSERT : 'INSERT';
139
+ INTERVAL : 'INTERVAL';
140
+ INTO : 'INTO';
141
+ IS : 'IS';
142
+ ITERATE : 'ITERATE';
143
+ JOIN : 'JOIN';
144
+ KEY : 'KEY';
145
+ KEYS : 'KEYS';
146
+ KILL : 'KILL';
147
+ LATERAL : 'LATERAL';
148
+ LEADING : 'LEADING';
149
+ LEAVE : 'LEAVE';
150
+ LEFT : 'LEFT';
151
+ LIKE : 'LIKE';
152
+ LIMIT : 'LIMIT';
153
+ LINEAR : 'LINEAR';
154
+ LINES : 'LINES';
155
+ LOAD : 'LOAD';
156
+ LOCK : 'LOCK';
157
+ LOCKED : 'LOCKED';
158
+ LOOP : 'LOOP';
159
+ LOW_PRIORITY : 'LOW_PRIORITY';
160
+ MASTER_BIND : 'MASTER_BIND';
161
+ MASTER_SSL_VERIFY_SERVER_CERT : 'MASTER_SSL_VERIFY_SERVER_CERT';
162
+ MATCH : 'MATCH';
163
+ MAXVALUE : 'MAXVALUE';
164
+ MINVALUE : 'MINVALUE';
165
+ MODIFIES : 'MODIFIES';
166
+ NATURAL : 'NATURAL';
167
+ NOT : 'NOT';
168
+ NO_WRITE_TO_BINLOG : 'NO_WRITE_TO_BINLOG';
169
+ NULL_LITERAL : 'NULL';
170
+ NUMBER : 'NUMBER';
171
+ ON : 'ON';
172
+ OPTIMIZE : 'OPTIMIZE';
173
+ OPTION : 'OPTION';
174
+ OPTIONAL : 'OPTIONAL';
175
+ OPTIONALLY : 'OPTIONALLY';
176
+ OR : 'OR';
177
+ ORDER : 'ORDER';
178
+ OUT : 'OUT';
179
+ OUTER : 'OUTER';
180
+ OUTFILE : 'OUTFILE';
181
+ OVER : 'OVER';
182
+ PARTITION : 'PARTITION';
183
+ PRIMARY : 'PRIMARY';
184
+ PROCEDURE : 'PROCEDURE';
185
+ PURGE : 'PURGE';
186
+ RANGE : 'RANGE';
187
+ READ : 'READ';
188
+ READS : 'READS';
189
+ REFERENCES : 'REFERENCES';
190
+ REGEXP : 'REGEXP';
191
+ RELEASE : 'RELEASE';
192
+ RENAME : 'RENAME';
193
+ REPEAT : 'REPEAT';
194
+ REPLACE : 'REPLACE';
195
+ REQUIRE : 'REQUIRE';
196
+ RESIGNAL : 'RESIGNAL';
197
+ RESTRICT : 'RESTRICT';
198
+ RETAIN : 'RETAIN';
199
+ RETURN : 'RETURN';
200
+ REVOKE : 'REVOKE';
201
+ RIGHT : 'RIGHT';
202
+ RLIKE : 'RLIKE';
203
+ SCHEMA : 'SCHEMA';
204
+ SCHEMAS : 'SCHEMAS';
205
+ SELECT : 'SELECT';
206
+ SET : 'SET';
207
+ SEPARATOR : 'SEPARATOR';
208
+ SHOW : 'SHOW';
209
+ SIGNAL : 'SIGNAL';
210
+ SKIP_ : 'SKIP';
211
+ SKIP_QUERY_REWRITE : 'SKIP_QUERY_REWRITE';
212
+ SPATIAL : 'SPATIAL';
213
+ SQL : 'SQL';
214
+ SQLEXCEPTION : 'SQLEXCEPTION';
215
+ SQLSTATE : 'SQLSTATE';
216
+ SQLWARNING : 'SQLWARNING';
217
+ SQL_BIG_RESULT : 'SQL_BIG_RESULT';
218
+ SQL_CALC_FOUND_ROWS : 'SQL_CALC_FOUND_ROWS';
219
+ SQL_SMALL_RESULT : 'SQL_SMALL_RESULT';
220
+ SSL : 'SSL';
221
+ STACKED : 'STACKED';
222
+ STARTING : 'STARTING';
223
+ STATEMENT : 'STATEMENT';
224
+ STRAIGHT_JOIN : 'STRAIGHT_JOIN';
225
+ TABLE : 'TABLE';
226
+ TERMINATED : 'TERMINATED';
227
+ THEN : 'THEN';
228
+ TO : 'TO';
229
+ TRAILING : 'TRAILING';
230
+ TRIGGER : 'TRIGGER';
231
+ TRUE : 'TRUE';
232
+ UNDO : 'UNDO';
233
+ UNION : 'UNION';
234
+ UNIQUE : 'UNIQUE';
235
+ UNLOCK : 'UNLOCK';
236
+ UNSIGNED : 'UNSIGNED';
237
+ UPDATE : 'UPDATE';
238
+ USAGE : 'USAGE';
239
+ USE : 'USE';
240
+ USING : 'USING';
241
+ VALUES : 'VALUES';
242
+ WHEN : 'WHEN';
243
+ WHERE : 'WHERE';
244
+ WHILE : 'WHILE';
245
+ WITH : 'WITH';
246
+ WRITE : 'WRITE';
247
+ XOR : 'XOR';
248
+ ZEROFILL : 'ZEROFILL';
249
+
250
+ // DATA TYPE Keywords
251
+
252
+ TINYINT : 'TINYINT';
253
+ SMALLINT : 'SMALLINT';
254
+ MEDIUMINT : 'MEDIUMINT';
255
+ MIDDLEINT : 'MIDDLEINT';
256
+ INT : 'INT';
257
+ INT1 : 'INT1';
258
+ INT2 : 'INT2';
259
+ INT3 : 'INT3';
260
+ INT4 : 'INT4';
261
+ INT8 : 'INT8';
262
+ INTEGER : 'INTEGER';
263
+ BIGINT : 'BIGINT';
264
+ REAL : 'REAL';
265
+ DOUBLE : 'DOUBLE';
266
+ PRECISION : 'PRECISION';
267
+ FLOAT : 'FLOAT';
268
+ FLOAT4 : 'FLOAT4';
269
+ FLOAT8 : 'FLOAT8';
270
+ DECIMAL : 'DECIMAL';
271
+ DEC : 'DEC';
272
+ NUMERIC : 'NUMERIC';
273
+ DATE : 'DATE';
274
+ TIME : 'TIME';
275
+ TIMESTAMP : 'TIMESTAMP';
276
+ DATETIME : 'DATETIME';
277
+ YEAR : 'YEAR';
278
+ CHAR : 'CHAR';
279
+ VARCHAR : 'VARCHAR';
280
+ NVARCHAR : 'NVARCHAR';
281
+ NATIONAL : 'NATIONAL';
282
+ BINARY : 'BINARY';
283
+ VARBINARY : 'VARBINARY';
284
+ TINYBLOB : 'TINYBLOB';
285
+ BLOB : 'BLOB';
286
+ MEDIUMBLOB : 'MEDIUMBLOB';
287
+ LONG : 'LONG';
288
+ LONGBLOB : 'LONGBLOB';
289
+ TINYTEXT : 'TINYTEXT';
290
+ TEXT : 'TEXT';
291
+ MEDIUMTEXT : 'MEDIUMTEXT';
292
+ LONGTEXT : 'LONGTEXT';
293
+ ENUM : 'ENUM';
294
+ VARYING : 'VARYING';
295
+ SERIAL : 'SERIAL';
296
+
297
+ // Interval type Keywords
298
+
299
+ YEAR_MONTH : 'YEAR_MONTH';
300
+ DAY_HOUR : 'DAY_HOUR';
301
+ DAY_MINUTE : 'DAY_MINUTE';
302
+ DAY_SECOND : 'DAY_SECOND';
303
+ HOUR_MINUTE : 'HOUR_MINUTE';
304
+ HOUR_SECOND : 'HOUR_SECOND';
305
+ MINUTE_SECOND : 'MINUTE_SECOND';
306
+ SECOND_MICROSECOND : 'SECOND_MICROSECOND';
307
+ MINUTE_MICROSECOND : 'MINUTE_MICROSECOND';
308
+ HOUR_MICROSECOND : 'HOUR_MICROSECOND';
309
+ DAY_MICROSECOND : 'DAY_MICROSECOND';
310
+
311
+ // JSON keywords
312
+ JSON_ARRAY : 'JSON_ARRAY';
313
+ JSON_ARRAYAGG : 'JSON_ARRAYAGG';
314
+ JSON_ARRAY_APPEND : 'JSON_ARRAY_APPEND';
315
+ JSON_ARRAY_INSERT : 'JSON_ARRAY_INSERT';
316
+ JSON_CONTAINS : 'JSON_CONTAINS';
317
+ JSON_CONTAINS_PATH : 'JSON_CONTAINS_PATH';
318
+ JSON_DEPTH : 'JSON_DEPTH';
319
+ JSON_EXTRACT : 'JSON_EXTRACT';
320
+ JSON_INSERT : 'JSON_INSERT';
321
+ JSON_KEYS : 'JSON_KEYS';
322
+ JSON_LENGTH : 'JSON_LENGTH';
323
+ JSON_MERGE : 'JSON_MERGE';
324
+ JSON_MERGE_PATCH : 'JSON_MERGE_PATCH';
325
+ JSON_MERGE_PRESERVE : 'JSON_MERGE_PRESERVE';
326
+ JSON_OBJECT : 'JSON_OBJECT';
327
+ JSON_OBJECTAGG : 'JSON_OBJECTAGG';
328
+ JSON_OVERLAPS : 'JSON_OVERLAPS';
329
+ JSON_PRETTY : 'JSON_PRETTY';
330
+ JSON_QUOTE : 'JSON_QUOTE';
331
+ JSON_REMOVE : 'JSON_REMOVE';
332
+ JSON_REPLACE : 'JSON_REPLACE';
333
+ JSON_SCHEMA_VALID : 'JSON_SCHEMA_VALID';
334
+ JSON_SCHEMA_VALIDATION_REPORT : 'JSON_SCHEMA_VALIDATION_REPORT';
335
+ JSON_SEARCH : 'JSON_SEARCH';
336
+ JSON_SET : 'JSON_SET';
337
+ JSON_STORAGE_FREE : 'JSON_STORAGE_FREE';
338
+ JSON_STORAGE_SIZE : 'JSON_STORAGE_SIZE';
339
+ JSON_TABLE : 'JSON_TABLE';
340
+ JSON_TYPE : 'JSON_TYPE';
341
+ JSON_UNQUOTE : 'JSON_UNQUOTE';
342
+ JSON_VALID : 'JSON_VALID';
343
+ JSON_VALUE : 'JSON_VALUE';
344
+ NESTED : 'NESTED';
345
+ ORDINALITY : 'ORDINALITY';
346
+ PATH : 'PATH';
347
+
348
+ // Group function Keywords
349
+
350
+ AVG : 'AVG';
351
+ BIT_AND : 'BIT_AND';
352
+ BIT_OR : 'BIT_OR';
353
+ BIT_XOR : 'BIT_XOR';
354
+ COUNT : 'COUNT';
355
+ CUME_DIST : 'CUME_DIST';
356
+ DENSE_RANK : 'DENSE_RANK';
357
+ FIRST_VALUE : 'FIRST_VALUE';
358
+ GROUP_CONCAT : 'GROUP_CONCAT';
359
+ LAG : 'LAG';
360
+ LAST_VALUE : 'LAST_VALUE';
361
+ LEAD : 'LEAD';
362
+ MAX : 'MAX';
363
+ MIN : 'MIN';
364
+ NTILE : 'NTILE';
365
+ NTH_VALUE : 'NTH_VALUE';
366
+ PERCENT_RANK : 'PERCENT_RANK';
367
+ RANK : 'RANK';
368
+ ROW_NUMBER : 'ROW_NUMBER';
369
+ STD : 'STD';
370
+ STDDEV : 'STDDEV';
371
+ STDDEV_POP : 'STDDEV_POP';
372
+ STDDEV_SAMP : 'STDDEV_SAMP';
373
+ SUM : 'SUM';
374
+ VAR_POP : 'VAR_POP';
375
+ VAR_SAMP : 'VAR_SAMP';
376
+ VARIANCE : 'VARIANCE';
377
+
378
+ // Common function Keywords
379
+
380
+ CURRENT_DATE : 'CURRENT_DATE';
381
+ CURRENT_TIME : 'CURRENT_TIME';
382
+ CURRENT_TIMESTAMP : 'CURRENT_TIMESTAMP';
383
+ LOCALTIME : 'LOCALTIME';
384
+ CURDATE : 'CURDATE';
385
+ CURTIME : 'CURTIME';
386
+ DATE_ADD : 'DATE_ADD';
387
+ DATE_SUB : 'DATE_SUB';
388
+ EXTRACT : 'EXTRACT';
389
+ LOCALTIMESTAMP : 'LOCALTIMESTAMP';
390
+ NOW : 'NOW';
391
+ POSITION : 'POSITION';
392
+ SUBSTR : 'SUBSTR';
393
+ SUBSTRING : 'SUBSTRING';
394
+ SYSDATE : 'SYSDATE';
395
+ TRIM : 'TRIM';
396
+ UTC_DATE : 'UTC_DATE';
397
+ UTC_TIME : 'UTC_TIME';
398
+ UTC_TIMESTAMP : 'UTC_TIMESTAMP';
399
+
400
+ // Keywords, but can be ID
401
+ // Common Keywords, but can be ID
402
+
403
+ ACCOUNT : 'ACCOUNT';
404
+ ACTION : 'ACTION';
405
+ AFTER : 'AFTER';
406
+ AGGREGATE : 'AGGREGATE';
407
+ ALGORITHM : 'ALGORITHM';
408
+ ANY : 'ANY';
409
+ AT : 'AT';
410
+ AUTHORS : 'AUTHORS';
411
+ AUTOCOMMIT : 'AUTOCOMMIT';
412
+ AUTOEXTEND_SIZE : 'AUTOEXTEND_SIZE';
413
+ AUTO_INCREMENT : 'AUTO_INCREMENT';
414
+ AVG_ROW_LENGTH : 'AVG_ROW_LENGTH';
415
+ BEGIN : 'BEGIN';
416
+ BINLOG : 'BINLOG';
417
+ BIT : 'BIT';
418
+ BLOCK : 'BLOCK';
419
+ BOOL : 'BOOL';
420
+ BOOLEAN : 'BOOLEAN';
421
+ BTREE : 'BTREE';
422
+ CACHE : 'CACHE';
423
+ CASCADED : 'CASCADED';
424
+ CHAIN : 'CHAIN';
425
+ CHANGED : 'CHANGED';
426
+ CHANNEL : 'CHANNEL';
427
+ CHECKSUM : 'CHECKSUM';
428
+ PAGE_CHECKSUM : 'PAGE_CHECKSUM';
429
+ CIPHER : 'CIPHER';
430
+ CLASS_ORIGIN : 'CLASS_ORIGIN';
431
+ CLIENT : 'CLIENT';
432
+ CLOSE : 'CLOSE';
433
+ CLUSTERING : 'CLUSTERING';
434
+ COALESCE : 'COALESCE';
435
+ CODE : 'CODE';
436
+ COLUMNS : 'COLUMNS';
437
+ COLUMN_FORMAT : 'COLUMN_FORMAT';
438
+ COLUMN_NAME : 'COLUMN_NAME';
439
+ COMMENT : 'COMMENT';
440
+ COMMIT : 'COMMIT';
441
+ COMPACT : 'COMPACT';
442
+ COMPLETION : 'COMPLETION';
443
+ COMPRESSED : 'COMPRESSED';
444
+ COMPRESSION : 'COMPRESSION';
445
+ CONCURRENT : 'CONCURRENT';
446
+ CONNECT : 'CONNECT';
447
+ CONNECTION : 'CONNECTION';
448
+ CONSISTENT : 'CONSISTENT';
449
+ CONSTRAINT_CATALOG : 'CONSTRAINT_CATALOG';
450
+ CONSTRAINT_SCHEMA : 'CONSTRAINT_SCHEMA';
451
+ CONSTRAINT_NAME : 'CONSTRAINT_NAME';
452
+ CONTAINS : 'CONTAINS';
453
+ CONTEXT : 'CONTEXT';
454
+ CONTRIBUTORS : 'CONTRIBUTORS';
455
+ COPY : 'COPY';
456
+ CPU : 'CPU';
457
+ CYCLE : 'CYCLE';
458
+ CURSOR_NAME : 'CURSOR_NAME';
459
+ DATA : 'DATA';
460
+ DATAFILE : 'DATAFILE';
461
+ DEALLOCATE : 'DEALLOCATE';
462
+ DEFAULT_AUTH : 'DEFAULT_AUTH';
463
+ DEFINER : 'DEFINER';
464
+ DELAY_KEY_WRITE : 'DELAY_KEY_WRITE';
465
+ DES_KEY_FILE : 'DES_KEY_FILE';
466
+ DIRECTORY : 'DIRECTORY';
467
+ DISABLE : 'DISABLE';
468
+ DISCARD : 'DISCARD';
469
+ DISK : 'DISK';
470
+ DO : 'DO';
471
+ DUMPFILE : 'DUMPFILE';
472
+ DUPLICATE : 'DUPLICATE';
473
+ DYNAMIC : 'DYNAMIC';
474
+ ENABLE : 'ENABLE';
475
+ ENCRYPTED : 'ENCRYPTED';
476
+ ENCRYPTION : 'ENCRYPTION';
477
+ ENCRYPTION_KEY_ID : 'ENCRYPTION_KEY_ID';
478
+ END : 'END';
479
+ ENDS : 'ENDS';
480
+ ENGINE : 'ENGINE';
481
+ ENGINES : 'ENGINES';
482
+ ERROR : 'ERROR';
483
+ ERRORS : 'ERRORS';
484
+ ESCAPE : 'ESCAPE';
485
+ EVEN : 'EVEN';
486
+ EVENT : 'EVENT';
487
+ EVENTS : 'EVENTS';
488
+ EVERY : 'EVERY';
489
+ EXCHANGE : 'EXCHANGE';
490
+ EXCLUSIVE : 'EXCLUSIVE';
491
+ EXPIRE : 'EXPIRE';
492
+ EXPORT : 'EXPORT';
493
+ EXTENDED : 'EXTENDED';
494
+ EXTENT_SIZE : 'EXTENT_SIZE';
495
+ FAILED_LOGIN_ATTEMPTS : 'FAILED_LOGIN_ATTEMPTS';
496
+ FAST : 'FAST';
497
+ FAULTS : 'FAULTS';
498
+ FIELDS : 'FIELDS';
499
+ FILE_BLOCK_SIZE : 'FILE_BLOCK_SIZE';
500
+ FILTER : 'FILTER';
501
+ FIRST : 'FIRST';
502
+ FIXED : 'FIXED';
503
+ FLUSH : 'FLUSH';
504
+ FOLLOWING : 'FOLLOWING';
505
+ FOLLOWS : 'FOLLOWS';
506
+ FOUND : 'FOUND';
507
+ FULL : 'FULL';
508
+ FUNCTION : 'FUNCTION';
509
+ GENERAL : 'GENERAL';
510
+ GLOBAL : 'GLOBAL';
511
+ GRANTS : 'GRANTS';
512
+ GROUP_REPLICATION : 'GROUP_REPLICATION';
513
+ HANDLER : 'HANDLER';
514
+ HASH : 'HASH';
515
+ HELP : 'HELP';
516
+ HISTORY : 'HISTORY';
517
+ HOST : 'HOST';
518
+ HOSTS : 'HOSTS';
519
+ IDENTIFIED : 'IDENTIFIED';
520
+ IGNORE_SERVER_IDS : 'IGNORE_SERVER_IDS';
521
+ IMPORT : 'IMPORT';
522
+ INCREMENT : 'INCREMENT';
523
+ INDEXES : 'INDEXES';
524
+ INITIAL_SIZE : 'INITIAL_SIZE';
525
+ INPLACE : 'INPLACE';
526
+ INSERT_METHOD : 'INSERT_METHOD';
527
+ INSTALL : 'INSTALL';
528
+ INSTANCE : 'INSTANCE';
529
+ INSTANT : 'INSTANT';
530
+ INVISIBLE : 'INVISIBLE';
531
+ INVOKER : 'INVOKER';
532
+ IO : 'IO';
533
+ IO_THREAD : 'IO_THREAD';
534
+ IPC : 'IPC';
535
+ ISOLATION : 'ISOLATION';
536
+ ISSUER : 'ISSUER';
537
+ JSON : 'JSON';
538
+ KEY_BLOCK_SIZE : 'KEY_BLOCK_SIZE';
539
+ LANGUAGE : 'LANGUAGE';
540
+ LAST : 'LAST';
541
+ LEAVES : 'LEAVES';
542
+ LESS : 'LESS';
543
+ LEVEL : 'LEVEL';
544
+ LIST : 'LIST';
545
+ LOCAL : 'LOCAL';
546
+ LOGFILE : 'LOGFILE';
547
+ LOGS : 'LOGS';
548
+ MASTER : 'MASTER';
549
+ MASTER_AUTO_POSITION : 'MASTER_AUTO_POSITION';
550
+ MASTER_CONNECT_RETRY : 'MASTER_CONNECT_RETRY';
551
+ MASTER_DELAY : 'MASTER_DELAY';
552
+ MASTER_HEARTBEAT_PERIOD : 'MASTER_HEARTBEAT_PERIOD';
553
+ MASTER_HOST : 'MASTER_HOST';
554
+ MASTER_LOG_FILE : 'MASTER_LOG_FILE';
555
+ MASTER_LOG_POS : 'MASTER_LOG_POS';
556
+ MASTER_PASSWORD : 'MASTER_PASSWORD';
557
+ MASTER_PORT : 'MASTER_PORT';
558
+ MASTER_RETRY_COUNT : 'MASTER_RETRY_COUNT';
559
+ MASTER_SSL : 'MASTER_SSL';
560
+ MASTER_SSL_CA : 'MASTER_SSL_CA';
561
+ MASTER_SSL_CAPATH : 'MASTER_SSL_CAPATH';
562
+ MASTER_SSL_CERT : 'MASTER_SSL_CERT';
563
+ MASTER_SSL_CIPHER : 'MASTER_SSL_CIPHER';
564
+ MASTER_SSL_CRL : 'MASTER_SSL_CRL';
565
+ MASTER_SSL_CRLPATH : 'MASTER_SSL_CRLPATH';
566
+ MASTER_SSL_KEY : 'MASTER_SSL_KEY';
567
+ MASTER_TLS_VERSION : 'MASTER_TLS_VERSION';
568
+ MASTER_USER : 'MASTER_USER';
569
+ MAX_CONNECTIONS_PER_HOUR : 'MAX_CONNECTIONS_PER_HOUR';
570
+ MAX_QUERIES_PER_HOUR : 'MAX_QUERIES_PER_HOUR';
571
+ MAX_ROWS : 'MAX_ROWS';
572
+ MAX_SIZE : 'MAX_SIZE';
573
+ MAX_UPDATES_PER_HOUR : 'MAX_UPDATES_PER_HOUR';
574
+ MAX_USER_CONNECTIONS : 'MAX_USER_CONNECTIONS';
575
+ MEDIUM : 'MEDIUM';
576
+ MEMBER : 'MEMBER';
577
+ MERGE : 'MERGE';
578
+ MESSAGE_TEXT : 'MESSAGE_TEXT';
579
+ MID : 'MID';
580
+ MIGRATE : 'MIGRATE';
581
+ MIN_ROWS : 'MIN_ROWS';
582
+ MODE : 'MODE';
583
+ MODIFY : 'MODIFY';
584
+ MUTEX : 'MUTEX';
585
+ MYSQL : 'MYSQL';
586
+ MYSQL_ERRNO : 'MYSQL_ERRNO';
587
+ NAME : 'NAME';
588
+ NAMES : 'NAMES';
589
+ NCHAR : 'NCHAR';
590
+ NEVER : 'NEVER';
591
+ NEXT : 'NEXT';
592
+ NO : 'NO';
593
+ NOCACHE : 'NOCACHE';
594
+ NOCOPY : 'NOCOPY';
595
+ NOCYCLE : 'NOCYCLE';
596
+ NOMAXVALUE : 'NOMAXVALUE';
597
+ NOMINVALUE : 'NOMINVALUE';
598
+ NOWAIT : 'NOWAIT';
599
+ NODEGROUP : 'NODEGROUP';
600
+ NONE : 'NONE';
601
+ ODBC : 'ODBC';
602
+ OFFLINE : 'OFFLINE';
603
+ OFFSET : 'OFFSET';
604
+ OF : 'OF';
605
+ OJ : 'OJ';
606
+ OLD_PASSWORD : 'OLD_PASSWORD';
607
+ ONE : 'ONE';
608
+ ONLINE : 'ONLINE';
609
+ ONLY : 'ONLY';
610
+ OPEN : 'OPEN';
611
+ OPTIMIZER_COSTS : 'OPTIMIZER_COSTS';
612
+ OPTIONS : 'OPTIONS';
613
+ OWNER : 'OWNER';
614
+ PACK_KEYS : 'PACK_KEYS';
615
+ PAGE : 'PAGE';
616
+ PAGE_COMPRESSED : 'PAGE_COMPRESSED';
617
+ PAGE_COMPRESSION_LEVEL : 'PAGE_COMPRESSION_LEVEL';
618
+ PARSER : 'PARSER';
619
+ PARTIAL : 'PARTIAL';
620
+ PARTITIONING : 'PARTITIONING';
621
+ PARTITIONS : 'PARTITIONS';
622
+ PASSWORD : 'PASSWORD';
623
+ PASSWORD_LOCK_TIME : 'PASSWORD_LOCK_TIME';
624
+ PHASE : 'PHASE';
625
+ PLUGIN : 'PLUGIN';
626
+ PLUGIN_DIR : 'PLUGIN_DIR';
627
+ PLUGINS : 'PLUGINS';
628
+ PORT : 'PORT';
629
+ PRECEDES : 'PRECEDES';
630
+ PRECEDING : 'PRECEDING';
631
+ PREPARE : 'PREPARE';
632
+ PRESERVE : 'PRESERVE';
633
+ PREV : 'PREV';
634
+ PROCESSLIST : 'PROCESSLIST';
635
+ PROFILE : 'PROFILE';
636
+ PROFILES : 'PROFILES';
637
+ PROXY : 'PROXY';
638
+ QUERY : 'QUERY';
639
+ QUICK : 'QUICK';
640
+ REBUILD : 'REBUILD';
641
+ RECOVER : 'RECOVER';
642
+ RECURSIVE : 'RECURSIVE';
643
+ REDO_BUFFER_SIZE : 'REDO_BUFFER_SIZE';
644
+ REDUNDANT : 'REDUNDANT';
645
+ RELAY : 'RELAY';
646
+ RELAY_LOG_FILE : 'RELAY_LOG_FILE';
647
+ RELAY_LOG_POS : 'RELAY_LOG_POS';
648
+ RELAYLOG : 'RELAYLOG';
649
+ REMOVE : 'REMOVE';
650
+ REORGANIZE : 'REORGANIZE';
651
+ REPAIR : 'REPAIR';
652
+ REPLICATE_DO_DB : 'REPLICATE_DO_DB';
653
+ REPLICATE_DO_TABLE : 'REPLICATE_DO_TABLE';
654
+ REPLICATE_IGNORE_DB : 'REPLICATE_IGNORE_DB';
655
+ REPLICATE_IGNORE_TABLE : 'REPLICATE_IGNORE_TABLE';
656
+ REPLICATE_REWRITE_DB : 'REPLICATE_REWRITE_DB';
657
+ REPLICATE_WILD_DO_TABLE : 'REPLICATE_WILD_DO_TABLE';
658
+ REPLICATE_WILD_IGNORE_TABLE : 'REPLICATE_WILD_IGNORE_TABLE';
659
+ REPLICATION : 'REPLICATION';
660
+ RESET : 'RESET';
661
+ RESTART : 'RESTART';
662
+ RESUME : 'RESUME';
663
+ RETURNED_SQLSTATE : 'RETURNED_SQLSTATE';
664
+ RETURNING : 'RETURNING';
665
+ RETURNS : 'RETURNS';
666
+ REUSE : 'REUSE';
667
+ ROLE : 'ROLE';
668
+ ROLLBACK : 'ROLLBACK';
669
+ ROLLUP : 'ROLLUP';
670
+ ROTATE : 'ROTATE';
671
+ ROW : 'ROW';
672
+ ROWS : 'ROWS';
673
+ ROW_FORMAT : 'ROW_FORMAT';
674
+ RTREE : 'RTREE';
675
+ SAVEPOINT : 'SAVEPOINT';
676
+ SCHEDULE : 'SCHEDULE';
677
+ SECURITY : 'SECURITY';
678
+ SEQUENCE : 'SEQUENCE';
679
+ SERVER : 'SERVER';
680
+ SESSION : 'SESSION';
681
+ SHARE : 'SHARE';
682
+ SHARED : 'SHARED';
683
+ SIGNED : 'SIGNED';
684
+ SIMPLE : 'SIMPLE';
685
+ SLAVE : 'SLAVE';
686
+ SLOW : 'SLOW';
687
+ SNAPSHOT : 'SNAPSHOT';
688
+ SOCKET : 'SOCKET';
689
+ SOME : 'SOME';
690
+ SONAME : 'SONAME';
691
+ SOUNDS : 'SOUNDS';
692
+ SOURCE : 'SOURCE';
693
+ SQL_AFTER_GTIDS : 'SQL_AFTER_GTIDS';
694
+ SQL_AFTER_MTS_GAPS : 'SQL_AFTER_MTS_GAPS';
695
+ SQL_BEFORE_GTIDS : 'SQL_BEFORE_GTIDS';
696
+ SQL_BUFFER_RESULT : 'SQL_BUFFER_RESULT';
697
+ SQL_CACHE : 'SQL_CACHE';
698
+ SQL_NO_CACHE : 'SQL_NO_CACHE';
699
+ SQL_THREAD : 'SQL_THREAD';
700
+ START : 'START';
701
+ STARTS : 'STARTS';
702
+ STATS_AUTO_RECALC : 'STATS_AUTO_RECALC';
703
+ STATS_PERSISTENT : 'STATS_PERSISTENT';
704
+ STATS_SAMPLE_PAGES : 'STATS_SAMPLE_PAGES';
705
+ STATUS : 'STATUS';
706
+ STOP : 'STOP';
707
+ STORAGE : 'STORAGE';
708
+ STORED : 'STORED';
709
+ STRING : 'STRING';
710
+ SUBCLASS_ORIGIN : 'SUBCLASS_ORIGIN';
711
+ SUBJECT : 'SUBJECT';
712
+ SUBPARTITION : 'SUBPARTITION';
713
+ SUBPARTITIONS : 'SUBPARTITIONS';
714
+ SUSPEND : 'SUSPEND';
715
+ SWAPS : 'SWAPS';
716
+ SWITCHES : 'SWITCHES';
717
+ TABLE_NAME : 'TABLE_NAME';
718
+ TABLESPACE : 'TABLESPACE';
719
+ TABLE_TYPE : 'TABLE_TYPE';
720
+ TEMPORARY : 'TEMPORARY';
721
+ TEMPTABLE : 'TEMPTABLE';
722
+ THAN : 'THAN';
723
+ TRADITIONAL : 'TRADITIONAL';
724
+ TRANSACTION : 'TRANSACTION';
725
+ TRANSACTIONAL : 'TRANSACTIONAL';
726
+ TRIGGERS : 'TRIGGERS';
727
+ TRUNCATE : 'TRUNCATE';
728
+ UNBOUNDED : 'UNBOUNDED';
729
+ UNDEFINED : 'UNDEFINED';
730
+ UNDOFILE : 'UNDOFILE';
731
+ UNDO_BUFFER_SIZE : 'UNDO_BUFFER_SIZE';
732
+ UNINSTALL : 'UNINSTALL';
733
+ UNKNOWN : 'UNKNOWN';
734
+ UNTIL : 'UNTIL';
735
+ UPGRADE : 'UPGRADE';
736
+ USER : 'USER';
737
+ USE_FRM : 'USE_FRM';
738
+ USER_RESOURCES : 'USER_RESOURCES';
739
+ VALIDATION : 'VALIDATION';
740
+ VALUE : 'VALUE';
741
+ VARIABLES : 'VARIABLES';
742
+ VIEW : 'VIEW';
743
+ VIRTUAL : 'VIRTUAL';
744
+ VISIBLE : 'VISIBLE';
745
+ WAIT : 'WAIT';
746
+ WARNINGS : 'WARNINGS';
747
+ WINDOW : 'WINDOW';
748
+ WITHOUT : 'WITHOUT';
749
+ WORK : 'WORK';
750
+ WRAPPER : 'WRAPPER';
751
+ X509 : 'X509';
752
+ XA : 'XA';
753
+ XML : 'XML';
754
+ YES : 'YES';
755
+
756
+ // Date format Keywords
757
+
758
+ EUR : 'EUR';
759
+ USA : 'USA';
760
+ JIS : 'JIS';
761
+ ISO : 'ISO';
762
+ INTERNAL : 'INTERNAL';
763
+
764
+ // Interval type Keywords
765
+
766
+ QUARTER : 'QUARTER';
767
+ MONTH : 'MONTH';
768
+ DAY : 'DAY';
769
+ HOUR : 'HOUR';
770
+ MINUTE : 'MINUTE';
771
+ WEEK : 'WEEK';
772
+ SECOND : 'SECOND';
773
+ MICROSECOND : 'MICROSECOND';
774
+
775
+ // PRIVILEGES
776
+
777
+ ADMIN : 'ADMIN';
778
+ APPLICATION_PASSWORD_ADMIN : 'APPLICATION_PASSWORD_ADMIN';
779
+ AUDIT_ABORT_EXEMPT : 'AUDIT_ABORT_EXEMPT';
780
+ AUDIT_ADMIN : 'AUDIT_ADMIN';
781
+ AUTHENTICATION_POLICY_ADMIN : 'AUTHENTICATION_POLICY_ADMIN';
782
+ BACKUP_ADMIN : 'BACKUP_ADMIN';
783
+ BINLOG_ADMIN : 'BINLOG_ADMIN';
784
+ BINLOG_ENCRYPTION_ADMIN : 'BINLOG_ENCRYPTION_ADMIN';
785
+ CLONE_ADMIN : 'CLONE_ADMIN';
786
+ CONNECTION_ADMIN : 'CONNECTION_ADMIN';
787
+ ENCRYPTION_KEY_ADMIN : 'ENCRYPTION_KEY_ADMIN';
788
+ EXECUTE : 'EXECUTE';
789
+ FILE : 'FILE';
790
+ FIREWALL_ADMIN : 'FIREWALL_ADMIN';
791
+ FIREWALL_EXEMPT : 'FIREWALL_EXEMPT';
792
+ FIREWALL_USER : 'FIREWALL_USER';
793
+ FLUSH_OPTIMIZER_COSTS : 'FLUSH_OPTIMIZER_COSTS';
794
+ FLUSH_STATUS : 'FLUSH_STATUS';
795
+ FLUSH_TABLES : 'FLUSH_TABLES';
796
+ FLUSH_USER_RESOURCES : 'FLUSH_USER_RESOURCES';
797
+ GROUP_REPLICATION_ADMIN : 'GROUP_REPLICATION_ADMIN';
798
+ INNODB_REDO_LOG_ARCHIVE : 'INNODB_REDO_LOG_ARCHIVE';
799
+ INNODB_REDO_LOG_ENABLE : 'INNODB_REDO_LOG_ENABLE';
800
+ INVOKE : 'INVOKE';
801
+ LAMBDA : 'LAMBDA';
802
+ NDB_STORED_USER : 'NDB_STORED_USER';
803
+ PASSWORDLESS_USER_ADMIN : 'PASSWORDLESS_USER_ADMIN';
804
+ PERSIST_RO_VARIABLES_ADMIN : 'PERSIST_RO_VARIABLES_ADMIN';
805
+ PRIVILEGES : 'PRIVILEGES';
806
+ PROCESS : 'PROCESS';
807
+ RELOAD : 'RELOAD';
808
+ REPLICATION_APPLIER : 'REPLICATION_APPLIER';
809
+ REPLICATION_SLAVE_ADMIN : 'REPLICATION_SLAVE_ADMIN';
810
+ RESOURCE_GROUP_ADMIN : 'RESOURCE_GROUP_ADMIN';
811
+ RESOURCE_GROUP_USER : 'RESOURCE_GROUP_USER';
812
+ ROLE_ADMIN : 'ROLE_ADMIN';
813
+ ROUTINE : 'ROUTINE';
814
+ S3 : 'S3';
815
+ SERVICE_CONNECTION_ADMIN : 'SERVICE_CONNECTION_ADMIN';
816
+ SESSION_VARIABLES_ADMIN : QUOTE_SYMB? 'SESSION_VARIABLES_ADMIN' QUOTE_SYMB?;
817
+ SET_USER_ID : 'SET_USER_ID';
818
+ SHOW_ROUTINE : 'SHOW_ROUTINE';
819
+ SHUTDOWN : 'SHUTDOWN';
820
+ SUPER : 'SUPER';
821
+ SYSTEM_VARIABLES_ADMIN : 'SYSTEM_VARIABLES_ADMIN';
822
+ TABLES : 'TABLES';
823
+ TABLE_ENCRYPTION_ADMIN : 'TABLE_ENCRYPTION_ADMIN';
824
+ VERSION_TOKEN_ADMIN : 'VERSION_TOKEN_ADMIN';
825
+ XA_RECOVER_ADMIN : 'XA_RECOVER_ADMIN';
826
+
827
+ // Charsets
828
+
829
+ ARMSCII8 : 'ARMSCII8';
830
+ ASCII : 'ASCII';
831
+ BIG5 : 'BIG5';
832
+ CP1250 : 'CP1250';
833
+ CP1251 : 'CP1251';
834
+ CP1256 : 'CP1256';
835
+ CP1257 : 'CP1257';
836
+ CP850 : 'CP850';
837
+ CP852 : 'CP852';
838
+ CP866 : 'CP866';
839
+ CP932 : 'CP932';
840
+ DEC8 : 'DEC8';
841
+ EUCJPMS : 'EUCJPMS';
842
+ EUCKR : 'EUCKR';
843
+ GB18030 : 'GB18030';
844
+ GB2312 : 'GB2312';
845
+ GBK : 'GBK';
846
+ GEOSTD8 : 'GEOSTD8';
847
+ GREEK : 'GREEK';
848
+ HEBREW : 'HEBREW';
849
+ HP8 : 'HP8';
850
+ KEYBCS2 : 'KEYBCS2';
851
+ KOI8R : 'KOI8R';
852
+ KOI8U : 'KOI8U';
853
+ LATIN1 : 'LATIN1';
854
+ LATIN2 : 'LATIN2';
855
+ LATIN5 : 'LATIN5';
856
+ LATIN7 : 'LATIN7';
857
+ MACCE : 'MACCE';
858
+ MACROMAN : 'MACROMAN';
859
+ SJIS : 'SJIS';
860
+ SWE7 : 'SWE7';
861
+ TIS620 : 'TIS620';
862
+ UCS2 : 'UCS2';
863
+ UJIS : 'UJIS';
864
+ UTF16 : 'UTF16';
865
+ UTF16LE : 'UTF16LE';
866
+ UTF32 : 'UTF32';
867
+ UTF8 : 'UTF8';
868
+ UTF8MB3 : 'UTF8MB3';
869
+ UTF8MB4 : 'UTF8MB4';
870
+
871
+ // DB Engines
872
+
873
+ ARCHIVE : 'ARCHIVE';
874
+ BLACKHOLE : 'BLACKHOLE';
875
+ CSV : 'CSV';
876
+ FEDERATED : 'FEDERATED';
877
+ INNODB : 'INNODB';
878
+ MEMORY : 'MEMORY';
879
+ MRG_MYISAM : 'MRG_MYISAM';
880
+ MYISAM : 'MYISAM';
881
+ NDB : 'NDB';
882
+ NDBCLUSTER : 'NDBCLUSTER';
883
+ PERFORMANCE_SCHEMA : 'PERFORMANCE_SCHEMA';
884
+ TOKUDB : 'TOKUDB';
885
+
886
+ // Transaction Levels
887
+
888
+ REPEATABLE : 'REPEATABLE';
889
+ COMMITTED : 'COMMITTED';
890
+ UNCOMMITTED : 'UNCOMMITTED';
891
+ SERIALIZABLE : 'SERIALIZABLE';
892
+
893
+ // Spatial data types
894
+
895
+ GEOMETRYCOLLECTION : 'GEOMETRYCOLLECTION';
896
+ GEOMCOLLECTION : 'GEOMCOLLECTION';
897
+ GEOMETRY : 'GEOMETRY';
898
+ LINESTRING : 'LINESTRING';
899
+ MULTILINESTRING : 'MULTILINESTRING';
900
+ MULTIPOINT : 'MULTIPOINT';
901
+ MULTIPOLYGON : 'MULTIPOLYGON';
902
+ POINT : 'POINT';
903
+ POLYGON : 'POLYGON';
904
+
905
+ // Common function names
906
+
907
+ ABS : 'ABS';
908
+ ACOS : 'ACOS';
909
+ ADDDATE : 'ADDDATE';
910
+ ADDTIME : 'ADDTIME';
911
+ AES_DECRYPT : 'AES_DECRYPT';
912
+ AES_ENCRYPT : 'AES_ENCRYPT';
913
+ AREA : 'AREA';
914
+ ASBINARY : 'ASBINARY';
915
+ ASIN : 'ASIN';
916
+ ASTEXT : 'ASTEXT';
917
+ ASWKB : 'ASWKB';
918
+ ASWKT : 'ASWKT';
919
+ ASYMMETRIC_DECRYPT : 'ASYMMETRIC_DECRYPT';
920
+ ASYMMETRIC_DERIVE : 'ASYMMETRIC_DERIVE';
921
+ ASYMMETRIC_ENCRYPT : 'ASYMMETRIC_ENCRYPT';
922
+ ASYMMETRIC_SIGN : 'ASYMMETRIC_SIGN';
923
+ ASYMMETRIC_VERIFY : 'ASYMMETRIC_VERIFY';
924
+ ATAN : 'ATAN';
925
+ ATAN2 : 'ATAN2';
926
+ BENCHMARK : 'BENCHMARK';
927
+ BIN : 'BIN';
928
+ BIT_COUNT : 'BIT_COUNT';
929
+ BIT_LENGTH : 'BIT_LENGTH';
930
+ BUFFER : 'BUFFER';
931
+ CATALOG_NAME : 'CATALOG_NAME';
932
+ CEIL : 'CEIL';
933
+ CEILING : 'CEILING';
934
+ CENTROID : 'CENTROID';
935
+ CHARACTER_LENGTH : 'CHARACTER_LENGTH';
936
+ CHARSET : 'CHARSET';
937
+ CHAR_LENGTH : 'CHAR_LENGTH';
938
+ COERCIBILITY : 'COERCIBILITY';
939
+ COLLATION : 'COLLATION';
940
+ COMPRESS : 'COMPRESS';
941
+ CONCAT : 'CONCAT';
942
+ CONCAT_WS : 'CONCAT_WS';
943
+ CONNECTION_ID : 'CONNECTION_ID';
944
+ CONV : 'CONV';
945
+ CONVERT_TZ : 'CONVERT_TZ';
946
+ COS : 'COS';
947
+ COT : 'COT';
948
+ CRC32 : 'CRC32';
949
+ CREATE_ASYMMETRIC_PRIV_KEY : 'CREATE_ASYMMETRIC_PRIV_KEY';
950
+ CREATE_ASYMMETRIC_PUB_KEY : 'CREATE_ASYMMETRIC_PUB_KEY';
951
+ CREATE_DH_PARAMETERS : 'CREATE_DH_PARAMETERS';
952
+ CREATE_DIGEST : 'CREATE_DIGEST';
953
+ CROSSES : 'CROSSES';
954
+ DATEDIFF : 'DATEDIFF';
955
+ DATE_FORMAT : 'DATE_FORMAT';
956
+ DAYNAME : 'DAYNAME';
957
+ DAYOFMONTH : 'DAYOFMONTH';
958
+ DAYOFWEEK : 'DAYOFWEEK';
959
+ DAYOFYEAR : 'DAYOFYEAR';
960
+ DECODE : 'DECODE';
961
+ DEGREES : 'DEGREES';
962
+ DES_DECRYPT : 'DES_DECRYPT';
963
+ DES_ENCRYPT : 'DES_ENCRYPT';
964
+ DIMENSION : 'DIMENSION';
965
+ DISJOINT : 'DISJOINT';
966
+ ELT : 'ELT';
967
+ ENCODE : 'ENCODE';
968
+ ENCRYPT : 'ENCRYPT';
969
+ ENDPOINT : 'ENDPOINT';
970
+ ENGINE_ATTRIBUTE : 'ENGINE_ATTRIBUTE';
971
+ ENVELOPE : 'ENVELOPE';
972
+ EQUALS : 'EQUALS';
973
+ EXP : 'EXP';
974
+ EXPORT_SET : 'EXPORT_SET';
975
+ EXTERIORRING : 'EXTERIORRING';
976
+ EXTRACTVALUE : 'EXTRACTVALUE';
977
+ FIELD : 'FIELD';
978
+ FIND_IN_SET : 'FIND_IN_SET';
979
+ FLOOR : 'FLOOR';
980
+ FORMAT : 'FORMAT';
981
+ FOUND_ROWS : 'FOUND_ROWS';
982
+ FROM_BASE64 : 'FROM_BASE64';
983
+ FROM_DAYS : 'FROM_DAYS';
984
+ FROM_UNIXTIME : 'FROM_UNIXTIME';
985
+ GEOMCOLLFROMTEXT : 'GEOMCOLLFROMTEXT';
986
+ GEOMCOLLFROMWKB : 'GEOMCOLLFROMWKB';
987
+ GEOMETRYCOLLECTIONFROMTEXT : 'GEOMETRYCOLLECTIONFROMTEXT';
988
+ GEOMETRYCOLLECTIONFROMWKB : 'GEOMETRYCOLLECTIONFROMWKB';
989
+ GEOMETRYFROMTEXT : 'GEOMETRYFROMTEXT';
990
+ GEOMETRYFROMWKB : 'GEOMETRYFROMWKB';
991
+ GEOMETRYN : 'GEOMETRYN';
992
+ GEOMETRYTYPE : 'GEOMETRYTYPE';
993
+ GEOMFROMTEXT : 'GEOMFROMTEXT';
994
+ GEOMFROMWKB : 'GEOMFROMWKB';
995
+ GET_FORMAT : 'GET_FORMAT';
996
+ GET_LOCK : 'GET_LOCK';
997
+ GLENGTH : 'GLENGTH';
998
+ GREATEST : 'GREATEST';
999
+ GTID_SUBSET : 'GTID_SUBSET';
1000
+ GTID_SUBTRACT : 'GTID_SUBTRACT';
1001
+ HEX : 'HEX';
1002
+ IFNULL : 'IFNULL';
1003
+ INET6_ATON : 'INET6_ATON';
1004
+ INET6_NTOA : 'INET6_NTOA';
1005
+ INET_ATON : 'INET_ATON';
1006
+ INET_NTOA : 'INET_NTOA';
1007
+ INSTR : 'INSTR';
1008
+ INTERIORRINGN : 'INTERIORRINGN';
1009
+ INTERSECTS : 'INTERSECTS';
1010
+ ISCLOSED : 'ISCLOSED';
1011
+ ISEMPTY : 'ISEMPTY';
1012
+ ISNULL : 'ISNULL';
1013
+ ISSIMPLE : 'ISSIMPLE';
1014
+ IS_FREE_LOCK : 'IS_FREE_LOCK';
1015
+ IS_IPV4 : 'IS_IPV4';
1016
+ IS_IPV4_COMPAT : 'IS_IPV4_COMPAT';
1017
+ IS_IPV4_MAPPED : 'IS_IPV4_MAPPED';
1018
+ IS_IPV6 : 'IS_IPV6';
1019
+ IS_USED_LOCK : 'IS_USED_LOCK';
1020
+ LAST_INSERT_ID : 'LAST_INSERT_ID';
1021
+ LCASE : 'LCASE';
1022
+ LEAST : 'LEAST';
1023
+ LENGTH : 'LENGTH';
1024
+ LINEFROMTEXT : 'LINEFROMTEXT';
1025
+ LINEFROMWKB : 'LINEFROMWKB';
1026
+ LINESTRINGFROMTEXT : 'LINESTRINGFROMTEXT';
1027
+ LINESTRINGFROMWKB : 'LINESTRINGFROMWKB';
1028
+ LN : 'LN';
1029
+ LOAD_FILE : 'LOAD_FILE';
1030
+ LOCATE : 'LOCATE';
1031
+ LOG : 'LOG';
1032
+ LOG10 : 'LOG10';
1033
+ LOG2 : 'LOG2';
1034
+ LOWER : 'LOWER';
1035
+ LPAD : 'LPAD';
1036
+ LTRIM : 'LTRIM';
1037
+ MAKEDATE : 'MAKEDATE';
1038
+ MAKETIME : 'MAKETIME';
1039
+ MAKE_SET : 'MAKE_SET';
1040
+ MASTER_POS_WAIT : 'MASTER_POS_WAIT';
1041
+ MBRCONTAINS : 'MBRCONTAINS';
1042
+ MBRDISJOINT : 'MBRDISJOINT';
1043
+ MBREQUAL : 'MBREQUAL';
1044
+ MBRINTERSECTS : 'MBRINTERSECTS';
1045
+ MBROVERLAPS : 'MBROVERLAPS';
1046
+ MBRTOUCHES : 'MBRTOUCHES';
1047
+ MBRWITHIN : 'MBRWITHIN';
1048
+ MD5 : 'MD5';
1049
+ MLINEFROMTEXT : 'MLINEFROMTEXT';
1050
+ MLINEFROMWKB : 'MLINEFROMWKB';
1051
+ MONTHNAME : 'MONTHNAME';
1052
+ MPOINTFROMTEXT : 'MPOINTFROMTEXT';
1053
+ MPOINTFROMWKB : 'MPOINTFROMWKB';
1054
+ MPOLYFROMTEXT : 'MPOLYFROMTEXT';
1055
+ MPOLYFROMWKB : 'MPOLYFROMWKB';
1056
+ MULTILINESTRINGFROMTEXT : 'MULTILINESTRINGFROMTEXT';
1057
+ MULTILINESTRINGFROMWKB : 'MULTILINESTRINGFROMWKB';
1058
+ MULTIPOINTFROMTEXT : 'MULTIPOINTFROMTEXT';
1059
+ MULTIPOINTFROMWKB : 'MULTIPOINTFROMWKB';
1060
+ MULTIPOLYGONFROMTEXT : 'MULTIPOLYGONFROMTEXT';
1061
+ MULTIPOLYGONFROMWKB : 'MULTIPOLYGONFROMWKB';
1062
+ NAME_CONST : 'NAME_CONST';
1063
+ NULLIF : 'NULLIF';
1064
+ NUMGEOMETRIES : 'NUMGEOMETRIES';
1065
+ NUMINTERIORRINGS : 'NUMINTERIORRINGS';
1066
+ NUMPOINTS : 'NUMPOINTS';
1067
+ OCT : 'OCT';
1068
+ OCTET_LENGTH : 'OCTET_LENGTH';
1069
+ ORD : 'ORD';
1070
+ OVERLAPS : 'OVERLAPS';
1071
+ PERIOD_ADD : 'PERIOD_ADD';
1072
+ PERIOD_DIFF : 'PERIOD_DIFF';
1073
+ PI : 'PI';
1074
+ POINTFROMTEXT : 'POINTFROMTEXT';
1075
+ POINTFROMWKB : 'POINTFROMWKB';
1076
+ POINTN : 'POINTN';
1077
+ POLYFROMTEXT : 'POLYFROMTEXT';
1078
+ POLYFROMWKB : 'POLYFROMWKB';
1079
+ POLYGONFROMTEXT : 'POLYGONFROMTEXT';
1080
+ POLYGONFROMWKB : 'POLYGONFROMWKB';
1081
+ POW : 'POW';
1082
+ POWER : 'POWER';
1083
+ QUOTE : 'QUOTE';
1084
+ RADIANS : 'RADIANS';
1085
+ RAND : 'RAND';
1086
+ RANDOM : 'RANDOM';
1087
+ RANDOM_BYTES : 'RANDOM_BYTES';
1088
+ RELEASE_LOCK : 'RELEASE_LOCK';
1089
+ REVERSE : 'REVERSE';
1090
+ ROUND : 'ROUND';
1091
+ ROW_COUNT : 'ROW_COUNT';
1092
+ RPAD : 'RPAD';
1093
+ RTRIM : 'RTRIM';
1094
+ SEC_TO_TIME : 'SEC_TO_TIME';
1095
+ SECONDARY_ENGINE_ATTRIBUTE : 'SECONDARY_ENGINE_ATTRIBUTE';
1096
+ SESSION_USER : 'SESSION_USER';
1097
+ SHA : 'SHA';
1098
+ SHA1 : 'SHA1';
1099
+ SHA2 : 'SHA2';
1100
+ SCHEMA_NAME : 'SCHEMA_NAME';
1101
+ SIGN : 'SIGN';
1102
+ SIN : 'SIN';
1103
+ SLEEP : 'SLEEP';
1104
+ SOUNDEX : 'SOUNDEX';
1105
+ SQL_THREAD_WAIT_AFTER_GTIDS : 'SQL_THREAD_WAIT_AFTER_GTIDS';
1106
+ SQRT : 'SQRT';
1107
+ SRID : 'SRID';
1108
+ STARTPOINT : 'STARTPOINT';
1109
+ STRCMP : 'STRCMP';
1110
+ STR_TO_DATE : 'STR_TO_DATE';
1111
+ ST_AREA : 'ST_AREA';
1112
+ ST_ASBINARY : 'ST_ASBINARY';
1113
+ ST_ASTEXT : 'ST_ASTEXT';
1114
+ ST_ASWKB : 'ST_ASWKB';
1115
+ ST_ASWKT : 'ST_ASWKT';
1116
+ ST_BUFFER : 'ST_BUFFER';
1117
+ ST_CENTROID : 'ST_CENTROID';
1118
+ ST_CONTAINS : 'ST_CONTAINS';
1119
+ ST_CROSSES : 'ST_CROSSES';
1120
+ ST_DIFFERENCE : 'ST_DIFFERENCE';
1121
+ ST_DIMENSION : 'ST_DIMENSION';
1122
+ ST_DISJOINT : 'ST_DISJOINT';
1123
+ ST_DISTANCE : 'ST_DISTANCE';
1124
+ ST_ENDPOINT : 'ST_ENDPOINT';
1125
+ ST_ENVELOPE : 'ST_ENVELOPE';
1126
+ ST_EQUALS : 'ST_EQUALS';
1127
+ ST_EXTERIORRING : 'ST_EXTERIORRING';
1128
+ ST_GEOMCOLLFROMTEXT : 'ST_GEOMCOLLFROMTEXT';
1129
+ ST_GEOMCOLLFROMTXT : 'ST_GEOMCOLLFROMTXT';
1130
+ ST_GEOMCOLLFROMWKB : 'ST_GEOMCOLLFROMWKB';
1131
+ ST_GEOMETRYCOLLECTIONFROMTEXT : 'ST_GEOMETRYCOLLECTIONFROMTEXT';
1132
+ ST_GEOMETRYCOLLECTIONFROMWKB : 'ST_GEOMETRYCOLLECTIONFROMWKB';
1133
+ ST_GEOMETRYFROMTEXT : 'ST_GEOMETRYFROMTEXT';
1134
+ ST_GEOMETRYFROMWKB : 'ST_GEOMETRYFROMWKB';
1135
+ ST_GEOMETRYN : 'ST_GEOMETRYN';
1136
+ ST_GEOMETRYTYPE : 'ST_GEOMETRYTYPE';
1137
+ ST_GEOMFROMTEXT : 'ST_GEOMFROMTEXT';
1138
+ ST_GEOMFROMWKB : 'ST_GEOMFROMWKB';
1139
+ ST_INTERIORRINGN : 'ST_INTERIORRINGN';
1140
+ ST_INTERSECTION : 'ST_INTERSECTION';
1141
+ ST_INTERSECTS : 'ST_INTERSECTS';
1142
+ ST_ISCLOSED : 'ST_ISCLOSED';
1143
+ ST_ISEMPTY : 'ST_ISEMPTY';
1144
+ ST_ISSIMPLE : 'ST_ISSIMPLE';
1145
+ ST_LINEFROMTEXT : 'ST_LINEFROMTEXT';
1146
+ ST_LINEFROMWKB : 'ST_LINEFROMWKB';
1147
+ ST_LINESTRINGFROMTEXT : 'ST_LINESTRINGFROMTEXT';
1148
+ ST_LINESTRINGFROMWKB : 'ST_LINESTRINGFROMWKB';
1149
+ ST_NUMGEOMETRIES : 'ST_NUMGEOMETRIES';
1150
+ ST_NUMINTERIORRING : 'ST_NUMINTERIORRING';
1151
+ ST_NUMINTERIORRINGS : 'ST_NUMINTERIORRINGS';
1152
+ ST_NUMPOINTS : 'ST_NUMPOINTS';
1153
+ ST_OVERLAPS : 'ST_OVERLAPS';
1154
+ ST_POINTFROMTEXT : 'ST_POINTFROMTEXT';
1155
+ ST_POINTFROMWKB : 'ST_POINTFROMWKB';
1156
+ ST_POINTN : 'ST_POINTN';
1157
+ ST_POLYFROMTEXT : 'ST_POLYFROMTEXT';
1158
+ ST_POLYFROMWKB : 'ST_POLYFROMWKB';
1159
+ ST_POLYGONFROMTEXT : 'ST_POLYGONFROMTEXT';
1160
+ ST_POLYGONFROMWKB : 'ST_POLYGONFROMWKB';
1161
+ ST_SRID : 'ST_SRID';
1162
+ ST_STARTPOINT : 'ST_STARTPOINT';
1163
+ ST_SYMDIFFERENCE : 'ST_SYMDIFFERENCE';
1164
+ ST_TOUCHES : 'ST_TOUCHES';
1165
+ ST_UNION : 'ST_UNION';
1166
+ ST_WITHIN : 'ST_WITHIN';
1167
+ ST_X : 'ST_X';
1168
+ ST_Y : 'ST_Y';
1169
+ SUBDATE : 'SUBDATE';
1170
+ SUBSTRING_INDEX : 'SUBSTRING_INDEX';
1171
+ SUBTIME : 'SUBTIME';
1172
+ SYSTEM_USER : 'SYSTEM_USER';
1173
+ TAN : 'TAN';
1174
+ TIMEDIFF : 'TIMEDIFF';
1175
+ TIMESTAMPADD : 'TIMESTAMPADD';
1176
+ TIMESTAMPDIFF : 'TIMESTAMPDIFF';
1177
+ TIME_FORMAT : 'TIME_FORMAT';
1178
+ TIME_TO_SEC : 'TIME_TO_SEC';
1179
+ TOUCHES : 'TOUCHES';
1180
+ TO_BASE64 : 'TO_BASE64';
1181
+ TO_DAYS : 'TO_DAYS';
1182
+ TO_SECONDS : 'TO_SECONDS';
1183
+ TP_CONNECTION_ADMIN : 'TP_CONNECTION_ADMIN';
1184
+ UCASE : 'UCASE';
1185
+ UNCOMPRESS : 'UNCOMPRESS';
1186
+ UNCOMPRESSED_LENGTH : 'UNCOMPRESSED_LENGTH';
1187
+ UNHEX : 'UNHEX';
1188
+ UNIX_TIMESTAMP : 'UNIX_TIMESTAMP';
1189
+ UPDATEXML : 'UPDATEXML';
1190
+ UPPER : 'UPPER';
1191
+ UUID : 'UUID';
1192
+ UUID_SHORT : 'UUID_SHORT';
1193
+ VALIDATE_PASSWORD_STRENGTH : 'VALIDATE_PASSWORD_STRENGTH';
1194
+ VERSION : 'VERSION';
1195
+ WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS : 'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS';
1196
+ WEEKDAY : 'WEEKDAY';
1197
+ WEEKOFYEAR : 'WEEKOFYEAR';
1198
+ WEIGHT_STRING : 'WEIGHT_STRING';
1199
+ WITHIN : 'WITHIN';
1200
+ YEARWEEK : 'YEARWEEK';
1201
+ Y_FUNCTION : 'Y';
1202
+ X_FUNCTION : 'X';
1203
+
1204
+ // Operators
1205
+ // Operators. Assigns
1206
+
1207
+ VAR_ASSIGN : ':=';
1208
+ PLUS_ASSIGN : '+=';
1209
+ MINUS_ASSIGN : '-=';
1210
+ MULT_ASSIGN : '*=';
1211
+ DIV_ASSIGN : '/=';
1212
+ MOD_ASSIGN : '%=';
1213
+ AND_ASSIGN : '&=';
1214
+ XOR_ASSIGN : '^=';
1215
+ OR_ASSIGN : '|=';
1216
+
1217
+ // Operators. Arithmetics
1218
+
1219
+ STAR : '*';
1220
+ DIVIDE : '/';
1221
+ MODULE : '%';
1222
+ PLUS : '+';
1223
+ MINUS : '-';
1224
+ DIV : 'DIV';
1225
+ MOD : 'MOD';
1226
+
1227
+ // Operators. Comparation
1228
+
1229
+ EQUAL_SYMBOL : '=';
1230
+ GREATER_SYMBOL : '>';
1231
+ LESS_SYMBOL : '<';
1232
+ EXCLAMATION_SYMBOL : '!';
1233
+
1234
+ // Operators. Bit
1235
+
1236
+ BIT_NOT_OP : '~';
1237
+ BIT_OR_OP : '|';
1238
+ BIT_AND_OP : '&';
1239
+ BIT_XOR_OP : '^';
1240
+
1241
+ // Constructors symbols
1242
+
1243
+ DOT : '.';
1244
+ LR_BRACKET : '(';
1245
+ RR_BRACKET : ')';
1246
+ COMMA : ',';
1247
+ SEMI : ';';
1248
+ AT_SIGN : '@';
1249
+ ZERO_DECIMAL : '0';
1250
+ ONE_DECIMAL : '1';
1251
+ TWO_DECIMAL : '2';
1252
+ SINGLE_QUOTE_SYMB : '\'';
1253
+ DOUBLE_QUOTE_SYMB : '"';
1254
+ REVERSE_QUOTE_SYMB : '`';
1255
+ COLON_SYMB : ':';
1256
+
1257
+ fragment QUOTE_SYMB: SINGLE_QUOTE_SYMB | DOUBLE_QUOTE_SYMB | REVERSE_QUOTE_SYMB;
1258
+
1259
+ // Charsets
1260
+
1261
+ CHARSET_REVERSE_QOUTE_STRING: '`' CHARSET_NAME '`';
1262
+
1263
+ // File's sizes
1264
+
1265
+ FILESIZE_LITERAL: DEC_DIGIT+ ('K' | 'M' | 'G' | 'T');
1266
+
1267
+ // Literal Primitives
1268
+
1269
+ START_NATIONAL_STRING_LITERAL : 'N' SQUOTA_STRING;
1270
+ STRING_LITERAL : DQUOTA_STRING | SQUOTA_STRING | BQUOTA_STRING;
1271
+ DECIMAL_LITERAL : DEC_DIGIT+;
1272
+ HEXADECIMAL_LITERAL : 'X' '\'' (HEX_DIGIT HEX_DIGIT)+ '\'' | '0X' HEX_DIGIT+;
1273
+
1274
+ REAL_LITERAL:
1275
+ DEC_DIGIT* '.' DEC_DIGIT+
1276
+ | DEC_DIGIT+ '.' EXPONENT_NUM_PART
1277
+ | DEC_DIGIT* '.' (DEC_DIGIT+ EXPONENT_NUM_PART)
1278
+ | DEC_DIGIT+ EXPONENT_NUM_PART
1279
+ ;
1280
+ NULL_SPEC_LITERAL : '\\' 'N';
1281
+ BIT_STRING : BIT_STRING_L;
1282
+ STRING_CHARSET_NAME : '_' CHARSET_NAME;
1283
+
1284
+ // Hack for dotID
1285
+ // Prevent recognize string: .123somelatin AS ((.123), FLOAT_LITERAL), ((somelatin), ID)
1286
+ // it must recoginze: .123somelatin AS ((.), DOT), (123somelatin, ID)
1287
+
1288
+ DOT_ID: '.' ID_LITERAL;
1289
+
1290
+ // Identifiers
1291
+
1292
+ ID: ID_LITERAL;
1293
+ // DOUBLE_QUOTE_ID: '"' ~'"'+ '"';
1294
+ REVERSE_QUOTE_ID : BQUOTA_STRING;
1295
+ HOST_IP_ADDRESS : (AT_SIGN IP_ADDRESS);
1296
+ LOCAL_ID : AT_SIGN ( STRING_LITERAL | [A-Z0-9._$\u0080-\uFFFF]+);
1297
+ GLOBAL_ID : AT_SIGN AT_SIGN ( [A-Z0-9._$\u0080-\uFFFF]+ | BQUOTA_STRING);
1298
+
1299
+ // Fragments for Literal primitives
1300
+
1301
+ fragment CHARSET_NAME:
1302
+ ARMSCII8
1303
+ | ASCII
1304
+ | BIG5
1305
+ | BINARY
1306
+ | CP1250
1307
+ | CP1251
1308
+ | CP1256
1309
+ | CP1257
1310
+ | CP850
1311
+ | CP852
1312
+ | CP866
1313
+ | CP932
1314
+ | DEC8
1315
+ | EUCJPMS
1316
+ | EUCKR
1317
+ | GB2312
1318
+ | GBK
1319
+ | GEOSTD8
1320
+ | GREEK
1321
+ | HEBREW
1322
+ | HP8
1323
+ | KEYBCS2
1324
+ | KOI8R
1325
+ | KOI8U
1326
+ | LATIN1
1327
+ | LATIN2
1328
+ | LATIN5
1329
+ | LATIN7
1330
+ | MACCE
1331
+ | MACROMAN
1332
+ | SJIS
1333
+ | SWE7
1334
+ | TIS620
1335
+ | UCS2
1336
+ | UJIS
1337
+ | UTF16
1338
+ | UTF16LE
1339
+ | UTF32
1340
+ | UTF8
1341
+ | UTF8MB3
1342
+ | UTF8MB4
1343
+ ;
1344
+
1345
+ fragment EXPONENT_NUM_PART : 'E' [-+]? DEC_DIGIT+;
1346
+ fragment ID_LITERAL : [A-Z_$0-9\u0080-\uFFFF]*? [A-Z_$\u0080-\uFFFF]+? [A-Z_$0-9\u0080-\uFFFF]*;
1347
+ fragment DQUOTA_STRING : '"' ( '\\' . | '""' | ~('"' | '\\'))* '"';
1348
+ fragment SQUOTA_STRING : '\'' ('\\' . | '\'\'' | ~('\'' | '\\'))* '\'';
1349
+ fragment BQUOTA_STRING : '`' ( ~'`' | '``')* '`';
1350
+ fragment HEX_DIGIT : [0-9A-F];
1351
+ fragment DEC_DIGIT : [0-9];
1352
+ fragment BIT_STRING_L : 'B' '\'' [01]+ '\'';
1353
+ fragment IP_ADDRESS : [0-9]+ '.' [0-9.]+ | [0-9A-F]* ':' [0-9A-F]* ':' [0-9A-F:]+;
1354
+
1355
+ // Last tokens must generate Errors
1356
+
1357
+ ERROR_RECONGNIGION: . -> channel(ERRORCHANNEL);