feat(flink): modify grammar to match keywords

This commit is contained in:
Erindcl
2020-12-08 16:04:56 +08:00
parent cc1d5abcdd
commit e67f991ede
11 changed files with 7148 additions and 4976 deletions

View File

@ -127,25 +127,8 @@ TRAILING: 'TRAILING';
IF: 'IF';
POSITION: 'POSITION';
EXTRACT: 'EXTRACT';
EQ: 'EQ';
NSEQ: 'NSEQ';
NEQ: 'NEQ';
NEQJ: 'NEQJ';
LT: 'LT';
LTE: 'LTE';
GT: 'GT';
GTE: 'GTE';
PLUS: 'PLUS';
MINUS: 'MINUS';
ASTERISK: 'ASTERISK';
SLASH: 'SLASH';
PERCENT: 'PERCENT';
DIV: 'DIV';
TILDE: 'TILDE';
AMPERSAND: 'AMPERSAND';
PIPE: 'PIPE';
CONCAT_PIPE: 'CONCAT_PIPE';
HAT: 'HAT';
PERCENTLIT: 'PERCENTLIT';
BUCKET: 'BUCKET';
OUT: 'OUT';
@ -240,23 +223,14 @@ LOCAL: 'LOCAL';
INPATH: 'INPATH';
WATERMARK: 'WATERMARK';
UNNEST: 'UNNEST';
MATCH_RECOGNIZE: 'MATCH_RECOGNIZE';
MEASURES: 'MEASURES';
ONE: 'ONE';
PER: 'PER';
MATCH: 'MATCH';
SKIP1: 'SKIP1';
NEXT: 'NEXT';
PAST: 'PAST';
PATTERN: 'PATTERN';
WITHIN: 'WITHIN';
DEFINE: 'DEFINE';
WS: 'WS';
SYSTEM: 'SYSTEM';
INCLUDING: 'INCLUDING';
EXCLUDING: 'EXCLUDING';
CONSTRAINTS: 'CONSTRAINTS';
OVERWRITING: 'OVERWRITING';
GENERATED: 'GENERATED';
CATALOG: 'CATALOG';
LANGUAGE: 'LANGUAGE';

View File

@ -463,11 +463,14 @@ identifierSeq
identifier
: strictIdentifier
| strictNonReserved
;
strictIdentifier
: unquotedIdentifier #unquotedIdentifierAlternative
| quotedIdentifier #quotedIdentifierAlternative
| ansiNonReserved #ansiNonReservedKeywords
| nonReserved #nonReservedKeywords
;
unquotedIdentifier
@ -574,3 +577,468 @@ setQuantifier
: DISTINCT
| ALL
;
ansiNonReserved
: ADD
| AFTER
| ALTER
| ANALYZE
| ANTI
| ARCHIVE
| ARRAY
| ASC
| AT
| BETWEEN
| BIGINT
| BINARY
| BOOLEAN
| BUCKET
| BUCKETS
| BY
| BYTES
| CACHE
| CASCADE
| CATALOG
| CATALOGS
| CHANGE
| CHAR
| CLEAR
| CLUSTER
| CLUSTERED
| CODEGEN
| COLLECTION
| COLUMNS
| COMMENT
| COMMIT
| COMPACT
| COMPACTIONS
| COMPUTE
| CONCATENATE
| CONSTRAINTS
| COST
| CUBE
| CURRENT
| DATA
| DATABASE
| DATABASES
| DATE
| DATETIME
| DBPROPERTIES
| DECIMAL
| DEFINED
| DELETE
| DELIMITED
| DESC
| DESCRIBE
| DFS
| DIRECTORIES
| DIRECTORY
| DISTRIBUTE
| DIV
| DOUBLE
| DROP
| ESCAPED
| EXCHANGE
| EXCLUDING
| EXISTS
| EXPLAIN
| EXPORT
| EXTENDED
| EXTERNAL
| EXTRACT
| FIELDS
| FILEFORMAT
| FIRST
| FLOAT
| FOLLOWING
| FORMAT
| FORMATTED
| FUNCTION
| FUNCTIONS
| GENERATED
| GLOBAL
| GROUPING
| IF
| IGNORE
| IMPORT
| INCLUDING
| INDEX
| INDEXES
| INPATH
| INPUTFORMAT
| INSERT
| INT
| INTERVAL
| ITEMS
| KEY
| KEYS
| LANGUAGE
| LAST
| LATERAL
| LAZY
| LIKE
| LIMIT
| LINES
| LIST
| LOAD
| LOCAL
| LOCATION
| LOCK
| LOCKS
| LOGICAL
| MACRO
| MAP
| MATCH
| MINUS
| MSCK
| MULTISET
| NEXT
| NO
| NULL
| NULLS
| OF
| OPTION
| OPTIONS
| OUT
| OUTPUTFORMAT
| OVER
| OVERWRITE
| PARTITION
| PARTITIONED
| PARTITIONS
| PERCENTLIT
| PERIOD
| PIVOT
| POSITION
| PRECEDING
| PRINCIPALS
| PURGE
| RANGE
| RAW
| RECORDREADER
| RECORDWRITER
| RECOVER
| REDUCE
| REFRESH
| RENAME
| REPAIR
| REPLACE
| RESET
| RESTRICT
| REVOKE
| RLIKE
| ROLE
| ROLES
| ROLLBACK
| ROLLUP
| ROW
| ROWS
| SEMI
| SEPARATED
| SERDE
| SERDEPROPERTIES
| SET
| SETMINUS
| SETS
| SHOW
| SKEWED
| SMALLINT
| SORT
| SORTED
| START
| STATISTICS
| STORED
| STRATIFY
| STRING
| STRUCT
| SYSTEM
| SYSTEM_TIME
| TABLES
| TABLESAMPLE
| TBLPROPERTIES
| TEMPORARY
| TERMINATED
| TIME
| TIMESTAMP
| TINYINT
| TOUCH
| TRANSACTION
| TRANSACTIONS
| TRANSFORM
| TRUE
| TRUNCATE
| UNARCHIVE
| UNBOUNDED
| UNCACHE
| UNLOCK
| UNSET
| UNNEST
| USE
| VALUES
| VARBINARY
| VARCHAR
| VIEW
| VIEWS
| WATERMARK
| WINDOW
| WITHIN
| WS
;
strictNonReserved
: ANTI
| CROSS
| EXCEPT
| FULL
| INNER
| INTERSECT
| JOIN
| LEFT
| NATURAL
| ON
| RIGHT
| SEMI
| SETMINUS
| UNION
| USING
;
nonReserved
: ADD
| AFTER
| ALL
| ALTER
| ANALYZE
| AND
| ANY
| COLUMNS
| ARRAY
| AS
| ASC
| AT
| BETWEEN
| BIGINT
| BINARY
| BOOLEAN
| BOTH
| BUCKET
| BUCKETS
| BY
| BYTES
| CACHE
| CASCADE
| CASE
| CAST
| CATALOG
| CATALOGS
| CHANGE
| CHAR
| CLEAR
| CLUSTER
| CLUSTERED
| CODEGEN
| COLLECTION
| COLUMN
| COLUMNS
| COMMENT
| COMMIT
| COMPACT
| COMPACTIONS
| COMPUTE
| CONCATENATE
| CONSTRAINT
| CONSTRAINTS
| COST
| CREATE
| CUBE
| CURRENT
| DATA
| DATABASE
| DATABASES
| DATE
| DATETIME
| DBPROPERTIES
| DECIMAL
| DEFINED
| DELETE
| DELIMITED
| DESC
| DESCRIBE
| DFS
| DIRECTORIES
| DIRECTORY
| DISTINCT
| DISTRIBUTE
| DIV
| DOUBLE
| DROP
| ELSE
| END
| ESCAPED
| EXCHANGE
| EXCLUDING
| EXISTS
| EXPLAIN
| EXPORT
| EXTENDED
| EXTERNAL
| EXTRACT
| FALSE
| FIELDS
| FILEFORMAT
| FIRST
| FLOAT
| FOLLOWING
| FOR
| FORMAT
| FORMATTED
| FROM
| FUNCTION
| FUNCTIONS
| GENERATED
| GLOBAL
| GRANT
| GROUP
| GROUPING
| HAVING
| IF
| IGNORE
| IMPORT
| IN
| INCLUDING
| INDEX
| INDEXES
| INPATH
| INPUTFORMAT
| INSERT
| INT
| INTERVAL
| INTO
| IS
| ITEMS
| KEY
| KEYS
| LANGUAGE
| LAST
| LATERAL
| LAZY
| LEADING
| LIKE
| LIMIT
| LINES
| LIST
| LOAD
| LOCAL
| LOCATION
| LOCK
| LOCKS
| LOGICAL
| MACRO
| MAP
| MATCH
| MINUS
| MSCK
| MULTISET
| NEXT
| NO
| NOT
| NULL
| NULLS
| OF
| OPTION
| OPTIONS
| OR
| ORDER
| OUT
| OUTER
| OUTPUTFORMAT
| OVER
| OVERWRITE
| PARTITION
| PARTITIONED
| PARTITIONS
| PERCENTLIT
| PERIOD
| PIVOT
| POSITION
| PRECEDING
| PRIMARY
| PRINCIPALS
| PURGE
| RANGE
| RAW
| RECORDREADER
| RECORDWRITER
| RECOVER
| REDUCE
| REFRESH
| RENAME
| REPAIR
| REPLACE
| RESET
| RESTRICT
| REVOKE
| RLIKE
| ROLE
| ROLES
| ROLLBACK
| ROLLUP
| ROW
| ROWS
| SELECT
| SEPARATED
| SERDE
| SERDEPROPERTIES
| SET
| SETS
| SHOW
| SKEWED
| SMALLINT
| SORT
| SORTED
| START
| STATISTICS
| STORED
| STRATIFY
| STRING
| STRUCT
| SYSTEM
| SYSTEM_TIME
| TABLE
| TABLES
| TABLESAMPLE
| TBLPROPERTIES
| TEMPORARY
| TERMINATED
| THEN
| TIME
| TIMESTAMP
| TINYINT
| TO
| TOUCH
| TRAILING
| TRANSACTION
| TRANSACTIONS
| TRANSFORM
| TRUE
| TRUNCATE
| UNARCHIVE
| UNBOUNDED
| UNCACHE
| UNLOCK
| UNSET
| UNNEST
| USE
| VALUES
| VARBINARY
| VARCHAR
| VIEW
| VIEWS
| WATERMARK
| WHEN
| WHERE
| WINDOW
| WITH
| WITHIN
| WS
;