Improve/flink keywords (#195)
* refactor: improve flinksql keywords rule * test: correct flink sql unit test
This commit is contained in:
		@ -9,388 +9,528 @@ LINE_COMMENT:                        (
 | 
			
		||||
                                       | '--' ('\r'? '\n' | EOF)
 | 
			
		||||
                                     ) -> channel(HIDDEN);
 | 
			
		||||
 | 
			
		||||
// List of keywords that are not reserved.
 | 
			
		||||
// Please keep the keyword in alphabetical order if new keyword is added.
 | 
			
		||||
// Please add it to the nonReservedKeywords rule if new keyword is added.
 | 
			
		||||
// Reference link https://github.com/apache/flink/blob/release-1.16/flink-table/flink-sql-parser/src/main/codegen/data/Parser.tdd
 | 
			
		||||
/**
 | 
			
		||||
 * Keywords and Reserved Keywords
 | 
			
		||||
 * Flink uses Calcite as its SQL parser, 
 | 
			
		||||
 * The following keywords are derived from the Calcite documentation and Flink's own source code.
 | 
			
		||||
 * First, perform a union between the keyword sets declared in the Flink source code and those in the Calcite documentation, 
 | 
			
		||||
 * then calculate the difference between the resulting set and the non-keyword set declared in the Flink source code.
 | 
			
		||||
 * 
 | 
			
		||||
 * Calcite Documentation: https://calcite.apache.org/docs/reference.html#keywords
 | 
			
		||||
 * Flink Parser.tdd file: https://github.com/apache/flink/blob/release-1.16/flink-table/flink-sql-parser/src/main/codegen/data/Parser.tdd
 | 
			
		||||
 *
 | 
			
		||||
 * Please keep the keyword in alphabetical order if new keyword is added.
 | 
			
		||||
 * When adding new keywords, please consider whether they should be added to the NonReserved Keywords section below.
 | 
			
		||||
 */
 | 
			
		||||
KW_ABS: 'ABS';
 | 
			
		||||
KW_ALL: 'ALL';
 | 
			
		||||
KW_ALLOCATE: 'ALLOCATE';
 | 
			
		||||
KW_ALLOW: 'ALLOW';
 | 
			
		||||
KW_ALTER: 'ALTER';
 | 
			
		||||
KW_ANALYZE: 'ANALYZE';
 | 
			
		||||
KW_AND: 'AND';
 | 
			
		||||
KW_ANY: 'ANY';
 | 
			
		||||
KW_ARE: 'ARE';
 | 
			
		||||
KW_ARRAY: 'ARRAY';
 | 
			
		||||
KW_ARRAY_AGG: 'ARRAY_AGG';
 | 
			
		||||
KW_ARRAY_CONCAT_AGG: 'ARRAY_CONCAT_AGG';
 | 
			
		||||
KW_ARRAY_MAX_CARDINALITY: 'ARRAY_MAX_CARDINALITY';
 | 
			
		||||
KW_AS: 'AS';
 | 
			
		||||
KW_ASENSITIVE: 'ASENSITIVE';
 | 
			
		||||
KW_ASYMMETRIC: 'ASYMMETRIC';
 | 
			
		||||
KW_AT: 'AT';
 | 
			
		||||
KW_ATOMIC: 'ATOMIC';
 | 
			
		||||
KW_AUTHORIZATION: 'AUTHORIZATION';
 | 
			
		||||
KW_AVG: 'AVG';
 | 
			
		||||
KW_BEGIN: 'BEGIN';
 | 
			
		||||
KW_BEGIN_FRAME: 'BEGIN_FRAME';
 | 
			
		||||
KW_BEGIN_PARTITION: 'BEGIN_PARTITION';
 | 
			
		||||
KW_BETWEEN: 'BETWEEN';
 | 
			
		||||
KW_BIGINT: 'BIGINT';
 | 
			
		||||
KW_BINARY: 'BINARY';
 | 
			
		||||
KW_BIT: 'BIT';
 | 
			
		||||
KW_BLOB: 'BLOB';
 | 
			
		||||
KW_BOOLEAN: 'BOOLEAN';
 | 
			
		||||
KW_BOTH: 'BOTH';
 | 
			
		||||
KW_BY: 'BY';
 | 
			
		||||
KW_BYTES: 'BYTES';
 | 
			
		||||
KW_CALL: 'CALL';
 | 
			
		||||
KW_CALLED: 'CALLED';
 | 
			
		||||
KW_CARDINALITY: 'CARDINALITY';
 | 
			
		||||
KW_CASCADED: 'CASCADED';
 | 
			
		||||
KW_CASE: 'CASE';
 | 
			
		||||
KW_CAST: 'CAST';
 | 
			
		||||
KW_CATALOGS: 'CATALOGS';
 | 
			
		||||
KW_CEIL: 'CEIL';
 | 
			
		||||
KW_CEILING: 'CEILING';
 | 
			
		||||
KW_CHANGELOG_MODE: 'CHANGELOG_MODE';
 | 
			
		||||
KW_CHAR: 'CHAR';
 | 
			
		||||
KW_CHARACTER: 'CHARACTER';
 | 
			
		||||
KW_CHARACTER_LENGTH: 'CHARACTER_LENGTH';
 | 
			
		||||
KW_CHAR_LENGTH: 'CHAR_LENGTH';
 | 
			
		||||
KW_CHECK: 'CHECK';
 | 
			
		||||
KW_CLASSIFIER: 'CLASSIFIER';
 | 
			
		||||
KW_CLOB: 'CLOB';
 | 
			
		||||
KW_CLOSE: 'CLOSE';
 | 
			
		||||
KW_COALESCE: 'COALESCE';
 | 
			
		||||
KW_COLLATE: 'COLLATE';
 | 
			
		||||
KW_COLLECT: 'COLLECT';
 | 
			
		||||
KW_COLUMN: 'COLUMN';
 | 
			
		||||
KW_COLUMNS: 'COLUMNS';
 | 
			
		||||
KW_COMMENT: 'COMMENT';
 | 
			
		||||
KW_COMMIT: 'COMMIT';
 | 
			
		||||
KW_COMPUTE: 'COMPUTE';
 | 
			
		||||
KW_CONDITION: 'CONDITION';
 | 
			
		||||
KW_CONNECT: 'CONNECT';
 | 
			
		||||
KW_CONSTRAINT: 'CONSTRAINT';
 | 
			
		||||
KW_CONTAINS: 'CONTAINS';
 | 
			
		||||
KW_CONVERT: 'CONVERT';
 | 
			
		||||
KW_CORR: 'CORR';
 | 
			
		||||
KW_CORRESPONDING: 'CORRESPONDING';
 | 
			
		||||
KW_COUNT: 'COUNT';
 | 
			
		||||
KW_COVAR_POP: 'COVAR_POP';
 | 
			
		||||
KW_COVAR_SAMP: 'COVAR_SAMP';
 | 
			
		||||
KW_CREATE: 'CREATE';
 | 
			
		||||
KW_CROSS: 'CROSS';
 | 
			
		||||
KW_CUBE: 'CUBE';
 | 
			
		||||
KW_CUME_DIST: 'CUME_DIST';
 | 
			
		||||
KW_CURRENT: 'CURRENT';
 | 
			
		||||
KW_CURRENT_CATALOG: 'CURRENT_CATALOG';
 | 
			
		||||
KW_CURRENT_DATE: 'CURRENT_DATE';
 | 
			
		||||
KW_CURRENT_DEFAULT_TRANSFORM_GROUP: 'CURRENT_DEFAULT_TRANSFORM_GROUP';
 | 
			
		||||
KW_CURRENT_PATH: 'CURRENT_PATH';
 | 
			
		||||
KW_CURRENT_ROLE: 'CURRENT_ROLE';
 | 
			
		||||
KW_CURRENT_ROW: 'CURRENT_ROW';
 | 
			
		||||
KW_CURRENT_SCHEMA: 'CURRENT_SCHEMA';
 | 
			
		||||
KW_CURRENT_TIME: 'CURRENT_TIME';
 | 
			
		||||
KW_CURRENT_TIMESTAMP: 'CURRENT_TIMESTAMP';
 | 
			
		||||
KW_CURRENT_TRANSFORM_GROUP_FOR_TYPE: 'CURRENT_TRANSFORM_GROUP_FOR_TYPE';
 | 
			
		||||
KW_CURRENT_USER: 'CURRENT_USER';
 | 
			
		||||
KW_CURSOR: 'CURSOR';
 | 
			
		||||
KW_CYCLE: 'CYCLE';
 | 
			
		||||
KW_DATABASES: 'DATABASES';
 | 
			
		||||
KW_DATE: 'DATE';
 | 
			
		||||
KW_DATETIME: 'DATETIME';
 | 
			
		||||
KW_DATETIME_DIFF: 'DATETIME_DIFF';
 | 
			
		||||
KW_DATETIME_TRUNC: 'DATETIME_TRUNC';
 | 
			
		||||
KW_DATE_DIFF: 'DATE_DIFF';
 | 
			
		||||
KW_DATE_TRUNC: 'DATE_TRUNC';
 | 
			
		||||
KW_DAY: 'DAY';
 | 
			
		||||
KW_DAYOFWEEK: 'DAYOFWEEK';
 | 
			
		||||
KW_DAYOFYEAR: 'DAYOFYEAR';
 | 
			
		||||
KW_DEALLOCATE: 'DEALLOCATE';
 | 
			
		||||
KW_DEC: 'DEC';
 | 
			
		||||
KW_DECIMAL: 'DECIMAL';
 | 
			
		||||
KW_DECLARE: 'DECLARE';
 | 
			
		||||
KW_DEFAULT: 'DEFAULT';
 | 
			
		||||
KW_DEFINE: 'DEFINE';
 | 
			
		||||
KW_DELETE: 'DELETE';
 | 
			
		||||
KW_DENSE_RANK: 'DENSE_RANK';
 | 
			
		||||
KW_DEREF: 'DEREF';
 | 
			
		||||
KW_DESCRIBE: 'DESCRIBE';
 | 
			
		||||
KW_DETERMINISTIC: 'DETERMINISTIC';
 | 
			
		||||
KW_DISALLOW: 'DISALLOW';
 | 
			
		||||
KW_DISCONNECT: 'DISCONNECT';
 | 
			
		||||
KW_DISTINCT: 'DISTINCT';
 | 
			
		||||
KW_DOT: 'DOT';
 | 
			
		||||
KW_DOUBLE: 'DOUBLE';
 | 
			
		||||
KW_DROP: 'DROP';
 | 
			
		||||
KW_DYNAMIC: 'DYNAMIC';
 | 
			
		||||
KW_EACH: 'EACH';
 | 
			
		||||
KW_ELEMENT: 'ELEMENT';
 | 
			
		||||
KW_ELSE: 'ELSE';
 | 
			
		||||
KW_EMPTY: 'EMPTY';
 | 
			
		||||
KW_END: 'END';
 | 
			
		||||
// KW_END_EXEC: 'END-EXEC';
 | 
			
		||||
KW_END_FRAME: 'END_FRAME';
 | 
			
		||||
KW_END_PARTITION: 'END_PARTITION';
 | 
			
		||||
KW_ENFORCED: 'ENFORCED';
 | 
			
		||||
KW_EQUALS: 'EQUALS';
 | 
			
		||||
KW_ESCAPE: 'ESCAPE';
 | 
			
		||||
KW_ESTIMATED_COST: 'ESTIMATED_COST';
 | 
			
		||||
KW_EVERY: 'EVERY';
 | 
			
		||||
KW_EXCEPT: 'EXCEPT';
 | 
			
		||||
KW_EXEC: 'EXEC';
 | 
			
		||||
KW_EXECUTE: 'EXECUTE';
 | 
			
		||||
KW_EXISTS: 'EXISTS';
 | 
			
		||||
KW_EXP: 'EXP';
 | 
			
		||||
KW_EXPLAIN: 'EXPLAIN';
 | 
			
		||||
KW_EXTEND: 'EXTEND';
 | 
			
		||||
KW_EXTENDED: 'EXTENDED';
 | 
			
		||||
KW_EXTERNAL: 'EXTERNAL';
 | 
			
		||||
KW_EXTRACT: 'EXTRACT';
 | 
			
		||||
KW_FALSE: 'FALSE';
 | 
			
		||||
KW_FETCH: 'FETCH';
 | 
			
		||||
KW_FILTER: 'FILTER';
 | 
			
		||||
KW_FIRST_VALUE: 'FIRST_VALUE';
 | 
			
		||||
KW_FLOAT: 'FLOAT';
 | 
			
		||||
KW_FLOOR: 'FLOOR';
 | 
			
		||||
KW_FOR: 'FOR';
 | 
			
		||||
KW_FOREIGN: 'FOREIGN';
 | 
			
		||||
KW_FRAME_ROW: 'FRAME_ROW';
 | 
			
		||||
KW_FREE: 'FREE';
 | 
			
		||||
KW_FRIDAY: 'FRIDAY';
 | 
			
		||||
KW_FROM: 'FROM';
 | 
			
		||||
KW_FULL: 'FULL';
 | 
			
		||||
KW_FUNCTION: 'FUNCTION';
 | 
			
		||||
KW_FUNCTIONS: 'FUNCTIONS';
 | 
			
		||||
KW_FUSION: 'FUSION';
 | 
			
		||||
KW_GET: 'GET';
 | 
			
		||||
KW_GLOBAL: 'GLOBAL';
 | 
			
		||||
KW_GRANT: 'GRANT';
 | 
			
		||||
KW_GROUP: 'GROUP';
 | 
			
		||||
KW_GROUPING: 'GROUPING';
 | 
			
		||||
KW_GROUPS: 'GROUPS';
 | 
			
		||||
KW_GROUP_CONCAT: 'GROUP_CONCAT';
 | 
			
		||||
KW_HAVING: 'HAVING';
 | 
			
		||||
KW_HOLD: 'HOLD';
 | 
			
		||||
KW_HOUR: 'HOUR';
 | 
			
		||||
KW_IDENTITY: 'IDENTITY';
 | 
			
		||||
KW_IF: 'IF';
 | 
			
		||||
KW_ILIKE: 'ILIKE';
 | 
			
		||||
KW_IMPORT: 'IMPORT';
 | 
			
		||||
KW_IN: 'IN';
 | 
			
		||||
KW_INCLUDE: 'INCLUDE';
 | 
			
		||||
KW_INDICATOR: 'INDICATOR';
 | 
			
		||||
KW_INITIAL: 'INITIAL';
 | 
			
		||||
KW_INNER: 'INNER';
 | 
			
		||||
KW_INOUT: 'INOUT';
 | 
			
		||||
KW_INSENSITIVE: 'INSENSITIVE';
 | 
			
		||||
KW_INSERT: 'INSERT';
 | 
			
		||||
KW_INT: 'INT';
 | 
			
		||||
KW_INTEGER: 'INTEGER';
 | 
			
		||||
KW_INTERSECT: 'INTERSECT';
 | 
			
		||||
KW_INTERSECTION: 'INTERSECTION';
 | 
			
		||||
KW_INTERVAL: 'INTERVAL';
 | 
			
		||||
KW_INTO: 'INTO';
 | 
			
		||||
KW_IS: 'IS';
 | 
			
		||||
KW_JOIN: 'JOIN';
 | 
			
		||||
KW_JSON_ARRAY: 'JSON_ARRAY';
 | 
			
		||||
KW_JSON_ARRAYAGG: 'JSON_ARRAYAGG';
 | 
			
		||||
KW_JSON_EXECUTION_PLAN: 'JSON_EXECUTION_PLAN';
 | 
			
		||||
KW_JSON_EXISTS: 'JSON_EXISTS';
 | 
			
		||||
KW_JSON_OBJECT: 'JSON_OBJECT';
 | 
			
		||||
KW_JSON_OBJECTAGG: 'JSON_OBJECTAGG';
 | 
			
		||||
KW_JSON_QUERY: 'JSON_QUERY';
 | 
			
		||||
KW_JSON_VALUE: 'JSON_VALUE';
 | 
			
		||||
KW_LAG: 'LAG';
 | 
			
		||||
KW_LANGUAGE: 'LANGUAGE';
 | 
			
		||||
KW_LARGE: 'LARGE';
 | 
			
		||||
KW_LAST_VALUE: 'LAST_VALUE';
 | 
			
		||||
KW_LATERAL: 'LATERAL';
 | 
			
		||||
KW_LEAD: 'LEAD';
 | 
			
		||||
KW_LEADING: 'LEADING';
 | 
			
		||||
KW_LEFT: 'LEFT';
 | 
			
		||||
KW_LIKE: 'LIKE';
 | 
			
		||||
KW_LIKE_REGEX: 'LIKE_REGEX';
 | 
			
		||||
KW_LIMIT: 'LIMIT';
 | 
			
		||||
KW_LN: 'LN';
 | 
			
		||||
KW_LOCAL: 'LOCAL';
 | 
			
		||||
KW_LOCALTIME: 'LOCALTIME';
 | 
			
		||||
KW_LOCALTIMESTAMP: 'LOCALTIMESTAMP';
 | 
			
		||||
KW_LOWER: 'LOWER';
 | 
			
		||||
KW_MATCH: 'MATCH';
 | 
			
		||||
KW_MATCHES: 'MATCHES';
 | 
			
		||||
KW_MATCH_NUMBER: 'MATCH_NUMBER';
 | 
			
		||||
KW_MATCH_RECOGNIZE: 'MATCH_RECOGNIZE';
 | 
			
		||||
KW_MAX: 'MAX';
 | 
			
		||||
KW_MEASURES: 'MEASURES';
 | 
			
		||||
KW_MEMBER: 'MEMBER';
 | 
			
		||||
KW_MERGE: 'MERGE';
 | 
			
		||||
KW_METADATA: 'METADATA';
 | 
			
		||||
KW_METHOD: 'METHOD';
 | 
			
		||||
KW_MIN: 'MIN';
 | 
			
		||||
KW_MINUS: 'MINUS';
 | 
			
		||||
KW_MINUTE: 'MINUTE';
 | 
			
		||||
KW_MOD: 'MOD';
 | 
			
		||||
KW_MODIFIES: 'MODIFIES';
 | 
			
		||||
KW_MODIFY: 'MODIFY';
 | 
			
		||||
KW_MODULE: 'MODULE';
 | 
			
		||||
KW_MODULES: 'MODULES';
 | 
			
		||||
KW_MONDAY: 'MONDAY';
 | 
			
		||||
KW_MONTH: 'MONTH';
 | 
			
		||||
KW_MORE: 'MORE';
 | 
			
		||||
KW_MULTISET: 'MULTISET';
 | 
			
		||||
KW_NATIONAL: 'NATIONAL';
 | 
			
		||||
KW_NATURAL: 'NATURAL';
 | 
			
		||||
KW_NCHAR: 'NCHAR';
 | 
			
		||||
KW_NCLOB: 'NCLOB';
 | 
			
		||||
KW_NEW: 'NEW';
 | 
			
		||||
KW_NEXT: 'NEXT';
 | 
			
		||||
KW_NO: 'NO';
 | 
			
		||||
KW_NONE: 'NONE';
 | 
			
		||||
KW_NORMALIZE: 'NORMALIZE';
 | 
			
		||||
KW_NOT: 'NOT';
 | 
			
		||||
KW_NTH_VALUE: 'NTH_VALUE';
 | 
			
		||||
KW_NTILE: 'NTILE';
 | 
			
		||||
KW_NULL: 'NULL';
 | 
			
		||||
KW_NULLIF: 'NULLIF';
 | 
			
		||||
KW_NUMERIC: 'NUMERIC';
 | 
			
		||||
KW_OCCURRENCES_REGEX: 'OCCURRENCES_REGEX';
 | 
			
		||||
KW_OCTET_LENGTH: 'OCTET_LENGTH';
 | 
			
		||||
KW_OF: 'OF';
 | 
			
		||||
KW_OFFSET: 'OFFSET';
 | 
			
		||||
KW_OLD: 'OLD';
 | 
			
		||||
KW_OMIT: 'OMIT';
 | 
			
		||||
KW_ON: 'ON';
 | 
			
		||||
KW_ONE: 'ONE';
 | 
			
		||||
KW_ONLY: 'ONLY';
 | 
			
		||||
KW_OPEN: 'OPEN';
 | 
			
		||||
KW_OR: 'OR';
 | 
			
		||||
KW_ORDER: 'ORDER';
 | 
			
		||||
KW_ORDINAL: 'ORDINAL';
 | 
			
		||||
KW_OUT: 'OUT';
 | 
			
		||||
KW_OUTER: 'OUTER';
 | 
			
		||||
KW_OVER: 'OVER';
 | 
			
		||||
KW_OVERLAPS: 'OVERLAPS';
 | 
			
		||||
KW_OVERLAY: 'OVERLAY';
 | 
			
		||||
KW_OVERWRITE: 'OVERWRITE';
 | 
			
		||||
KW_OVERWRITING: 'OVERWRITING';
 | 
			
		||||
KW_PARAMETER: 'PARAMETER';
 | 
			
		||||
KW_PARTITION: 'PARTITION';
 | 
			
		||||
KW_PARTITIONED: 'PARTITIONED';
 | 
			
		||||
KW_PARTITIONS: 'PARTITIONS';
 | 
			
		||||
KW_PATTERN: 'PATTERN';
 | 
			
		||||
KW_PER: 'PER';
 | 
			
		||||
KW_PERCENT: 'PERCENT';
 | 
			
		||||
KW_PERCENTILE_CONT: 'PERCENTILE_CONT';
 | 
			
		||||
KW_PERCENTILE_DISC: 'PERCENTILE_DISC';
 | 
			
		||||
KW_PERCENT_RANK: 'PERCENT_RANK';
 | 
			
		||||
KW_PERIOD: 'PERIOD';
 | 
			
		||||
KW_PERMUTE: 'PERMUTE';
 | 
			
		||||
KW_PIVOT: 'PIVOT';
 | 
			
		||||
KW_PORTION: 'PORTION';
 | 
			
		||||
KW_POSITION: 'POSITION';
 | 
			
		||||
KW_POSITION_REGEX: 'POSITION_REGEX';
 | 
			
		||||
KW_POWER: 'POWER';
 | 
			
		||||
KW_PRECEDES: 'PRECEDES';
 | 
			
		||||
KW_PRECISION: 'PRECISION';
 | 
			
		||||
KW_PREPARE: 'PREPARE';
 | 
			
		||||
KW_PREV: 'PREV';
 | 
			
		||||
KW_PRIMARY: 'PRIMARY';
 | 
			
		||||
KW_PROCEDURE: 'PROCEDURE';
 | 
			
		||||
KW_QUALIFY: 'QUALIFY';
 | 
			
		||||
KW_QUARTERS: 'QUARTERS';
 | 
			
		||||
KW_RANGE: 'RANGE';
 | 
			
		||||
KW_RANK: 'RANK';
 | 
			
		||||
KW_RAW: 'RAW';
 | 
			
		||||
KW_READS: 'READS';
 | 
			
		||||
KW_REAL: 'REAL';
 | 
			
		||||
KW_RECURSIVE: 'RECURSIVE';
 | 
			
		||||
KW_REF: 'REF';
 | 
			
		||||
KW_REFERENCES: 'REFERENCES';
 | 
			
		||||
KW_REFERENCING: 'REFERENCING';
 | 
			
		||||
KW_REGR_AVGX: 'REGR_AVGX';
 | 
			
		||||
KW_REGR_AVGY: 'REGR_AVGY';
 | 
			
		||||
KW_REGR_COUNT: 'REGR_COUNT';
 | 
			
		||||
KW_REGR_INTERCEPT: 'REGR_INTERCEPT';
 | 
			
		||||
KW_REGR_R2: 'REGR_R2';
 | 
			
		||||
KW_REGR_SLOPE: 'REGR_SLOPE';
 | 
			
		||||
KW_REGR_SXX: 'REGR_SXX';
 | 
			
		||||
KW_REGR_SXY: 'REGR_SXY';
 | 
			
		||||
KW_REGR_SYY: 'REGR_SYY';
 | 
			
		||||
KW_RELEASE: 'RELEASE';
 | 
			
		||||
KW_RENAME: 'RENAME';
 | 
			
		||||
KW_RESET: 'RESET';
 | 
			
		||||
KW_RESULT: 'RESULT';
 | 
			
		||||
KW_RETURN: 'RETURN';
 | 
			
		||||
KW_RETURNS: 'RETURNS';
 | 
			
		||||
KW_REVOKE: 'REVOKE';
 | 
			
		||||
KW_RIGHT: 'RIGHT';
 | 
			
		||||
KW_RLIKE: 'RLIKE';
 | 
			
		||||
KW_ROLLBACK: 'ROLLBACK';
 | 
			
		||||
KW_ROLLUP: 'ROLLUP';
 | 
			
		||||
KW_ROW: 'ROW';
 | 
			
		||||
KW_ROWS: 'ROWS';
 | 
			
		||||
KW_ROW_NUMBER: 'ROW_NUMBER';
 | 
			
		||||
KW_RUNNING: 'RUNNING';
 | 
			
		||||
KW_SAFE_CAST: 'SAFE_CAST';
 | 
			
		||||
KW_SAFE_OFFSET: 'SAFE_OFFSET';
 | 
			
		||||
KW_SAFE_ORDINAL: 'SAFE_ORDINAL';
 | 
			
		||||
KW_SATURDAY: 'SATURDAY';
 | 
			
		||||
KW_SAVEPOINT: 'SAVEPOINT';
 | 
			
		||||
KW_SCALA: 'SCALA';
 | 
			
		||||
KW_SCOPE: 'SCOPE';
 | 
			
		||||
KW_SCROLL: 'SCROLL';
 | 
			
		||||
KW_SEARCH: 'SEARCH';
 | 
			
		||||
KW_SECOND: 'SECOND';
 | 
			
		||||
KW_SEEK: 'SEEK';
 | 
			
		||||
KW_SELECT: 'SELECT';
 | 
			
		||||
KW_SENSITIVE: 'SENSITIVE';
 | 
			
		||||
KW_SEPARATOR: 'SEPARATOR';
 | 
			
		||||
KW_SESSION_USER: 'SESSION_USER';
 | 
			
		||||
KW_SET: 'SET';
 | 
			
		||||
KW_SHOW: 'SHOW';
 | 
			
		||||
KW_SIMILAR: 'SIMILAR';
 | 
			
		||||
KW_SKIP: 'SKIP';
 | 
			
		||||
KW_SMALLINT: 'SMALLINT';
 | 
			
		||||
KW_SOME: 'SOME';
 | 
			
		||||
KW_SPECIFIC: 'SPECIFIC';
 | 
			
		||||
KW_SPECIFICTYPE: 'SPECIFICTYPE';
 | 
			
		||||
KW_SQL: 'SQL';
 | 
			
		||||
KW_SQLEXCEPTION: 'SQLEXCEPTION';
 | 
			
		||||
KW_SQLSTATE: 'SQLSTATE';
 | 
			
		||||
KW_SQLWARNING: 'SQLWARNING';
 | 
			
		||||
KW_SQRT: 'SQRT';
 | 
			
		||||
KW_START: 'START';
 | 
			
		||||
KW_STATEMENT: 'STATEMENT';
 | 
			
		||||
KW_STATIC: 'STATIC';
 | 
			
		||||
KW_STATISTICS: 'STATISTICS';
 | 
			
		||||
KW_STDDEV_POP: 'STDDEV_POP';
 | 
			
		||||
KW_STDDEV_SAMP: 'STDDEV_SAMP';
 | 
			
		||||
KW_STREAM: 'STREAM';
 | 
			
		||||
KW_STRING: 'STRING';
 | 
			
		||||
KW_STRING_AGG: 'STRING_AGG';
 | 
			
		||||
KW_SUBMULTISET: 'SUBMULTISET';
 | 
			
		||||
KW_SUBSET: 'SUBSET';
 | 
			
		||||
KW_SUBSTRING: 'SUBSTRING';
 | 
			
		||||
KW_SUBSTRING_REGEX: 'SUBSTRING_REGEX';
 | 
			
		||||
KW_SUCCEEDS: 'SUCCEEDS';
 | 
			
		||||
KW_SUM: 'SUM';
 | 
			
		||||
KW_SUNDAY: 'SUNDAY';
 | 
			
		||||
KW_SYMMETRIC: 'SYMMETRIC';
 | 
			
		||||
KW_SYSTEM: 'SYSTEM';
 | 
			
		||||
KW_SYSTEM_TIME: 'SYSTEM_TIME';
 | 
			
		||||
KW_SYSTEM_USER: 'SYSTEM_USER';
 | 
			
		||||
KW_TABLE: 'TABLE';
 | 
			
		||||
KW_TABLES: 'TABLES';
 | 
			
		||||
KW_TABLESAMPLE: 'TABLESAMPLE';
 | 
			
		||||
KW_THEN: 'THEN';
 | 
			
		||||
KW_THURSDAY: 'THURSDAY';
 | 
			
		||||
KW_TIME: 'TIME';
 | 
			
		||||
KW_TIMESTAMP: 'TIMESTAMP';
 | 
			
		||||
KW_TIMESTAMP_DIFF: 'TIMESTAMP_DIFF';
 | 
			
		||||
KW_TIMESTAMP_LTZ: 'TIMESTAMP_LTZ';
 | 
			
		||||
KW_TIMESTAMP_TRUNC: 'TIMESTAMP_TRUNC';
 | 
			
		||||
KW_TIMEZONE_HOUR: 'TIMEZONE_HOUR';
 | 
			
		||||
KW_TIMEZONE_MINUTE: 'TIMEZONE_MINUTE';
 | 
			
		||||
KW_TIME_DIFF: 'TIME_DIFF';
 | 
			
		||||
KW_TIME_TRUNC: 'TIME_TRUNC';
 | 
			
		||||
KW_TINYINT: 'TINYINT';
 | 
			
		||||
KW_TO: 'TO';
 | 
			
		||||
KW_TRAILING: 'TRAILING';
 | 
			
		||||
KW_TRANSLATE: 'TRANSLATE';
 | 
			
		||||
KW_TRANSLATE_REGEX: 'TRANSLATE_REGEX';
 | 
			
		||||
KW_TRANSLATION: 'TRANSLATION';
 | 
			
		||||
KW_TREAT: 'TREAT';
 | 
			
		||||
KW_TRIGGER: 'TRIGGER';
 | 
			
		||||
KW_TRIM: 'TRIM';
 | 
			
		||||
KW_TRIM_ARRAY: 'TRIM_ARRAY';
 | 
			
		||||
KW_TRUE: 'TRUE';
 | 
			
		||||
KW_TRUNCATE: 'TRUNCATE';
 | 
			
		||||
KW_TRY_CAST: 'TRY_CAST';
 | 
			
		||||
KW_TUESDAY: 'TUESDAY';
 | 
			
		||||
KW_UESCAPE: 'UESCAPE';
 | 
			
		||||
KW_UNION: 'UNION';
 | 
			
		||||
KW_UNIQUE: 'UNIQUE';
 | 
			
		||||
KW_UNKNOWN: 'UNKNOWN';
 | 
			
		||||
KW_UNNEST: 'UNNEST';
 | 
			
		||||
KW_UNPIVOT: 'UNPIVOT';
 | 
			
		||||
KW_UPDATE: 'UPDATE';
 | 
			
		||||
KW_UPPER: 'UPPER';
 | 
			
		||||
KW_UPSERT: 'UPSERT';
 | 
			
		||||
KW_USE: 'USE';
 | 
			
		||||
KW_USER: 'USER';
 | 
			
		||||
KW_USING: 'USING';
 | 
			
		||||
KW_VALUE: 'VALUE';
 | 
			
		||||
KW_VALUES: 'VALUES';
 | 
			
		||||
KW_VALUE_OF: 'VALUE_OF';
 | 
			
		||||
KW_VARBINARY: 'VARBINARY';
 | 
			
		||||
KW_VARCHAR: 'VARCHAR';
 | 
			
		||||
KW_VARYING: 'VARYING';
 | 
			
		||||
KW_VAR_POP: 'VAR_POP';
 | 
			
		||||
KW_VAR_SAMP: 'VAR_SAMP';
 | 
			
		||||
KW_VERSIONING: 'VERSIONING';
 | 
			
		||||
KW_VIEWS: 'VIEWS';
 | 
			
		||||
KW_VIRTUAL: 'VIRTUAL';
 | 
			
		||||
KW_WATERMARK: 'WATERMARK';
 | 
			
		||||
KW_WATERMARKS: 'WATERMARKS';
 | 
			
		||||
KW_WEDNESDAY: 'WEDNESDAY';
 | 
			
		||||
KW_WEEKS: 'WEEKS';
 | 
			
		||||
KW_WHEN: 'WHEN';
 | 
			
		||||
KW_WHENEVER: 'WHENEVER';
 | 
			
		||||
KW_WHERE: 'WHERE';
 | 
			
		||||
KW_WIDTH_BUCKET: 'WIDTH_BUCKET';
 | 
			
		||||
KW_WINDOW: 'WINDOW';
 | 
			
		||||
KW_WITH: 'WITH';
 | 
			
		||||
KW_WITHIN: 'WITHIN';
 | 
			
		||||
KW_WITHOUT: 'WITHOUT';
 | 
			
		||||
KW_YEAR: 'YEAR';
 | 
			
		||||
 | 
			
		||||
KW_ADD:                              'ADD';
 | 
			
		||||
KW_ADMIN:                            'ADMIN';
 | 
			
		||||
KW_AFTER:                            'AFTER';
 | 
			
		||||
KW_ANALYZE:                          'ANALYZE';
 | 
			
		||||
KW_ASC:                              'ASC';
 | 
			
		||||
KW_BEFORE:                           'BEFORE';
 | 
			
		||||
KW_BYTES:                            'BYTES';
 | 
			
		||||
KW_CASCADE:                          'CASCADE';
 | 
			
		||||
KW_CATALOG:                          'CATALOG';
 | 
			
		||||
KW_CATALOGS:                         'CATALOGS';
 | 
			
		||||
KW_CENTURY:                          'CENTURY';
 | 
			
		||||
KW_CHAIN:                            'CHAIN';
 | 
			
		||||
KW_CHANGELOG_MODE:                   'CHANGELOG_MODE';
 | 
			
		||||
KW_CHARACTERS:                       'CHARACTERS';
 | 
			
		||||
KW_COMMENT:                          'COMMENT';
 | 
			
		||||
KW_COMPACT:                          'COMPACT';
 | 
			
		||||
KW_COLUMNS:                          'COLUMNS';
 | 
			
		||||
KW_CONSTRAINTS:                      'CONSTRAINTS';
 | 
			
		||||
KW_CONSTRUCTOR:                      'CONSTRUCTOR';
 | 
			
		||||
KW_CUMULATE:                         'CUMULATE';
 | 
			
		||||
KW_DATA:                             'DATA';
 | 
			
		||||
KW_DATABASE:                         'DATABASE';
 | 
			
		||||
KW_DATABASES:                        'DATABASES';
 | 
			
		||||
KW_DAYS:                             'DAYS';
 | 
			
		||||
KW_DECADE:                           'DECADE';
 | 
			
		||||
KW_DEFINED:                          'DEFINED';
 | 
			
		||||
KW_DESC:                             'DESC';
 | 
			
		||||
KW_DESCRIPTOR:                       'DESCRIPTOR';
 | 
			
		||||
KW_DIV:                              'DIV';
 | 
			
		||||
KW_ENCODING:                         'ENCODING';
 | 
			
		||||
KW_ENFORCED:                         'ENFORCED';
 | 
			
		||||
KW_ENGINE:                           'ENGINE';
 | 
			
		||||
KW_EPOCH:                            'EPOCH';
 | 
			
		||||
KW_ERROR:                            'ERROR';
 | 
			
		||||
KW_ESTIMATED_COST:                   'ESTIMATED_COST';
 | 
			
		||||
KW_EXCEPTION:                        'EXCEPTION';
 | 
			
		||||
KW_EXCLUDE:                          'EXCLUDE';
 | 
			
		||||
KW_EXCLUDING:                        'EXCLUDING';
 | 
			
		||||
KW_EXTENDED:                         'EXTENDED';
 | 
			
		||||
KW_FILE:                             'FILE';
 | 
			
		||||
KW_FINAL:                            'FINAL';
 | 
			
		||||
KW_FIRST:                            'FIRST';
 | 
			
		||||
KW_FOLLOWING:                        'FOLLOWING';
 | 
			
		||||
KW_FORMAT:                           'FORMAT';
 | 
			
		||||
KW_FORTRAN:                          'FORTRAN';
 | 
			
		||||
KW_FOUND:                            'FOUND';
 | 
			
		||||
KW_FRAC_SECOND:                      'FRAC_SECOND';
 | 
			
		||||
KW_FUNCTIONS:                        'FUNCTIONS';
 | 
			
		||||
KW_GENERAL:                          'GENERAL';
 | 
			
		||||
KW_GENERATED:                        'GENERATED';
 | 
			
		||||
KW_GO:                               'GO';
 | 
			
		||||
KW_GOTO:                             'GOTO';
 | 
			
		||||
KW_GRANTED:                          'GRANTED';
 | 
			
		||||
KW_HOP:                              'HOP';
 | 
			
		||||
KW_HOURS:                            'HOURS';
 | 
			
		||||
KW_IF:                               'IF';
 | 
			
		||||
KW_IGNORE:                           'IGNORE';
 | 
			
		||||
KW_INCREMENT:                        'INCREMENT';
 | 
			
		||||
KW_INPUT:                            'INPUT';
 | 
			
		||||
KW_INVOKER:                          'INVOKER';
 | 
			
		||||
KW_JAR:                              'JAR';
 | 
			
		||||
KW_JARS:                             'JARS';
 | 
			
		||||
KW_JAVA:                             'JAVA';
 | 
			
		||||
KW_JSON:                             'JSON';
 | 
			
		||||
KW_JSON_EXECUTION_PLAN:              'JSON_EXECUTION_PLAN';
 | 
			
		||||
KW_KEY:                              'KEY';
 | 
			
		||||
KW_KEY_MEMBER:                       'KEY_MEMBER';
 | 
			
		||||
KW_KEY_TYPE:                         'KEY_TYPE';
 | 
			
		||||
KW_LABEL:                            'LABEL';
 | 
			
		||||
KW_LAST:                             'LAST';
 | 
			
		||||
KW_LENGTH:                           'LENGTH';
 | 
			
		||||
KW_LEVEL:                            'LEVEL';
 | 
			
		||||
KW_LOAD:                             'LOAD';
 | 
			
		||||
KW_MAP:                              'MAP';
 | 
			
		||||
KW_MICROSECOND:                      'MICROSECOND';
 | 
			
		||||
KW_MILLENNIUM:                       'MILLENNIUM';
 | 
			
		||||
KW_MILLISECOND:                      'MILLISECOND';
 | 
			
		||||
KW_MINUTES:                          'MINUTES';
 | 
			
		||||
KW_MINVALUE:                         'MINVALUE';
 | 
			
		||||
KW_MODIFY:                           'MODIFY';
 | 
			
		||||
KW_MODULES:                          'MODULES';
 | 
			
		||||
KW_MONTHS:                           'MONTHS';
 | 
			
		||||
KW_NANOSECOND:                       'NANOSECOND';
 | 
			
		||||
KW_NULLS:                            'NULLS';
 | 
			
		||||
KW_NUMBER:                           'NUMBER';
 | 
			
		||||
KW_OPTION:                           'OPTION';
 | 
			
		||||
KW_OPTIONS:                          'OPTIONS';
 | 
			
		||||
KW_ORDERING:                         'ORDERING';
 | 
			
		||||
KW_OUTPUT:                           'OUTPUT';
 | 
			
		||||
KW_OVERWRITE:                        'OVERWRITE';
 | 
			
		||||
KW_OVERWRITING:                      'OVERWRITING';
 | 
			
		||||
KW_PARTITIONED:                      'PARTITIONED';
 | 
			
		||||
KW_PARTITIONS:                       'PARTITIONS';
 | 
			
		||||
KW_PASSING:                          'PASSING';
 | 
			
		||||
KW_PAST:                             'PAST';
 | 
			
		||||
KW_PATH:                             'PATH';
 | 
			
		||||
KW_PLACING:                          'PLACING';
 | 
			
		||||
KW_PLAN:                             'PLAN';
 | 
			
		||||
KW_PRECEDING:                        'PRECEDING';
 | 
			
		||||
KW_PRESERVE:                         'PRESERVE';
 | 
			
		||||
KW_PRIOR:                            'PRIOR';
 | 
			
		||||
KW_PRIVILEGES:                       'PRIVILEGES';
 | 
			
		||||
KW_PUBLIC:                           'PUBLIC';
 | 
			
		||||
KW_PYTHON:                           'PYTHON';
 | 
			
		||||
KW_PYTHON_FILES:                     'PYTHON_FILES';
 | 
			
		||||
KW_PYTHON_REQUIREMENTS:              'PYTHON_REQUIREMENTS';
 | 
			
		||||
KW_PYTHON_DEPENDENCIES:              'PYTHON_DEPENDENCIES';
 | 
			
		||||
KW_PYTHON_JAR:                       'PYTHON_JAR';
 | 
			
		||||
KW_PYTHON_ARCHIVES:                  'PYTHON_ARCHIVES';
 | 
			
		||||
KW_PYTHON_PARAMETER:                 'PYTHON_PARAMETER';
 | 
			
		||||
KW_QUARTER:                          'QUARTER';
 | 
			
		||||
KW_RAW:                              'RAW';
 | 
			
		||||
KW_READ:                             'READ';
 | 
			
		||||
KW_RELATIVE:                         'RELATIVE';
 | 
			
		||||
KW_REMOVE:                           'REMOVE';
 | 
			
		||||
KW_RENAME:                           'RENAME';
 | 
			
		||||
KW_REPLACE:                          'REPLACE';
 | 
			
		||||
KW_RESPECT:                          'RESPECT';
 | 
			
		||||
KW_RESTART:                          'RESTART';
 | 
			
		||||
KW_RESTRICT:                         'RESTRICT';
 | 
			
		||||
KW_ROLE:                             'ROLE';
 | 
			
		||||
KW_ROW_COUNT:                        'ROW_COUNT';
 | 
			
		||||
KW_SCALA:                            'SCALA';
 | 
			
		||||
KW_SCALAR:                           'SCALAR';
 | 
			
		||||
KW_SCALE:                            'SCALE';
 | 
			
		||||
KW_SCHEMA:                           'SCHEMA';
 | 
			
		||||
KW_SECONDS:                          'SECONDS';
 | 
			
		||||
KW_SECTION:                          'SECTION';
 | 
			
		||||
KW_SECURITY:                         'SECURITY';
 | 
			
		||||
KW_SELF:                             'SELF';
 | 
			
		||||
KW_SERVER:                           'SERVER';
 | 
			
		||||
KW_SERVER_NAME:                      'SERVER_NAME';
 | 
			
		||||
KW_SESSION:                          'SESSION';
 | 
			
		||||
KW_SETS:                             'SETS';
 | 
			
		||||
KW_SIMPLE:                           'SIMPLE';
 | 
			
		||||
KW_SIZE:                             'SIZE';
 | 
			
		||||
KW_SLIDE:                            'SLIDE';
 | 
			
		||||
KW_SOURCE:                           'SOURCE';
 | 
			
		||||
KW_SPACE:                            'SPACE';
 | 
			
		||||
KW_STATE:                            'STATE';
 | 
			
		||||
KW_STATEMENT:                        'STATEMENT';
 | 
			
		||||
KW_STEP:                             'STEP';
 | 
			
		||||
KW_STRING:                           'STRING';
 | 
			
		||||
KW_STRUCTURE:                        'STRUCTURE';
 | 
			
		||||
KW_STYLE:                            'STYLE';
 | 
			
		||||
KW_TABLES:                           'TABLES';
 | 
			
		||||
KW_TEMPORARY:                        'TEMPORARY';
 | 
			
		||||
KW_TIMECOL:                          'TIMECOL';
 | 
			
		||||
KW_TIMESTAMP_LTZ:                    'TIMESTAMP_LTZ';
 | 
			
		||||
KW_TIMESTAMPADD:                     'TIMESTAMPADD';
 | 
			
		||||
KW_TIMESTAMPDIFF:                    'TIMESTAMPDIFF';
 | 
			
		||||
KW_TRANSFORM:                        'TRANSFORM';
 | 
			
		||||
KW_TUMBLE:                           'TUMBLE';
 | 
			
		||||
KW_TYPE:                             'TYPE';
 | 
			
		||||
KW_UNDER:                            'UNDER';
 | 
			
		||||
KW_UNLOAD:                           'UNLOAD';
 | 
			
		||||
KW_USAGE:                            'USAGE';
 | 
			
		||||
KW_USE:                              'USE';
 | 
			
		||||
KW_UTF16:                            'UTF16';
 | 
			
		||||
KW_UTF32:                            'UTF32';
 | 
			
		||||
KW_UTF8:                             'UTF8';
 | 
			
		||||
KW_VERSION:                          'VERSION';
 | 
			
		||||
KW_VIEW:                             'VIEW';
 | 
			
		||||
KW_VIEWS:                            'VIEWS';
 | 
			
		||||
KW_VIRTUAL:                          'VIRTUAL';
 | 
			
		||||
KW_WATERMARK:                        'WATERMARK';
 | 
			
		||||
KW_WATERMARKS:                       'WATERMARKS';
 | 
			
		||||
KW_WEEK:                             'WEEK';
 | 
			
		||||
KW_WEEKS:                             'WEEKS';
 | 
			
		||||
KW_WORK:                             'WORK';
 | 
			
		||||
KW_WRAPPER:                          'WRAPPER';
 | 
			
		||||
KW_YEARS:                            'YEARS';
 | 
			
		||||
KW_ZONE:                             'ZONE';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// Reserved Keywords
 | 
			
		||||
// Please keep the keyword in alphabetical order if new keyword is added.
 | 
			
		||||
// Please add it to the reservedKeywords rule if new keyword is added.
 | 
			
		||||
// Reference link https://calcite.apache.org/docs/reference.html
 | 
			
		||||
 | 
			
		||||
KW_ABS:                              'ABS';
 | 
			
		||||
KW_ALL:                              'ALL';
 | 
			
		||||
KW_ALLOW:                            'ALLOW';
 | 
			
		||||
KW_ALTER :                           'ALTER';
 | 
			
		||||
KW_AND:                              'AND';
 | 
			
		||||
KW_ANY:                              'ANY';
 | 
			
		||||
KW_ARE:                              'ARE';
 | 
			
		||||
KW_ARRAY:                            'ARRAY';
 | 
			
		||||
KW_AS:                               'AS';
 | 
			
		||||
KW_ASYMMETRIC:                       'ASYMMETRIC';
 | 
			
		||||
KW_AT:                               'AT';
 | 
			
		||||
KW_AVG:                              'AVG';
 | 
			
		||||
KW_BEGIN:                            'BEGIN';
 | 
			
		||||
KW_BETWEEN:                          'BETWEEN';
 | 
			
		||||
KW_BIGINT:                           'BIGINT';
 | 
			
		||||
KW_BINARY:                           'BINARY';
 | 
			
		||||
KW_BIT:                              'BIT';
 | 
			
		||||
KW_BLOB:                             'BLOB';
 | 
			
		||||
KW_BOOLEAN:                          'BOOLEAN';
 | 
			
		||||
KW_BOTH:                             'BOTH';
 | 
			
		||||
KW_BY:                               'BY';
 | 
			
		||||
KW_CALL:                             'CALL';
 | 
			
		||||
KW_CALLED:                           'CALLED';
 | 
			
		||||
KW_CASCADED:                         'CASCADED';
 | 
			
		||||
KW_CASE:                             'CASE';
 | 
			
		||||
KW_CAST:                             'CAST';
 | 
			
		||||
KW_CEIL:                             'CEIL';
 | 
			
		||||
KW_CHAR:                             'CHAR';
 | 
			
		||||
KW_CHARACTER:                        'CHARACTER';
 | 
			
		||||
KW_CHECK:                            'CHECK';
 | 
			
		||||
KW_CLOB:                             'CLOB';
 | 
			
		||||
KW_CLOSE:                            'CLOSE';
 | 
			
		||||
KW_COALESCE:                         'COALESCE';
 | 
			
		||||
KW_CONFIG:                           'CONFIG';
 | 
			
		||||
KW_COLLATE:                          'COLLATE';
 | 
			
		||||
KW_COLLECT:                          'COLLECT';
 | 
			
		||||
KW_COLUMN:                           'COLUMN';
 | 
			
		||||
KW_COMMIT:                           'COMMIT';
 | 
			
		||||
KW_CONNECT:                          'CONNECT';
 | 
			
		||||
KW_CONSTRAINT:                       'CONSTRAINT';
 | 
			
		||||
KW_CONTAINS:                         'CONTAINS';
 | 
			
		||||
KW_CONVERT:                          'CONVERT';
 | 
			
		||||
KW_COUNT:                            'COUNT';
 | 
			
		||||
KW_CREATE:                           'CREATE';
 | 
			
		||||
KW_CROSS:                            'CROSS';
 | 
			
		||||
KW_CUBE:                             'CUBE';
 | 
			
		||||
KW_CURRENT:                          'CURRENT';
 | 
			
		||||
KW_CURSOR:                           'CURSOR';
 | 
			
		||||
KW_CYCLE:                            'CYCLE';
 | 
			
		||||
KW_DATE:                             'DATE';
 | 
			
		||||
KW_DATETIME:                         'DATETIME';
 | 
			
		||||
KW_DAY:                              'DAY';
 | 
			
		||||
KW_DEC:                              'DEC';
 | 
			
		||||
KW_DECIMAL:                          'DECIMAL';
 | 
			
		||||
KW_DECLARE:                          'DECLARE';
 | 
			
		||||
KW_DEFAULT:                          'DEFAULT';
 | 
			
		||||
KW_DEFINE:                           'DEFINE';
 | 
			
		||||
KW_DELETE:                           'DELETE';
 | 
			
		||||
KW_DESCRIBE:                         'DESCRIBE';
 | 
			
		||||
KW_DISTINCT:                         'DISTINCT';
 | 
			
		||||
KW_DOUBLE:                           'DOUBLE';
 | 
			
		||||
KW_DROP:                             'DROP';
 | 
			
		||||
KW_EACH:                             'EACH';
 | 
			
		||||
KW_ELSE:                             'ELSE';
 | 
			
		||||
KW_END:                              'END';
 | 
			
		||||
KW_EQUALS:                           'EQUALS';
 | 
			
		||||
KW_ESCAPE:                           'ESCAPE';
 | 
			
		||||
KW_EXCEPT:                           'EXCEPT';
 | 
			
		||||
KW_EXECUTE:                          'EXECUTE';
 | 
			
		||||
KW_EXISTS:                           'EXISTS';
 | 
			
		||||
KW_EXPLAIN:                          'EXPLAIN';
 | 
			
		||||
KW_EXTERNAL:                         'EXTERNAL';
 | 
			
		||||
KW_EXTRACT:                          'EXTRACT';
 | 
			
		||||
KW_FALSE:                            'FALSE';
 | 
			
		||||
KW_FLOAT:                            'FLOAT';
 | 
			
		||||
KW_FOR:                              'FOR';
 | 
			
		||||
KW_FROM:                             'FROM';
 | 
			
		||||
KW_FULL:                             'FULL';
 | 
			
		||||
KW_FUNCTION:                         'FUNCTION';
 | 
			
		||||
KW_GLOBAL:                           'GLOBAL';
 | 
			
		||||
KW_GRANT:                            'GRANT';
 | 
			
		||||
KW_GROUP:                            'GROUP';
 | 
			
		||||
KW_GROUPING:                         'GROUPING';
 | 
			
		||||
KW_GROUPS:                           'GROUPS';
 | 
			
		||||
KW_HAVING:                           'HAVING';
 | 
			
		||||
KW_HOUR:                             'HOUR';
 | 
			
		||||
KW_IMPORT:                           'IMPORT';
 | 
			
		||||
KW_IN:                               'IN';
 | 
			
		||||
KW_INCLUDING:                        'INCLUDING';
 | 
			
		||||
KW_INNER:                            'INNER';
 | 
			
		||||
KW_INOUT:                            'INOUT';
 | 
			
		||||
KW_INSERT:                           'INSERT';
 | 
			
		||||
KW_INT:                              'INT';
 | 
			
		||||
KW_INTEGER:                          'INTEGER';
 | 
			
		||||
KW_INTERSECT:                        'INTERSECT';
 | 
			
		||||
KW_INTERVAL:                         'INTERVAL';
 | 
			
		||||
KW_INTO:                             'INTO';
 | 
			
		||||
KW_IS:                               'IS';
 | 
			
		||||
KW_JOIN:                             'JOIN';
 | 
			
		||||
KW_LAG:                              'LAG';
 | 
			
		||||
KW_LANGUAGE:                         'LANGUAGE';
 | 
			
		||||
KW_LATERAL:                          'LATERAL';
 | 
			
		||||
KW_LEADING:                          'LEADING';
 | 
			
		||||
KW_LEFT:                             'LEFT';
 | 
			
		||||
KW_LIKE:                             'LIKE';
 | 
			
		||||
KW_LIMIT:                            'LIMIT';
 | 
			
		||||
KW_LOCAL:                            'LOCAL';
 | 
			
		||||
KW_MATCH:                            'MATCH';
 | 
			
		||||
KW_MATCH_RECOGNIZE:                  'MATCH_RECOGNIZE';
 | 
			
		||||
KW_MEASURES:                         'MEASURES';
 | 
			
		||||
KW_MERGE:                            'MERGE';
 | 
			
		||||
KW_METADATA:                         'METADATA';
 | 
			
		||||
KW_MINUS:                            'MINUS';
 | 
			
		||||
KW_MINUTE:                           'MINUTE';
 | 
			
		||||
KW_MODIFIES:                         'MODIFIES';
 | 
			
		||||
KW_MODULE:                           'MODULE';
 | 
			
		||||
KW_MONTH:                            'MONTH';
 | 
			
		||||
KW_MULTISET:                         'MULTISET';
 | 
			
		||||
KW_NATURAL:                          'NATURAL';
 | 
			
		||||
KW_NEXT:                             'NEXT';
 | 
			
		||||
KW_NO:                               'NO';
 | 
			
		||||
KW_NONE:                             'NONE';
 | 
			
		||||
KW_NOT:                              'NOT';
 | 
			
		||||
KW_NULL:                             'NULL';
 | 
			
		||||
KW_NUMERIC:                          'NUMERIC';
 | 
			
		||||
KW_OF:                               'OF';
 | 
			
		||||
KW_OFFSET:                           'OFFSET';
 | 
			
		||||
KW_ON:                               'ON';
 | 
			
		||||
KW_ONE:                              'ONE';
 | 
			
		||||
KW_OR:                               'OR';
 | 
			
		||||
KW_ORDER:                            'ORDER';
 | 
			
		||||
KW_OUT:                              'OUT';
 | 
			
		||||
KW_OUTER:                            'OUTER';
 | 
			
		||||
KW_OVER:                             'OVER';
 | 
			
		||||
KW_OVERLAY:                          'OVERLAY';
 | 
			
		||||
KW_PARTITION:                        'PARTITION';
 | 
			
		||||
KW_PATTERN:                          'PATTERN';
 | 
			
		||||
KW_PER:                              'PER';
 | 
			
		||||
KW_PERCENT:                          'PERCENT';
 | 
			
		||||
KW_PERIOD:                           'PERIOD';
 | 
			
		||||
KW_POSITION:                         'POSITION';
 | 
			
		||||
KW_POWER:                            'POWER';
 | 
			
		||||
KW_PRIMARY:                          'PRIMARY';
 | 
			
		||||
KW_RANGE:                            'RANGE';
 | 
			
		||||
KW_RANK:                             'RANK';
 | 
			
		||||
KW_RESET:                            'RESET';
 | 
			
		||||
KW_REVOKE:                           'REVOKE';
 | 
			
		||||
KW_RIGHT:                            'RIGHT';
 | 
			
		||||
KW_RLIKE:                            'RLIKE';
 | 
			
		||||
KW_ROLLBACK:                         'ROLLBACK';
 | 
			
		||||
KW_ROLLUP:                           'ROLLUP';
 | 
			
		||||
KW_ROW:                              'ROW';
 | 
			
		||||
KW_ROWS:                             'ROWS';
 | 
			
		||||
KW_SECOND:                           'SECOND';
 | 
			
		||||
KW_SELECT:                           'SELECT';
 | 
			
		||||
KW_SET:                              'SET';
 | 
			
		||||
KW_SHOW:                             'SHOW';
 | 
			
		||||
KW_SIMILAR:                          'SIMILAR';
 | 
			
		||||
KW_SKIP:                             'SKIP';
 | 
			
		||||
KW_SMALLINT:                         'SMALLINT';
 | 
			
		||||
KW_START:                            'START';
 | 
			
		||||
KW_STATIC:                           'STATIC';
 | 
			
		||||
KW_SUBSTRING:                        'SUBSTRING';
 | 
			
		||||
KW_SUM:                              'SUM';
 | 
			
		||||
KW_SYMMETRIC:                        'SYMMETRIC';
 | 
			
		||||
KW_SYSTEM:                           'SYSTEM';
 | 
			
		||||
KW_SYSTEM_TIME:                      'SYSTEM_TIME';
 | 
			
		||||
KW_SYSTEM_USER:                      'SYSTEM_USER';
 | 
			
		||||
KW_TABLE:                            'TABLE';
 | 
			
		||||
KW_TABLESAMPLE:                      'TABLESAMPLE';
 | 
			
		||||
KW_THEN:                             'THEN';
 | 
			
		||||
KW_TIME:                             'TIME';
 | 
			
		||||
KW_TIMESTAMP:                        'TIMESTAMP';
 | 
			
		||||
KW_TINYINT:                          'TINYINT';
 | 
			
		||||
KW_TO:                               'TO';
 | 
			
		||||
KW_TRAILING:                         'TRAILING';
 | 
			
		||||
KW_TRUE:                             'TRUE';
 | 
			
		||||
KW_TRUNCATE:                         'TRUNCATE';
 | 
			
		||||
KW_UNION:                            'UNION';
 | 
			
		||||
KW_UNIQUE:                           'UNIQUE';
 | 
			
		||||
KW_UNKNOWN:                          'UNKNOWN';
 | 
			
		||||
KW_UNNEST:                           'UNNEST';
 | 
			
		||||
KW_UPPER:                            'UPPER';
 | 
			
		||||
KW_UPSERT:                           'UPSERT';
 | 
			
		||||
KW_USER:                             'USER';
 | 
			
		||||
KW_USING:                            'USING';
 | 
			
		||||
KW_VALUE:                            'VALUE';
 | 
			
		||||
KW_VALUES:                           'VALUES';
 | 
			
		||||
KW_VARBINARY:                        'VARBINARY';
 | 
			
		||||
KW_VARCHAR:                          'VARCHAR';
 | 
			
		||||
KW_WHEN:                             'WHEN';
 | 
			
		||||
KW_WHERE:                            'WHERE';
 | 
			
		||||
KW_WINDOW:                           'WINDOW';
 | 
			
		||||
KW_WITH:                             'WITH';
 | 
			
		||||
KW_WITHIN:                           'WITHIN';
 | 
			
		||||
KW_WITHOUT:                          'WITHOUT';
 | 
			
		||||
KW_YEAR:                             'YEAR';
 | 
			
		||||
/**
 | 
			
		||||
 * Non-Reserved Keywords
 | 
			
		||||
 * Keywords that are used in the syntax rules but do not exist in the above keyword list section.
 | 
			
		||||
 * Please keep the keyword in alphabetical order if new keyword is added.
 | 
			
		||||
 * New non-reserved keywords should also be added to the nonReservedKeywords rule in FlinkSqlParser.g4 file.
 | 
			
		||||
 */
 | 
			
		||||
KW_ADD :'ADD';
 | 
			
		||||
KW_AFTER :'AFTER';
 | 
			
		||||
KW_ASC :'ASC';
 | 
			
		||||
KW_CASCADE :'CASCADE';
 | 
			
		||||
KW_CATALOG :'CATALOG';
 | 
			
		||||
KW_CENTURY :'CENTURY';
 | 
			
		||||
KW_CONFIG :'CONFIG';
 | 
			
		||||
KW_CONSTRAINTS :'CONSTRAINTS';
 | 
			
		||||
KW_CUMULATE :'CUMULATE';
 | 
			
		||||
KW_DATA :'DATA';
 | 
			
		||||
KW_DATABASE :'DATABASE';
 | 
			
		||||
KW_DAYS :'DAYS';
 | 
			
		||||
KW_DECADE :'DECADE';
 | 
			
		||||
KW_DESC :'DESC';
 | 
			
		||||
KW_DESCRIPTOR :'DESCRIPTOR';
 | 
			
		||||
KW_DIV :'DIV';
 | 
			
		||||
KW_ENGINE :'ENGINE';
 | 
			
		||||
KW_EPOCH :'EPOCH';
 | 
			
		||||
KW_EXCLUDING :'EXCLUDING';
 | 
			
		||||
KW_FILE :'FILE';
 | 
			
		||||
KW_FIRST :'FIRST';
 | 
			
		||||
KW_GENERATED :'GENERATED';
 | 
			
		||||
KW_HOP :'HOP';
 | 
			
		||||
KW_HOURS :'HOURS';
 | 
			
		||||
KW_IGNORE :'IGNORE';
 | 
			
		||||
KW_INCLUDING :'INCLUDING';
 | 
			
		||||
KW_JAR :'JAR';
 | 
			
		||||
KW_JARS :'JARS';
 | 
			
		||||
KW_JAVA :'JAVA';
 | 
			
		||||
KW_KEY :'KEY';
 | 
			
		||||
KW_LAST :'LAST';
 | 
			
		||||
KW_LOAD :'LOAD';
 | 
			
		||||
KW_MAP :'MAP';
 | 
			
		||||
KW_MICROSECOND :'MICROSECOND';
 | 
			
		||||
KW_MILLENNIUM :'MILLENNIUM';
 | 
			
		||||
KW_MILLISECOND :'MILLISECOND';
 | 
			
		||||
KW_MINUTES :'MINUTES';
 | 
			
		||||
KW_MONTHS :'MONTHS';
 | 
			
		||||
KW_NANOSECOND :'NANOSECOND';
 | 
			
		||||
KW_NULLS :'NULLS';
 | 
			
		||||
KW_OPTIONS :'OPTIONS';
 | 
			
		||||
KW_PAST :'PAST';
 | 
			
		||||
KW_PLAN :'PLAN';
 | 
			
		||||
KW_PRECEDING :'PRECEDING';
 | 
			
		||||
KW_PYTHON :'PYTHON';
 | 
			
		||||
KW_PYTHON_ARCHIVES :'PYTHON_ARCHIVES';
 | 
			
		||||
KW_PYTHON_DEPENDENCIES :'PYTHON_DEPENDENCIES';
 | 
			
		||||
KW_PYTHON_FILES :'PYTHON_FILES';
 | 
			
		||||
KW_PYTHON_JAR :'PYTHON_JAR';
 | 
			
		||||
KW_PYTHON_PARAMETER :'PYTHON_PARAMETER';
 | 
			
		||||
KW_PYTHON_REQUIREMENTS :'PYTHON_REQUIREMENTS';
 | 
			
		||||
KW_QUARTER :'QUARTER';
 | 
			
		||||
KW_REMOVE :'REMOVE';
 | 
			
		||||
KW_RESTRICT :'RESTRICT';
 | 
			
		||||
KW_SECONDS :'SECONDS';
 | 
			
		||||
KW_SESSION :'SESSION';
 | 
			
		||||
KW_SETS :'SETS';
 | 
			
		||||
KW_SIZE :'SIZE';
 | 
			
		||||
KW_SLIDE :'SLIDE';
 | 
			
		||||
KW_STEP :'STEP';
 | 
			
		||||
KW_TEMPORARY :'TEMPORARY';
 | 
			
		||||
KW_TIMECOL :'TIMECOL';
 | 
			
		||||
KW_TUMBLE :'TUMBLE';
 | 
			
		||||
KW_UNLOAD :'UNLOAD';
 | 
			
		||||
KW_VIEW :'VIEW';
 | 
			
		||||
KW_WEEK :'WEEK';
 | 
			
		||||
KW_YEARS :'YEARS';
 | 
			
		||||
KW_ZONE :'ZONE';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// Operators. Comparation
 | 
			
		||||
 | 
			
		||||
@ -414,7 +414,7 @@ withItemName
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
selectStatement
 | 
			
		||||
    : selectClause fromClause whereClause? groupByClause? havingClause? windowClause?
 | 
			
		||||
    : selectClause fromClause? whereClause? groupByClause? havingClause? windowClause?
 | 
			
		||||
    | selectClause fromClause matchRecognizeClause
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
@ -721,6 +721,7 @@ primaryExpression
 | 
			
		||||
    | identifier                                                                               #columnReference
 | 
			
		||||
    | dereferenceDefinition                                                                                      #dereference
 | 
			
		||||
    | LR_BRACKET expression RR_BRACKET                                                                       #parenthesizedExpression
 | 
			
		||||
    | KW_CURRENT_TIMESTAMP                                                                      #dateFunctionExpression
 | 
			
		||||
    // | EXTRACT LR_BRACKET field=identifier KW_FROM source=valueExpression RR_BRACKET                             #extract
 | 
			
		||||
    // | (SUBSTR | SUBSTRING) LR_BRACKET str=valueExpression (KW_FROM | COMMA) pos=valueExpression
 | 
			
		||||
    //   ((KW_FOR | COMMA) len=valueExpression)? RR_BRACKET                                                   #substring
 | 
			
		||||
@ -736,7 +737,6 @@ functionNameCreate
 | 
			
		||||
 | 
			
		||||
functionName
 | 
			
		||||
    : reservedKeywordsUsedAsFuncName
 | 
			
		||||
    | nonReservedKeywords
 | 
			
		||||
    | uid
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
@ -786,10 +786,6 @@ intervalValue
 | 
			
		||||
    | STRING_LITERAL
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
columnAlias
 | 
			
		||||
    : KW_AS? identifier identifierList?
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
tableAlias
 | 
			
		||||
    : KW_AS? identifier identifierList?
 | 
			
		||||
    ;
 | 
			
		||||
@ -1013,11 +1009,14 @@ timeIntervalUnit
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
reservedKeywordsUsedAsFuncParam
 | 
			
		||||
    : KW_LEADING
 | 
			
		||||
    | KW_TRAILING
 | 
			
		||||
    | KW_BOTH
 | 
			
		||||
    : KW_ARRAY
 | 
			
		||||
    | KW_ALL
 | 
			
		||||
    | KW_BOTH
 | 
			
		||||
    | KW_CURRENT_TIMESTAMP
 | 
			
		||||
    | KW_DISTINCT
 | 
			
		||||
    | KW_LEADING
 | 
			
		||||
    | KW_TRAILING
 | 
			
		||||
    | KW_VALUE
 | 
			
		||||
    | ASTERISK_SIGN
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
@ -1025,405 +1024,140 @@ reservedKeywordsUsedAsFuncName
 | 
			
		||||
    : KW_ABS
 | 
			
		||||
    | KW_ARRAY
 | 
			
		||||
    | KW_AVG
 | 
			
		||||
    | KW_CARDINALITY
 | 
			
		||||
    | KW_CAST
 | 
			
		||||
    | KW_CEIL
 | 
			
		||||
    | KW_CEILING
 | 
			
		||||
    | KW_COALESCE
 | 
			
		||||
    | KW_COLLECT
 | 
			
		||||
    | KW_COUNT
 | 
			
		||||
    | KW_CUME_DIST
 | 
			
		||||
    | KW_CURRENT_DATE
 | 
			
		||||
    | KW_CURRENT_TIME
 | 
			
		||||
    | KW_CURRENT_TIMESTAMP
 | 
			
		||||
    | KW_DATE
 | 
			
		||||
    | KW_DAYOFWEEK
 | 
			
		||||
    | KW_DAYOFYEAR
 | 
			
		||||
    | KW_DENSE_RANK
 | 
			
		||||
    | KW_ELEMENT
 | 
			
		||||
    | KW_EXP
 | 
			
		||||
    | KW_EXTRACT
 | 
			
		||||
    | KW_FIRST_VALUE
 | 
			
		||||
    | KW_FLOOR
 | 
			
		||||
    | KW_GROUPING
 | 
			
		||||
    | KW_HOUR
 | 
			
		||||
    | KW_IF
 | 
			
		||||
    | KW_LAG
 | 
			
		||||
    | KW_LAST_VALUE
 | 
			
		||||
    | KW_LEAD
 | 
			
		||||
    | KW_LEFT
 | 
			
		||||
    | KW_LN
 | 
			
		||||
    | KW_LOCALTIME
 | 
			
		||||
    | KW_LOCALTIMESTAMP
 | 
			
		||||
    | KW_LOWER
 | 
			
		||||
    | KW_MAP
 | 
			
		||||
    | KW_MAX
 | 
			
		||||
    | KW_MIN
 | 
			
		||||
    | KW_MINUTE
 | 
			
		||||
    | KW_MOD
 | 
			
		||||
    | KW_MONTH
 | 
			
		||||
    | KW_NULLIF
 | 
			
		||||
    | KW_NTILE
 | 
			
		||||
    | KW_OVERLAY
 | 
			
		||||
    | KW_PERCENT_RANK
 | 
			
		||||
    | KW_POSITION
 | 
			
		||||
    | KW_POWER
 | 
			
		||||
    | KW_QUARTER
 | 
			
		||||
    | KW_ROW
 | 
			
		||||
    | KW_ROWS
 | 
			
		||||
    | KW_ROW_NUMBER
 | 
			
		||||
    | KW_RANK
 | 
			
		||||
    | KW_RIGHT
 | 
			
		||||
    | KW_SECOND
 | 
			
		||||
    | KW_STDDEV_POP
 | 
			
		||||
    | KW_STDDEV_SAMP
 | 
			
		||||
    | KW_SUBSTRING
 | 
			
		||||
    | KW_SUM
 | 
			
		||||
    | KW_TIME
 | 
			
		||||
    | KW_TIMESTAMP
 | 
			
		||||
    | KW_TIMESTAMP_DIFF
 | 
			
		||||
    | KW_TRIM
 | 
			
		||||
    | KW_TRUNCATE
 | 
			
		||||
    | KW_TRY_CAST
 | 
			
		||||
    | KW_UPPER
 | 
			
		||||
    | KW_VAR_POP
 | 
			
		||||
    | KW_VAR_SAMP
 | 
			
		||||
    | KW_WEEK
 | 
			
		||||
    | KW_YEAR
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
reservedKeywords
 | 
			
		||||
    : KW_ABS
 | 
			
		||||
    | KW_ALL
 | 
			
		||||
    | KW_ALLOW
 | 
			
		||||
    | KW_ALTER 
 | 
			
		||||
    | KW_AND
 | 
			
		||||
    | KW_ANY
 | 
			
		||||
    | KW_ARE
 | 
			
		||||
    | KW_ARRAY
 | 
			
		||||
    | KW_AS
 | 
			
		||||
    | KW_ASYMMETRIC
 | 
			
		||||
    | KW_AT
 | 
			
		||||
    | KW_AVG
 | 
			
		||||
    | KW_BEGIN
 | 
			
		||||
    | KW_BETWEEN
 | 
			
		||||
    | KW_BIGINT
 | 
			
		||||
    | KW_BINARY
 | 
			
		||||
    | KW_BIT
 | 
			
		||||
    | KW_BLOB
 | 
			
		||||
    | KW_BOOLEAN
 | 
			
		||||
    | KW_BOTH
 | 
			
		||||
    | KW_BY
 | 
			
		||||
    | KW_CALL
 | 
			
		||||
    | KW_CALLED
 | 
			
		||||
    | KW_CASCADED
 | 
			
		||||
    | KW_CASE
 | 
			
		||||
    | KW_CAST
 | 
			
		||||
    | KW_CEIL
 | 
			
		||||
    | KW_CHAR
 | 
			
		||||
    | KW_CHARACTER
 | 
			
		||||
    | KW_CHECK
 | 
			
		||||
    | KW_CLOB
 | 
			
		||||
    | KW_CLOSE
 | 
			
		||||
    | KW_COALESCE
 | 
			
		||||
    | KW_COLLATE
 | 
			
		||||
    | KW_COLLECT
 | 
			
		||||
    | KW_COLUMN
 | 
			
		||||
    | KW_COMMIT
 | 
			
		||||
    | KW_CONNECT
 | 
			
		||||
    | KW_CONSTRAINT
 | 
			
		||||
    | KW_CONTAINS
 | 
			
		||||
    | KW_CONVERT
 | 
			
		||||
    | KW_COUNT
 | 
			
		||||
    | KW_CREATE
 | 
			
		||||
    | KW_CROSS
 | 
			
		||||
    | KW_CUBE
 | 
			
		||||
    | KW_CURRENT
 | 
			
		||||
    | KW_CURSOR
 | 
			
		||||
    | KW_CYCLE
 | 
			
		||||
    | KW_DATE
 | 
			
		||||
    | KW_DATETIME
 | 
			
		||||
    | KW_DAY
 | 
			
		||||
    | KW_DEC
 | 
			
		||||
    | KW_DECIMAL
 | 
			
		||||
    | KW_DECLARE
 | 
			
		||||
    | KW_DEFAULT
 | 
			
		||||
    | KW_DEFINE
 | 
			
		||||
    | KW_DELETE
 | 
			
		||||
    | KW_DESCRIBE
 | 
			
		||||
    | KW_DISTINCT
 | 
			
		||||
    | KW_DOUBLE
 | 
			
		||||
    | KW_DROP
 | 
			
		||||
    | KW_EACH
 | 
			
		||||
    | KW_ELSE
 | 
			
		||||
    | KW_END
 | 
			
		||||
    | KW_EQUALS
 | 
			
		||||
    | KW_EXCEPT
 | 
			
		||||
    | KW_EXECUTE
 | 
			
		||||
    | KW_EXISTS
 | 
			
		||||
    | KW_EXPLAIN
 | 
			
		||||
    | KW_EXTERNAL
 | 
			
		||||
    | KW_EXTRACT
 | 
			
		||||
    | KW_FALSE
 | 
			
		||||
    | KW_FLOAT
 | 
			
		||||
    | KW_FOR
 | 
			
		||||
    | KW_FROM
 | 
			
		||||
    | KW_FULL
 | 
			
		||||
    | KW_FUNCTION
 | 
			
		||||
    | KW_GLOBAL
 | 
			
		||||
    | KW_GRANT
 | 
			
		||||
    | KW_GROUP
 | 
			
		||||
    | KW_GROUPING
 | 
			
		||||
    | KW_GROUPS
 | 
			
		||||
    | KW_HAVING
 | 
			
		||||
    | KW_HOUR
 | 
			
		||||
    | KW_IMPORT
 | 
			
		||||
    | KW_IN
 | 
			
		||||
    | KW_INCLUDING
 | 
			
		||||
    | KW_INNER
 | 
			
		||||
    | KW_INOUT
 | 
			
		||||
    | KW_INSERT
 | 
			
		||||
    | KW_INT
 | 
			
		||||
    | KW_INTEGER
 | 
			
		||||
    | KW_INTERSECT
 | 
			
		||||
    | KW_INTERVAL
 | 
			
		||||
    | KW_INTO
 | 
			
		||||
    | KW_IS
 | 
			
		||||
    | KW_JOIN
 | 
			
		||||
    | KW_LAG
 | 
			
		||||
    | KW_LANGUAGE
 | 
			
		||||
    | KW_LATERAL
 | 
			
		||||
    | KW_LEADING
 | 
			
		||||
    | KW_LEFT
 | 
			
		||||
    | KW_LIKE
 | 
			
		||||
    | KW_LIMIT
 | 
			
		||||
    | KW_LOCAL
 | 
			
		||||
    | KW_MATCH
 | 
			
		||||
    | KW_MATCH_RECOGNIZE
 | 
			
		||||
    | KW_MEASURES
 | 
			
		||||
    | KW_MERGE
 | 
			
		||||
    | KW_METADATA
 | 
			
		||||
    | KW_MINUS
 | 
			
		||||
    | KW_MINUTE
 | 
			
		||||
    | KW_MODIFIES
 | 
			
		||||
    | KW_MODULE
 | 
			
		||||
    | KW_MONTH
 | 
			
		||||
    | KW_MULTISET
 | 
			
		||||
    | KW_NATURAL
 | 
			
		||||
    | KW_NEXT
 | 
			
		||||
    | KW_NO
 | 
			
		||||
    | KW_NONE
 | 
			
		||||
    | KW_NOT
 | 
			
		||||
    | KW_NULL
 | 
			
		||||
    | KW_NUMERIC
 | 
			
		||||
    | KW_OF
 | 
			
		||||
    | KW_OFFSET
 | 
			
		||||
    | KW_ON
 | 
			
		||||
    | KW_ONE
 | 
			
		||||
    | KW_OR
 | 
			
		||||
    | KW_ORDER
 | 
			
		||||
    | KW_OUT
 | 
			
		||||
    | KW_OUTER
 | 
			
		||||
    | KW_OVER
 | 
			
		||||
    | KW_OVERLAY
 | 
			
		||||
    | KW_PARTITION
 | 
			
		||||
    | KW_PATTERN
 | 
			
		||||
    | KW_PER
 | 
			
		||||
    | KW_PERCENT
 | 
			
		||||
    | KW_PERIOD
 | 
			
		||||
    | KW_POSITION
 | 
			
		||||
    | KW_PRIMARY
 | 
			
		||||
    | KW_RANGE
 | 
			
		||||
    | KW_RANK
 | 
			
		||||
    | KW_RESET
 | 
			
		||||
    | KW_REVOKE
 | 
			
		||||
    | KW_RIGHT
 | 
			
		||||
    | KW_RLIKE
 | 
			
		||||
    | KW_ROLLBACK
 | 
			
		||||
    | KW_ROLLUP
 | 
			
		||||
    | KW_ROW
 | 
			
		||||
    | KW_ROWS
 | 
			
		||||
    | KW_SECOND
 | 
			
		||||
    | KW_SELECT
 | 
			
		||||
    | KW_SET
 | 
			
		||||
    | KW_SHOW
 | 
			
		||||
    | KW_SIMILAR
 | 
			
		||||
    | KW_SKIP
 | 
			
		||||
    | KW_SMALLINT
 | 
			
		||||
    | KW_START
 | 
			
		||||
    | KW_STATIC
 | 
			
		||||
    | KW_SUBSTRING
 | 
			
		||||
    | KW_SUM
 | 
			
		||||
    | KW_SYSTEM_TIME
 | 
			
		||||
    | KW_SYSTEM
 | 
			
		||||
    | KW_SYSTEM_TIME
 | 
			
		||||
    | KW_SYSTEM_USER
 | 
			
		||||
    | KW_TABLE
 | 
			
		||||
    | KW_TABLESAMPLE
 | 
			
		||||
    | KW_THEN
 | 
			
		||||
    | KW_TIME
 | 
			
		||||
    | KW_TIMESTAMP
 | 
			
		||||
    | KW_TINYINT
 | 
			
		||||
    | KW_TO
 | 
			
		||||
    | KW_TRUE
 | 
			
		||||
    | KW_TRUNCATE
 | 
			
		||||
    | KW_UNION
 | 
			
		||||
    | KW_UNIQUE
 | 
			
		||||
    | KW_UNKNOWN
 | 
			
		||||
    | KW_UNNEST
 | 
			
		||||
    | KW_UPPER
 | 
			
		||||
    | KW_UPSERT
 | 
			
		||||
    | KW_USER
 | 
			
		||||
    | KW_USING
 | 
			
		||||
    | KW_VALUE
 | 
			
		||||
    | KW_VALUES
 | 
			
		||||
    | KW_VARBINARY
 | 
			
		||||
    | KW_VARCHAR
 | 
			
		||||
    | KW_WHEN
 | 
			
		||||
    | KW_WHERE
 | 
			
		||||
    | KW_WINDOW
 | 
			
		||||
    | KW_WITH
 | 
			
		||||
    | KW_WITHIN
 | 
			
		||||
    | KW_WITHOUT
 | 
			
		||||
    | KW_YEAR
 | 
			
		||||
    ;
 | 
			
		||||
 | 
			
		||||
nonReservedKeywords
 | 
			
		||||
    :KW_ADD                           
 | 
			
		||||
    |KW_ADMIN                         
 | 
			
		||||
    |KW_AFTER                         
 | 
			
		||||
    |KW_ANALYZE                       
 | 
			
		||||
    |KW_ASC                           
 | 
			
		||||
    |KW_BEFORE                        
 | 
			
		||||
    |KW_BYTES                         
 | 
			
		||||
    |KW_CASCADE                       
 | 
			
		||||
    |KW_CATALOG                       
 | 
			
		||||
    |KW_CATALOGS                      
 | 
			
		||||
    |KW_CENTURY                       
 | 
			
		||||
    |KW_CHAIN                         
 | 
			
		||||
    |KW_CHANGELOG_MODE                
 | 
			
		||||
    |KW_CHARACTERS                    
 | 
			
		||||
    |KW_COMMENT                       
 | 
			
		||||
    |KW_COMPACT                       
 | 
			
		||||
    |KW_COLUMNS                       
 | 
			
		||||
    |KW_CONSTRAINTS                   
 | 
			
		||||
    |KW_CONSTRUCTOR                   
 | 
			
		||||
    |KW_CUMULATE                      
 | 
			
		||||
    |KW_DATA                          
 | 
			
		||||
    |KW_DATABASE                      
 | 
			
		||||
    |KW_DATABASES                     
 | 
			
		||||
    |KW_DAYS                          
 | 
			
		||||
    |KW_DECADE                        
 | 
			
		||||
    |KW_DEFINED                       
 | 
			
		||||
    |KW_DESC                          
 | 
			
		||||
    |KW_DESCRIPTOR                    
 | 
			
		||||
    |KW_DIV                           
 | 
			
		||||
    |KW_ENCODING                      
 | 
			
		||||
    |KW_ENFORCED                      
 | 
			
		||||
    |KW_ENGINE                        
 | 
			
		||||
    |KW_ERROR                         
 | 
			
		||||
    |KW_ESTIMATED_COST                
 | 
			
		||||
    |KW_EXCEPTION                     
 | 
			
		||||
    |KW_EXCLUDE                       
 | 
			
		||||
    |KW_EXCLUDING                     
 | 
			
		||||
    |KW_EXTENDED                      
 | 
			
		||||
    |KW_FILE                          
 | 
			
		||||
    |KW_FINAL                         
 | 
			
		||||
    |KW_FIRST                         
 | 
			
		||||
    |KW_FOLLOWING                     
 | 
			
		||||
    |KW_FORMAT                        
 | 
			
		||||
    |KW_FORTRAN                       
 | 
			
		||||
    |KW_FOUND                         
 | 
			
		||||
    |KW_FRAC_SECOND                   
 | 
			
		||||
    |KW_FUNCTIONS                     
 | 
			
		||||
    |KW_GENERAL                       
 | 
			
		||||
    |KW_GENERATED                     
 | 
			
		||||
    |KW_GO                            
 | 
			
		||||
    |KW_GOTO                          
 | 
			
		||||
    |KW_GRANTED                       
 | 
			
		||||
    |KW_HOP                           
 | 
			
		||||
    |KW_HOURS                         
 | 
			
		||||
    |KW_IF                            
 | 
			
		||||
    |KW_IGNORE                        
 | 
			
		||||
    |KW_INCREMENT                     
 | 
			
		||||
    |KW_INPUT                         
 | 
			
		||||
    |KW_INVOKER                       
 | 
			
		||||
    |KW_JAR                           
 | 
			
		||||
    |KW_JARS                          
 | 
			
		||||
    |KW_JAVA                          
 | 
			
		||||
    |KW_JSON                          
 | 
			
		||||
    |KW_JSON_EXECUTION_PLAN           
 | 
			
		||||
    |KW_KEY                           
 | 
			
		||||
    |KW_KEY_MEMBER                    
 | 
			
		||||
    |KW_KEY_TYPE                      
 | 
			
		||||
    |KW_LABEL                         
 | 
			
		||||
    |KW_LAST                          
 | 
			
		||||
    |KW_LENGTH                        
 | 
			
		||||
    |KW_LEVEL                         
 | 
			
		||||
    |KW_LOAD                          
 | 
			
		||||
    |KW_MAP                           
 | 
			
		||||
    |KW_MICROSECOND                   
 | 
			
		||||
    |KW_MILLENNIUM                    
 | 
			
		||||
    |KW_MILLISECOND                   
 | 
			
		||||
    |KW_MINUTES                       
 | 
			
		||||
    |KW_MINVALUE                      
 | 
			
		||||
    |KW_MODIFY                        
 | 
			
		||||
    |KW_MODULES                       
 | 
			
		||||
    |KW_MONTHS                        
 | 
			
		||||
    |KW_NANOSECOND                    
 | 
			
		||||
    |KW_NULLS                         
 | 
			
		||||
    |KW_NUMBER                        
 | 
			
		||||
    |KW_OPTION                        
 | 
			
		||||
    |KW_OPTIONS                       
 | 
			
		||||
    |KW_ORDERING                      
 | 
			
		||||
    |KW_OUTPUT                        
 | 
			
		||||
    |KW_OVERWRITE                     
 | 
			
		||||
    |KW_OVERWRITING                   
 | 
			
		||||
    |KW_PARTITIONED                   
 | 
			
		||||
    |KW_PARTITIONS                    
 | 
			
		||||
    |KW_PASSING                       
 | 
			
		||||
    |KW_PAST                          
 | 
			
		||||
    |KW_PATH                          
 | 
			
		||||
    |KW_PLACING                       
 | 
			
		||||
    |KW_PLAN                          
 | 
			
		||||
    |KW_PRECEDING                     
 | 
			
		||||
    |KW_PRESERVE                      
 | 
			
		||||
    |KW_PRIOR                         
 | 
			
		||||
    |KW_PRIVILEGES                    
 | 
			
		||||
    |KW_PUBLIC                        
 | 
			
		||||
    |KW_PYTHON                        
 | 
			
		||||
    |KW_PYTHON_FILES                  
 | 
			
		||||
    |KW_PYTHON_REQUIREMENTS           
 | 
			
		||||
    |KW_PYTHON_DEPENDENCIES           
 | 
			
		||||
    |KW_PYTHON_JAR                    
 | 
			
		||||
    |KW_PYTHON_ARCHIVES               
 | 
			
		||||
    |KW_PYTHON_PARAMETER              
 | 
			
		||||
    |KW_QUARTER                       
 | 
			
		||||
    |KW_RAW                           
 | 
			
		||||
    |KW_READ                          
 | 
			
		||||
    |KW_RELATIVE                      
 | 
			
		||||
    |KW_REMOVE                        
 | 
			
		||||
    |KW_RENAME                        
 | 
			
		||||
    |KW_REPLACE                       
 | 
			
		||||
    |KW_RESPECT                       
 | 
			
		||||
    |KW_RESTART                       
 | 
			
		||||
    |KW_RESTRICT                      
 | 
			
		||||
    |KW_ROLE                          
 | 
			
		||||
    |KW_ROW_COUNT                     
 | 
			
		||||
    |KW_SCALA                         
 | 
			
		||||
    |KW_SCALAR                        
 | 
			
		||||
    |KW_SCALE                         
 | 
			
		||||
    |KW_SCHEMA                        
 | 
			
		||||
    |KW_SECONDS                       
 | 
			
		||||
    |KW_SECTION                       
 | 
			
		||||
    |KW_SECURITY                      
 | 
			
		||||
    |KW_SELF                          
 | 
			
		||||
    |KW_SERVER                        
 | 
			
		||||
    |KW_SERVER_NAME                   
 | 
			
		||||
    |KW_SESSION                       
 | 
			
		||||
    |KW_SETS                          
 | 
			
		||||
    |KW_SIMPLE                        
 | 
			
		||||
    |KW_SIZE                          
 | 
			
		||||
    |KW_SLIDE                         
 | 
			
		||||
    |KW_SOURCE                        
 | 
			
		||||
    |KW_SPACE                         
 | 
			
		||||
    |KW_STATE                         
 | 
			
		||||
    |KW_STATEMENT                     
 | 
			
		||||
    |KW_STEP                          
 | 
			
		||||
    |KW_STRING                        
 | 
			
		||||
    |KW_STRUCTURE                     
 | 
			
		||||
    |KW_STYLE                         
 | 
			
		||||
    |KW_TABLES                        
 | 
			
		||||
    |KW_TEMPORARY                     
 | 
			
		||||
    |KW_TIMECOL                       
 | 
			
		||||
    |KW_TIMESTAMP_LTZ                 
 | 
			
		||||
    |KW_TIMESTAMPADD                  
 | 
			
		||||
    |KW_TIMESTAMPDIFF                 
 | 
			
		||||
    |KW_TRANSFORM                     
 | 
			
		||||
    |KW_TUMBLE                        
 | 
			
		||||
    |KW_TYPE                          
 | 
			
		||||
    |KW_UNDER                         
 | 
			
		||||
    |KW_UNLOAD                        
 | 
			
		||||
    |KW_USAGE                         
 | 
			
		||||
    |KW_USE                           
 | 
			
		||||
    |KW_UTF16                         
 | 
			
		||||
    |KW_UTF32                         
 | 
			
		||||
    |KW_UTF8                          
 | 
			
		||||
    |KW_VERSION                       
 | 
			
		||||
    |KW_VIEW                          
 | 
			
		||||
    |KW_VIEWS                         
 | 
			
		||||
    |KW_VIRTUAL                       
 | 
			
		||||
    |KW_WATERMARK                     
 | 
			
		||||
    |KW_WATERMARKS                    
 | 
			
		||||
    |KW_WEEK                          
 | 
			
		||||
    |KW_WORK                          
 | 
			
		||||
    |KW_WRAPPER                       
 | 
			
		||||
    |KW_YEARS                         
 | 
			
		||||
    |KW_ZONE                          
 | 
			
		||||
    : KW_ADD
 | 
			
		||||
    | KW_AFTER
 | 
			
		||||
    | KW_ASC
 | 
			
		||||
    | KW_CASCADE
 | 
			
		||||
    | KW_CATALOG
 | 
			
		||||
    | KW_CENTURY
 | 
			
		||||
    | KW_CONFIG
 | 
			
		||||
    | KW_CONSTRAINTS
 | 
			
		||||
    | KW_CUMULATE
 | 
			
		||||
    | KW_DATA
 | 
			
		||||
    | KW_DATABASE
 | 
			
		||||
    | KW_DAYS
 | 
			
		||||
    | KW_DECADE
 | 
			
		||||
    | KW_DESC
 | 
			
		||||
    | KW_DESCRIPTOR
 | 
			
		||||
    | KW_DIV
 | 
			
		||||
    | KW_ENGINE
 | 
			
		||||
    | KW_EPOCH
 | 
			
		||||
    | KW_EXCLUDING
 | 
			
		||||
    | KW_FILE
 | 
			
		||||
    | KW_FIRST
 | 
			
		||||
    | KW_GENERATED
 | 
			
		||||
    | KW_HOP
 | 
			
		||||
    | KW_HOURS
 | 
			
		||||
    | KW_IGNORE
 | 
			
		||||
    | KW_INCLUDING
 | 
			
		||||
    | KW_JAR
 | 
			
		||||
    | KW_JARS
 | 
			
		||||
    | KW_JAVA
 | 
			
		||||
    | KW_KEY
 | 
			
		||||
    | KW_LAST
 | 
			
		||||
    | KW_LOAD
 | 
			
		||||
    | KW_MAP
 | 
			
		||||
    | KW_MICROSECOND
 | 
			
		||||
    | KW_MILLENNIUM
 | 
			
		||||
    | KW_MILLISECOND
 | 
			
		||||
    | KW_MINUTES
 | 
			
		||||
    | KW_MONTHS
 | 
			
		||||
    | KW_NANOSECOND
 | 
			
		||||
    | KW_NULLS
 | 
			
		||||
    | KW_OPTIONS
 | 
			
		||||
    | KW_PAST
 | 
			
		||||
    | KW_PLAN
 | 
			
		||||
    | KW_PRECEDING
 | 
			
		||||
    | KW_PYTHON
 | 
			
		||||
    | KW_PYTHON_ARCHIVES
 | 
			
		||||
    | KW_PYTHON_DEPENDENCIES
 | 
			
		||||
    | KW_PYTHON_FILES
 | 
			
		||||
    | KW_PYTHON_JAR
 | 
			
		||||
    | KW_PYTHON_PARAMETER
 | 
			
		||||
    | KW_PYTHON_REQUIREMENTS
 | 
			
		||||
    | KW_QUARTER
 | 
			
		||||
    | KW_REMOVE
 | 
			
		||||
    | KW_RESTRICT
 | 
			
		||||
    | KW_SECONDS
 | 
			
		||||
    | KW_SESSION
 | 
			
		||||
    | KW_SETS
 | 
			
		||||
    | KW_SIZE
 | 
			
		||||
    | KW_SLIDE
 | 
			
		||||
    | KW_STEP
 | 
			
		||||
    | KW_TEMPORARY
 | 
			
		||||
    | KW_TIMECOL
 | 
			
		||||
    | KW_TUMBLE
 | 
			
		||||
    | KW_UNLOAD
 | 
			
		||||
    | KW_VIEW
 | 
			
		||||
    | KW_WEEK
 | 
			
		||||
    | KW_YEARS
 | 
			
		||||
    | KW_ZONE                       
 | 
			
		||||
    ;
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@ -25,6 +25,7 @@ import { SubscriptContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ColumnReferenceContext } from "./FlinkSqlParser";
 | 
			
		||||
import { DereferenceContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ParenthesizedExpressionContext } from "./FlinkSqlParser";
 | 
			
		||||
import { DateFunctionExpressionContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorIdentContext } from "./FlinkSqlParser";
 | 
			
		||||
import { RealIdentContext } from "./FlinkSqlParser";
 | 
			
		||||
import { IdentityTransformContext } from "./FlinkSqlParser";
 | 
			
		||||
@ -181,7 +182,6 @@ import { MultiUnitsIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingUnitToUnitIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { UnitToUnitIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { IntervalValueContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ColumnAliasContext } from "./FlinkSqlParser";
 | 
			
		||||
import { TableAliasContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingIdentifierContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingIdentifierExtraContext } from "./FlinkSqlParser";
 | 
			
		||||
@ -222,7 +222,6 @@ import { TimePointUnitContext } from "./FlinkSqlParser";
 | 
			
		||||
import { TimeIntervalUnitContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsUsedAsFuncParamContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsUsedAsFuncNameContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsContext } from "./FlinkSqlParser";
 | 
			
		||||
import { NonReservedKeywordsContext } from "./FlinkSqlParser";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -517,6 +516,19 @@ export interface FlinkSqlParserListener extends ParseTreeListener {
 | 
			
		||||
	 */
 | 
			
		||||
	exitParenthesizedExpression?: (ctx: ParenthesizedExpressionContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by the `dateFunctionExpression`
 | 
			
		||||
	 * labeled alternative in `FlinkSqlParser.primaryExpression`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	enterDateFunctionExpression?: (ctx: DateFunctionExpressionContext) => void;
 | 
			
		||||
	/**
 | 
			
		||||
	 * Exit a parse tree produced by the `dateFunctionExpression`
 | 
			
		||||
	 * labeled alternative in `FlinkSqlParser.primaryExpression`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	exitDateFunctionExpression?: (ctx: DateFunctionExpressionContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by the `errorIdent`
 | 
			
		||||
	 * labeled alternative in `FlinkSqlParser.errorCapturingIdentifierExtra`.
 | 
			
		||||
@ -2251,17 +2263,6 @@ export interface FlinkSqlParserListener extends ParseTreeListener {
 | 
			
		||||
	 */
 | 
			
		||||
	exitIntervalValue?: (ctx: IntervalValueContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by `FlinkSqlParser.columnAlias`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	enterColumnAlias?: (ctx: ColumnAliasContext) => void;
 | 
			
		||||
	/**
 | 
			
		||||
	 * Exit a parse tree produced by `FlinkSqlParser.columnAlias`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	exitColumnAlias?: (ctx: ColumnAliasContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by `FlinkSqlParser.tableAlias`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
@ -2702,17 +2703,6 @@ export interface FlinkSqlParserListener extends ParseTreeListener {
 | 
			
		||||
	 */
 | 
			
		||||
	exitReservedKeywordsUsedAsFuncName?: (ctx: ReservedKeywordsUsedAsFuncNameContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by `FlinkSqlParser.reservedKeywords`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	enterReservedKeywords?: (ctx: ReservedKeywordsContext) => void;
 | 
			
		||||
	/**
 | 
			
		||||
	 * Exit a parse tree produced by `FlinkSqlParser.reservedKeywords`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 */
 | 
			
		||||
	exitReservedKeywords?: (ctx: ReservedKeywordsContext) => void;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Enter a parse tree produced by `FlinkSqlParser.nonReservedKeywords`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
 | 
			
		||||
@ -25,6 +25,7 @@ import { SubscriptContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ColumnReferenceContext } from "./FlinkSqlParser";
 | 
			
		||||
import { DereferenceContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ParenthesizedExpressionContext } from "./FlinkSqlParser";
 | 
			
		||||
import { DateFunctionExpressionContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorIdentContext } from "./FlinkSqlParser";
 | 
			
		||||
import { RealIdentContext } from "./FlinkSqlParser";
 | 
			
		||||
import { IdentityTransformContext } from "./FlinkSqlParser";
 | 
			
		||||
@ -181,7 +182,6 @@ import { MultiUnitsIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingUnitToUnitIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { UnitToUnitIntervalContext } from "./FlinkSqlParser";
 | 
			
		||||
import { IntervalValueContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ColumnAliasContext } from "./FlinkSqlParser";
 | 
			
		||||
import { TableAliasContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingIdentifierContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ErrorCapturingIdentifierExtraContext } from "./FlinkSqlParser";
 | 
			
		||||
@ -222,7 +222,6 @@ import { TimePointUnitContext } from "./FlinkSqlParser";
 | 
			
		||||
import { TimeIntervalUnitContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsUsedAsFuncParamContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsUsedAsFuncNameContext } from "./FlinkSqlParser";
 | 
			
		||||
import { ReservedKeywordsContext } from "./FlinkSqlParser";
 | 
			
		||||
import { NonReservedKeywordsContext } from "./FlinkSqlParser";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -410,6 +409,14 @@ export interface FlinkSqlParserVisitor<Result> extends ParseTreeVisitor<Result>
 | 
			
		||||
	 */
 | 
			
		||||
	visitParenthesizedExpression?: (ctx: ParenthesizedExpressionContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by the `dateFunctionExpression`
 | 
			
		||||
	 * labeled alternative in `FlinkSqlParser.primaryExpression`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 * @return the visitor result
 | 
			
		||||
	 */
 | 
			
		||||
	visitDateFunctionExpression?: (ctx: DateFunctionExpressionContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by the `errorIdent`
 | 
			
		||||
	 * labeled alternative in `FlinkSqlParser.errorCapturingIdentifierExtra`.
 | 
			
		||||
@ -1511,13 +1518,6 @@ export interface FlinkSqlParserVisitor<Result> extends ParseTreeVisitor<Result>
 | 
			
		||||
	 */
 | 
			
		||||
	visitIntervalValue?: (ctx: IntervalValueContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by `FlinkSqlParser.columnAlias`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 * @return the visitor result
 | 
			
		||||
	 */
 | 
			
		||||
	visitColumnAlias?: (ctx: ColumnAliasContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by `FlinkSqlParser.tableAlias`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
@ -1798,13 +1798,6 @@ export interface FlinkSqlParserVisitor<Result> extends ParseTreeVisitor<Result>
 | 
			
		||||
	 */
 | 
			
		||||
	visitReservedKeywordsUsedAsFuncName?: (ctx: ReservedKeywordsUsedAsFuncNameContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by `FlinkSqlParser.reservedKeywords`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
	 * @return the visitor result
 | 
			
		||||
	 */
 | 
			
		||||
	visitReservedKeywords?: (ctx: ReservedKeywordsContext) => Result;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Visit a parse tree produced by `FlinkSqlParser.nonReservedKeywords`.
 | 
			
		||||
	 * @param ctx the parse tree
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user