refactor: migrate antlr4 v4.12.0 to antlr4ts(4.9.0) (#106)
* build: ignore gen folder * refactor: remove useless code * fix: correct the Javascript usage in grammar * refactor: move to antlr4ts * fix: remove useless * fix: update grammars for javascript target * refactor: migrate to antlr4ts * refactor: migrate to antlr4ts * refactor: implements ParserErrorListener * fix: rename the start reserved word * refactor: remove unused import * refactor: migrate to antlr4ts * test: update the expects of test cases * refactor: migrate hive to antlr4ts * refactor: update the incompatible syntax for antlr4ts * refactor: migrate pgsql grammar to antlr4ts, increasing tests * refactor: migrate the plsql to antlr4ts * build: remove unused config * build: migrate to antlr4ts * build: migrate ts-jest to @swc/jest * refactor: migrate to anltr4ts * build: migrate ts-jest to @swc/jest
This commit is contained in:
@ -22,15 +22,21 @@ lexer grammar PlSqlLexer;
|
||||
|
||||
options {
|
||||
superClass=PlSqlBaseLexer;
|
||||
caseInsensitive = true;
|
||||
}
|
||||
@lexer::header {
|
||||
import PlSqlBaseLexer from "./PlSqlBaseLexer";
|
||||
}
|
||||
|
||||
ABORT: 'ABORT';
|
||||
ABS: 'ABS';
|
||||
ABSENT: 'ABSENT';
|
||||
ACCESS: 'ACCESS';
|
||||
ACCESSED: 'ACCESSED';
|
||||
ACCOUNT: 'ACCOUNT';
|
||||
ACL: 'ACL';
|
||||
ACOS: 'ACOS';
|
||||
ACROSS: 'ACROSS';
|
||||
ACTION: 'ACTION';
|
||||
ACTIONS: 'ACTIONS';
|
||||
ACTIVATE: 'ACTIVATE';
|
||||
@ -63,8 +69,11 @@ ALLOCATE: 'ALLOCATE';
|
||||
ALLOW: 'ALLOW';
|
||||
ALL_ROWS: 'ALL_ROWS';
|
||||
ALTER: 'ALTER';
|
||||
ALTERNATE: 'ALTERNATE';
|
||||
ALWAYS: 'ALWAYS';
|
||||
ANALYTIC: 'ANALYTIC';
|
||||
ANALYZE: 'ANALYZE';
|
||||
ANCESTOR: 'ANCESTOR';
|
||||
ANCILLARY: 'ANCILLARY';
|
||||
AND: 'AND';
|
||||
AND_EQUAL: 'AND_EQUAL';
|
||||
@ -116,7 +125,9 @@ AUTO_REOPTIMIZE: 'AUTO_REOPTIMIZE';
|
||||
AVAILABILITY: 'AVAILABILITY';
|
||||
AVRO: 'AVRO';
|
||||
BACKGROUND: 'BACKGROUND';
|
||||
BACKINGFILE: 'BACKINGFILE';
|
||||
BACKUP: 'BACKUP';
|
||||
BACKUPS: 'BACKUPS';
|
||||
BACKUPSET: 'BACKUPSET';
|
||||
BASIC: 'BASIC';
|
||||
BASICFILE: 'BASICFILE';
|
||||
@ -184,10 +195,12 @@ CALL: 'CALL';
|
||||
CANCEL: 'CANCEL';
|
||||
CANONICAL: 'CANONICAL';
|
||||
CAPACITY: 'CAPACITY';
|
||||
CAPTION: 'CAPTION';
|
||||
CARDINALITY: 'CARDINALITY';
|
||||
CASCADE: 'CASCADE';
|
||||
CASE: 'CASE';
|
||||
CAST: 'CAST';
|
||||
CASESENSITIVE: 'CASE-SENSITIVE';
|
||||
CATEGORY: 'CATEGORY';
|
||||
CDBDEFAULT: 'CDB$DEFAULT';
|
||||
CEIL: 'CEIL';
|
||||
@ -210,7 +223,10 @@ CHOOSE: 'CHOOSE';
|
||||
CHR: 'CHR';
|
||||
CHUNK: 'CHUNK';
|
||||
CLASS: 'CLASS';
|
||||
CLASSIFICATION: 'CLASSIFICATION';
|
||||
CLASSIFIER: 'CLASSIFIER';
|
||||
CLAUSE: 'CLAUSE';
|
||||
CLEAN: 'CLEAN';
|
||||
CLEANUP: 'CLEANUP';
|
||||
CLEAR: 'CLEAR';
|
||||
C_LETTER: 'C';
|
||||
@ -243,6 +259,7 @@ COLUMN_VALUE: 'COLUMN_VALUE';
|
||||
COMMENT: 'COMMENT';
|
||||
COMMIT: 'COMMIT';
|
||||
COMMITTED: 'COMMITTED';
|
||||
COMMON: 'COMMON';
|
||||
COMMON_DATA: 'COMMON_DATA';
|
||||
COMPACT: 'COMPACT';
|
||||
COMPATIBILITY: 'COMPATIBILITY';
|
||||
@ -284,8 +301,10 @@ CONSTRAINT: 'CONSTRAINT';
|
||||
CONSTRAINTS: 'CONSTRAINTS';
|
||||
CONSTRUCTOR: 'CONSTRUCTOR';
|
||||
CONTAINER: 'CONTAINER';
|
||||
CONTAINER_DATA: 'CONTAINER_DATA';
|
||||
CONTAINERS: 'CONTAINERS';
|
||||
CONTAINERS_DEFAULT: 'CONTAINERS_DEFAULT';
|
||||
CONTAINER_DATA: 'CONTAINER_DATA';
|
||||
CONTAINER_MAP: 'CONTAINER_MAP';
|
||||
CONTENT: 'CONTENT';
|
||||
CONTENTS: 'CONTENTS';
|
||||
CONTEXT: 'CONTEXT';
|
||||
@ -293,6 +312,7 @@ CONTINUE: 'CONTINUE';
|
||||
CONTROLFILE: 'CONTROLFILE';
|
||||
CON_UID_TO_ID: 'CON_UID_TO_ID';
|
||||
CONVERT: 'CONVERT';
|
||||
CONVERSION: 'CONVERSION';
|
||||
COOKIE: 'COOKIE';
|
||||
COPY: 'COPY';
|
||||
CORR_K: 'CORR_K';
|
||||
@ -376,6 +396,8 @@ DECRYPT: 'DECRYPT';
|
||||
DEDUPLICATE: 'DEDUPLICATE';
|
||||
DEFAULT: 'DEFAULT';
|
||||
DEFAULTS: 'DEFAULTS';
|
||||
DEFAULT_COLLATION: 'DEFAULT_COLLATION';
|
||||
DEFAULT_CREDENTIAL: 'DEFAULT_CREDENTIAL';
|
||||
DEFERRABLE: 'DEFERRABLE';
|
||||
DEFERRED: 'DEFERRED';
|
||||
DEFINED: 'DEFINED';
|
||||
@ -395,6 +417,7 @@ DEQUEUE: 'DEQUEUE';
|
||||
DEREF: 'DEREF';
|
||||
DEREF_NO_REWRITE: 'DEREF_NO_REWRITE';
|
||||
DESC: 'DESC';
|
||||
DESCRIPTION: 'DESCRIPTION';
|
||||
DESTROY: 'DESTROY';
|
||||
DETACHED: 'DETACHED';
|
||||
DETERMINES: 'DETERMINES';
|
||||
@ -445,6 +468,7 @@ DV: 'DV';
|
||||
DYNAMIC: 'DYNAMIC';
|
||||
DYNAMIC_SAMPLING: 'DYNAMIC_SAMPLING';
|
||||
DYNAMIC_SAMPLING_EST_CDN: 'DYNAMIC_SAMPLING_EST_CDN';
|
||||
E_LETTER: 'E';
|
||||
EACH: 'EACH';
|
||||
EDITIONABLE: 'EDITIONABLE';
|
||||
EDITION: 'EDITION';
|
||||
@ -537,6 +561,7 @@ FAR: 'FAR';
|
||||
FAST: 'FAST';
|
||||
FASTSTART: 'FASTSTART';
|
||||
FBTSCAN: 'FBTSCAN';
|
||||
FEATURE: 'FEATURE';
|
||||
FEATURE_DETAILS: 'FEATURE_DETAILS';
|
||||
FEATURE_ID: 'FEATURE_ID';
|
||||
FEATURE_SET: 'FEATURE_SET';
|
||||
@ -544,6 +569,8 @@ FEATURE_VALUE: 'FEATURE_VALUE';
|
||||
FETCH: 'FETCH';
|
||||
FILE: 'FILE';
|
||||
FILE_NAME_CONVERT: 'FILE_NAME_CONVERT';
|
||||
FILEGROUP: 'FILEGROUP';
|
||||
FILESTORE: 'FILESTORE';
|
||||
FILESYSTEM_LIKE_LOGGING: 'FILESYSTEM_LIKE_LOGGING';
|
||||
FILTER: 'FILTER';
|
||||
FINAL: 'FINAL';
|
||||
@ -559,6 +586,7 @@ FLASHBACK: 'FLASHBACK';
|
||||
FLASH_CACHE: 'FLASH_CACHE';
|
||||
FLOAT: 'FLOAT';
|
||||
FLOB: 'FLOB';
|
||||
FLEX: 'FLEX';
|
||||
FLOOR: 'FLOOR';
|
||||
FLUSH: 'FLUSH';
|
||||
FOLDER: 'FOLDER';
|
||||
@ -583,6 +611,8 @@ FULL: 'FULL';
|
||||
FULL_OUTER_JOIN_TO_OUTER: 'FULL_OUTER_JOIN_TO_OUTER';
|
||||
FUNCTION: 'FUNCTION';
|
||||
FUNCTIONS: 'FUNCTIONS';
|
||||
FTP: 'FTP';
|
||||
G_LETTER: 'G';
|
||||
GATHER_OPTIMIZER_STATISTICS: 'GATHER_OPTIMIZER_STATISTICS';
|
||||
GATHER_PLAN_STATISTICS: 'GATHER_PLAN_STATISTICS';
|
||||
GBY_CONC_ROLLUP: 'GBY_CONC_ROLLUP';
|
||||
@ -604,6 +634,7 @@ GROUPS: 'GROUPS';
|
||||
GUARANTEED: 'GUARANTEED';
|
||||
GUARANTEE: 'GUARANTEE';
|
||||
GUARD: 'GUARD';
|
||||
HALF_YEARS: 'HALF_YEARS';
|
||||
HASH_AJ: 'HASH_AJ';
|
||||
HASH: 'HASH';
|
||||
HASHKEYS: 'HASHKEYS';
|
||||
@ -616,14 +647,20 @@ HEXTORAW: 'HEXTORAW';
|
||||
HEXTOREF: 'HEXTOREF';
|
||||
HIDDEN_KEYWORD: 'HIDDEN';
|
||||
HIDE: 'HIDE';
|
||||
HIER_ORDER: 'HIER_ORDER';
|
||||
HIERARCHICAL: 'HIERARCHICAL';
|
||||
HIERARCHIES: 'HIERARCHIES';
|
||||
HIERARCHY: 'HIERARCHY';
|
||||
HIGH: 'HIGH';
|
||||
HINTSET_BEGIN: 'HINTSET_BEGIN';
|
||||
HINTSET_END: 'HINTSET_END';
|
||||
HOT: 'HOT';
|
||||
HOUR: 'HOUR';
|
||||
HOURS: 'HOURS';
|
||||
HTTP: 'HTTP';
|
||||
HWM_BROKERED: 'HWM_BROKERED';
|
||||
HYBRID: 'HYBRID';
|
||||
H_LETTER: 'H';
|
||||
IDENTIFIED: 'IDENTIFIED';
|
||||
IDENTIFIER: 'IDENTIFIER';
|
||||
IDENTITY: 'IDENTITY';
|
||||
@ -640,6 +677,7 @@ IMMEDIATE: 'IMMEDIATE';
|
||||
IMPACT: 'IMPACT';
|
||||
IMPORT: 'IMPORT';
|
||||
INACTIVE: 'INACTIVE';
|
||||
INACTIVE_ACCOUNT_TIME: 'INACTIVE_ACCOUNT_TIME';
|
||||
INCLUDE: 'INCLUDE';
|
||||
INCLUDE_VERSION: 'INCLUDE_VERSION';
|
||||
INCLUDING: 'INCLUDING';
|
||||
@ -719,6 +757,7 @@ INVALIDATE: 'INVALIDATE';
|
||||
INVISIBLE: 'INVISIBLE';
|
||||
IN_XQUERY: 'IN_XQUERY';
|
||||
IS: 'IS';
|
||||
IS_LEAF: 'IS_LEAF';
|
||||
ISOLATION: 'ISOLATION';
|
||||
ISOLATION_LEVEL: 'ISOLATION_LEVEL';
|
||||
ITERATE: 'ITERATE';
|
||||
@ -741,7 +780,9 @@ JSON_SERIALIZE: 'JSON_SERIALIZE';
|
||||
JSON_TABLE: 'JSON_TABLE';
|
||||
JSON_TEXTCONTAINS2: 'JSON_TEXTCONTAINS2';
|
||||
JSON_TEXTCONTAINS: 'JSON_TEXTCONTAINS';
|
||||
JSON_TRANSFORM: 'JSON_TRANSFORM';
|
||||
JSON_VALUE: 'JSON_VALUE';
|
||||
K_LETTER: 'K';
|
||||
KEEP_DUPLICATES: 'KEEP_DUPLICATES';
|
||||
KEEP: 'KEEP';
|
||||
KERBEROS: 'KERBEROS';
|
||||
@ -762,6 +803,9 @@ LAYER: 'LAYER';
|
||||
LDAP_REGISTRATION_ENABLED: 'LDAP_REGISTRATION_ENABLED';
|
||||
LDAP_REGISTRATION: 'LDAP_REGISTRATION';
|
||||
LDAP_REG_SYNC_INTERVAL: 'LDAP_REG_SYNC_INTERVAL';
|
||||
LEAF: 'LEAF';
|
||||
LEAD_CDB: 'LEAD_CDB';
|
||||
LEAD_CDB_URI: 'LEAD_CDB_URI';
|
||||
LEADING: 'LEADING';
|
||||
LEFT: 'LEFT';
|
||||
LENGTH2: 'LENGTH2';
|
||||
@ -771,6 +815,7 @@ LENGTHC: 'LENGTHC';
|
||||
LENGTH: 'LENGTH';
|
||||
LESS: 'LESS';
|
||||
LEVEL: 'LEVEL';
|
||||
LEVEL_NAME: 'LEVEL_NAME';
|
||||
LEVELS: 'LEVELS';
|
||||
LIBRARY: 'LIBRARY';
|
||||
LIFECYCLE: 'LIFECYCLE';
|
||||
@ -797,6 +842,7 @@ LOCALTIME: 'LOCALTIME';
|
||||
LOCALTIMESTAMP: 'LOCALTIMESTAMP';
|
||||
LOCATION: 'LOCATION';
|
||||
LOCATOR: 'LOCATOR';
|
||||
LOCKDOWN: 'LOCKDOWN';
|
||||
LOCKED: 'LOCKED';
|
||||
LOCKING: 'LOCKING';
|
||||
LOCK: 'LOCK';
|
||||
@ -813,16 +859,19 @@ LOGON: 'LOGON';
|
||||
LOG_READ_ONLY_VIOLATIONS: 'LOG_READ_ONLY_VIOLATIONS';
|
||||
LONG: 'LONG';
|
||||
LOOP: 'LOOP';
|
||||
LOST: 'LOST';
|
||||
LOWER: 'LOWER';
|
||||
LOW: 'LOW';
|
||||
LPAD: 'LPAD';
|
||||
LTRIM: 'LTRIM';
|
||||
M_LETTER: 'M';
|
||||
MAIN: 'MAIN';
|
||||
MAKE_REF: 'MAKE_REF';
|
||||
MANAGED: 'MANAGED';
|
||||
MANAGE: 'MANAGE';
|
||||
MANAGEMENT: 'MANAGEMENT';
|
||||
MANAGER: 'MANAGER';
|
||||
MANDATORY: 'MANDATORY';
|
||||
MANUAL: 'MANUAL';
|
||||
MAP: 'MAP';
|
||||
MAPPING: 'MAPPING';
|
||||
@ -850,6 +899,10 @@ MEASURE: 'MEASURE';
|
||||
MEASURES: 'MEASURES';
|
||||
MEDIUM: 'MEDIUM';
|
||||
MEMBER: 'MEMBER';
|
||||
MEMBER_CAPTION: 'MEMBER_CAPTION';
|
||||
MEMBER_DESCRIPTION: 'MEMBER_DESCRIPTION';
|
||||
MEMBER_NAME: 'MEMBER_NAME';
|
||||
MEMBER_UNIQUE_NAME: 'MEMBER_UNIQUE_NAME';
|
||||
MEMCOMPRESS: 'MEMCOMPRESS';
|
||||
MEMORY: 'MEMORY';
|
||||
MERGEACTIONS: 'MERGE$ACTIONS';
|
||||
@ -868,10 +921,13 @@ MINING: 'MINING';
|
||||
MINUS: 'MINUS';
|
||||
MINUS_NULL: 'MINUS_NULL';
|
||||
MINUTE: 'MINUTE';
|
||||
MINUTES: 'MINUTES';
|
||||
MINVALUE: 'MINVALUE';
|
||||
MIRRORCOLD: 'MIRRORCOLD';
|
||||
MIRRORHOT: 'MIRRORHOT';
|
||||
MIRROR: 'MIRROR';
|
||||
MISSING: 'MISSING';
|
||||
MISMATCH: 'MISMATCH';
|
||||
MLSLABEL: 'MLSLABEL';
|
||||
MODEL_COMPILE_SUBQUERY: 'MODEL_COMPILE_SUBQUERY';
|
||||
MODEL_DONTVERIFY_UNIQUENESS: 'MODEL_DONTVERIFY_UNIQUENESS';
|
||||
@ -896,6 +952,7 @@ MONTHS_BETWEEN: 'MONTHS_BETWEEN';
|
||||
MONTHS: 'MONTHS';
|
||||
MOUNT: 'MOUNT';
|
||||
MOUNTPATH: 'MOUNTPATH';
|
||||
MOUNTPOINT: 'MOUNTPOINT';
|
||||
MOVEMENT: 'MOVEMENT';
|
||||
MOVE: 'MOVE';
|
||||
MULTIDIMENSIONAL: 'MULTIDIMENSIONAL';
|
||||
@ -1053,6 +1110,7 @@ NO_PLACE_DISTINCT: 'NO_PLACE_DISTINCT';
|
||||
NO_PLACE_GROUP_BY: 'NO_PLACE_GROUP_BY';
|
||||
NO_PQ_CONCURRENT_UNION: 'NO_PQ_CONCURRENT_UNION';
|
||||
NO_PQ_MAP: 'NO_PQ_MAP';
|
||||
NOPROMPT: 'NOPROMPT';
|
||||
NO_PQ_REPLICATE: 'NO_PQ_REPLICATE';
|
||||
NO_PQ_SKEW: 'NO_PQ_SKEW';
|
||||
NO_PRUNE_GSETS: 'NO_PRUNE_GSETS';
|
||||
@ -1214,6 +1272,7 @@ OVERRIDING: 'OVERRIDING';
|
||||
OWNER: 'OWNER';
|
||||
OWNERSHIP: 'OWNERSHIP';
|
||||
OWN: 'OWN';
|
||||
P_LETTER: 'P';
|
||||
PACKAGE: 'PACKAGE';
|
||||
PACKAGES: 'PACKAGES';
|
||||
PARALLEL_ENABLE: 'PARALLEL_ENABLE';
|
||||
@ -1223,6 +1282,8 @@ PARAMETERFILE: 'PARAMETERFILE';
|
||||
PARAMETERS: 'PARAMETERS';
|
||||
PARAM: 'PARAM';
|
||||
PARENT: 'PARENT';
|
||||
PARENT_LEVEL_NAME: 'PARENT_LEVEL_NAME';
|
||||
PARENT_UNIQUE_NAME: 'PARENT_UNIQUE_NAME';
|
||||
PARITY: 'PARITY';
|
||||
PARTIAL_JOIN: 'PARTIAL_JOIN';
|
||||
PARTIALLY: 'PARTIALLY';
|
||||
@ -1241,6 +1302,7 @@ PASSWORD_LOCK_TIME: 'PASSWORD_LOCK_TIME';
|
||||
PASSWORD: 'PASSWORD';
|
||||
PASSWORD_REUSE_MAX: 'PASSWORD_REUSE_MAX';
|
||||
PASSWORD_REUSE_TIME: 'PASSWORD_REUSE_TIME';
|
||||
PASSWORD_ROLLOVER_TIME: 'PASSWORD_ROLLOVER_TIME';
|
||||
PASSWORD_VERIFY_FUNCTION: 'PASSWORD_VERIFY_FUNCTION';
|
||||
PAST: 'PAST';
|
||||
PATCH: 'PATCH';
|
||||
@ -1289,6 +1351,7 @@ PLSQL_DEBUG: 'PLSQL_DEBUG';
|
||||
PLSQL_OPTIMIZE_LEVEL: 'PLSQL_OPTIMIZE_LEVEL';
|
||||
PLSQL_WARNINGS: 'PLSQL_WARNINGS';
|
||||
PLUGGABLE: 'PLUGGABLE';
|
||||
PMEM: 'PMEM';
|
||||
POINT: 'POINT';
|
||||
POLICY: 'POLICY';
|
||||
POOL_16K: 'POOL_16K';
|
||||
@ -1343,8 +1406,10 @@ PROFILE: 'PROFILE';
|
||||
PROGRAM: 'PROGRAM';
|
||||
PROJECT: 'PROJECT';
|
||||
PROPAGATE: 'PROPAGATE';
|
||||
PROPERTY: 'PROPERTY';
|
||||
PROTECTED: 'PROTECTED';
|
||||
PROTECTION: 'PROTECTION';
|
||||
PROTOCOL: 'PROTOCOL';
|
||||
PROXY: 'PROXY';
|
||||
PRUNING: 'PRUNING';
|
||||
PUBLIC: 'PUBLIC';
|
||||
@ -1356,6 +1421,7 @@ PX_FAULT_TOLERANCE: 'PX_FAULT_TOLERANCE';
|
||||
PX_GRANULE: 'PX_GRANULE';
|
||||
PX_JOIN_FILTER: 'PX_JOIN_FILTER';
|
||||
QB_NAME: 'QB_NAME';
|
||||
QUARTERS: 'QUARTERS';
|
||||
QUERY_BLOCK: 'QUERY_BLOCK';
|
||||
QUERY: 'QUERY';
|
||||
QUEUE_CURR: 'QUEUE_CURR';
|
||||
@ -1364,6 +1430,7 @@ QUEUE_ROWP: 'QUEUE_ROWP';
|
||||
QUIESCE: 'QUIESCE';
|
||||
QUORUM: 'QUORUM';
|
||||
QUOTA: 'QUOTA';
|
||||
QUOTAGROUP: 'QUOTAGROUP';
|
||||
RAISE: 'RAISE';
|
||||
RANDOM_LOCAL: 'RANDOM_LOCAL';
|
||||
RANDOM: 'RANDOM';
|
||||
@ -1425,6 +1492,7 @@ RELIES_ON: 'RELIES_ON';
|
||||
RELOCATE: 'RELOCATE';
|
||||
RELY: 'RELY';
|
||||
REMAINDER: 'REMAINDER';
|
||||
REMOTE: 'REMOTE';
|
||||
REMOTE_MAPPED: 'REMOTE_MAPPED';
|
||||
REMOVE: 'REMOVE';
|
||||
RENAME: 'RENAME';
|
||||
@ -1501,9 +1569,11 @@ SCRUB: 'SCRUB';
|
||||
SD_ALL: 'SD_ALL';
|
||||
SD_INHIBIT: 'SD_INHIBIT';
|
||||
SDO_GEOM_MBR: 'SDO_GEOM_MBR';
|
||||
SDO_GEOMETRY: 'SDO_GEOMETRY';
|
||||
SD_SHOW: 'SD_SHOW';
|
||||
SEARCH: 'SEARCH';
|
||||
SECOND: 'SECOND';
|
||||
SECONDS: 'SECONDS';
|
||||
SECRET: 'SECRET';
|
||||
SECUREFILE_DBA: 'SECUREFILE_DBA';
|
||||
SECUREFILE: 'SECUREFILE';
|
||||
@ -1527,6 +1597,7 @@ SERIALLY_REUSABLE: 'SERIALLY_REUSABLE';
|
||||
SERIAL: 'SERIAL';
|
||||
SERVERERROR: 'SERVERERROR';
|
||||
SERVICE_NAME_CONVERT: 'SERVICE_NAME_CONVERT';
|
||||
SERVICE: 'SERVICE';
|
||||
SERVICES: 'SERVICES';
|
||||
SESSION_CACHED_CURSORS: 'SESSION_CACHED_CURSORS';
|
||||
SESSION: 'SESSION';
|
||||
@ -1538,6 +1609,7 @@ SETS: 'SETS';
|
||||
SETTINGS: 'SETTINGS';
|
||||
SET_TO_JOIN: 'SET_TO_JOIN';
|
||||
SEVERE: 'SEVERE';
|
||||
SHARDSPACE: 'SHARDSPACE';
|
||||
SHARED_POOL: 'SHARED_POOL';
|
||||
SHARED: 'SHARED';
|
||||
SHARE: 'SHARE';
|
||||
@ -1548,6 +1620,7 @@ SHRINK: 'SHRINK';
|
||||
SHUTDOWN: 'SHUTDOWN';
|
||||
SIBLINGS: 'SIBLINGS';
|
||||
SID: 'SID';
|
||||
SITE: 'SITE';
|
||||
SIGNAL_COMPONENT: 'SIGNAL_COMPONENT';
|
||||
SIGNAL_FUNCTION: 'SIGNAL_FUNCTION';
|
||||
SIGN: 'SIGN';
|
||||
@ -1581,11 +1654,13 @@ SQLDATA: 'SQLDATA';
|
||||
SQLERROR: 'SQLERROR';
|
||||
SQLLDR: 'SQLLDR';
|
||||
SQL: 'SQL';
|
||||
SQL_MACRO: 'SQL_MACRO';
|
||||
SQL_TRACE: 'SQL_TRACE';
|
||||
SQL_TRANSLATION_PROFILE: 'SQL_TRANSLATION_PROFILE';
|
||||
SQRT: 'SQRT';
|
||||
STALE: 'STALE';
|
||||
STANDALONE: 'STANDALONE';
|
||||
STANDARD: 'STANDARD';
|
||||
STANDARD_HASH: 'STANDARD_HASH';
|
||||
STANDBY_MAX_DATA_DELAY: 'STANDBY_MAX_DATA_DELAY';
|
||||
STANDBYS: 'STANDBYS';
|
||||
@ -1651,6 +1726,7 @@ SWITCH: 'SWITCH';
|
||||
SYNCHRONOUS: 'SYNCHRONOUS';
|
||||
SYNC: 'SYNC';
|
||||
SYNONYM: 'SYNONYM';
|
||||
SYS: 'SYS';
|
||||
SYSASM: 'SYSASM';
|
||||
SYS_AUDIT: 'SYS_AUDIT';
|
||||
SYSAUX: 'SYSAUX';
|
||||
@ -1930,6 +2006,7 @@ SYS_XQXFORM: 'SYS_XQXFORM';
|
||||
SYS_XSID_TO_RAW: 'SYS_XSID_TO_RAW';
|
||||
SYS_ZMAP_FILTER: 'SYS_ZMAP_FILTER';
|
||||
SYS_ZMAP_REFRESH: 'SYS_ZMAP_REFRESH';
|
||||
T_LETTER: 'T';
|
||||
TABLE_LOOKUP_BY_NL: 'TABLE_LOOKUP_BY_NL';
|
||||
TABLESPACE_NO: 'TABLESPACE_NO';
|
||||
TABLESPACE: 'TABLESPACE';
|
||||
@ -1968,6 +2045,7 @@ TIMEZONE_MINUTE: 'TIMEZONE_MINUTE';
|
||||
TIMEZONE_OFFSET: 'TIMEZONE_OFFSET';
|
||||
TIMEZONE_REGION: 'TIMEZONE_REGION';
|
||||
TIME_ZONE: 'TIME_ZONE';
|
||||
TIMING: 'TIMING';
|
||||
TIV_GB: 'TIV_GB';
|
||||
TIV_SSF: 'TIV_SSF';
|
||||
TO_ACLID: 'TO_ACLID';
|
||||
@ -1994,6 +2072,7 @@ TRACING: 'TRACING';
|
||||
TRACKING: 'TRACKING';
|
||||
TRAILING: 'TRAILING';
|
||||
TRANSACTION: 'TRANSACTION';
|
||||
TRANSFORM: 'TRANSFORM';
|
||||
TRANSFORM_DISTINCT_AGG: 'TRANSFORM_DISTINCT_AGG';
|
||||
TRANSITIONAL: 'TRANSITIONAL';
|
||||
TRANSITION: 'TRANSITION';
|
||||
@ -2094,6 +2173,7 @@ UTF8: 'UTF8';
|
||||
V1: 'V1';
|
||||
V2: 'V2';
|
||||
VALIDATE: 'VALIDATE';
|
||||
VALIDATE_CONVERSION: 'VALIDATE_CONVERSION';
|
||||
VALIDATION: 'VALIDATION';
|
||||
VALID_TIME_END: 'VALID_TIME_END';
|
||||
VALUES: 'VALUES';
|
||||
@ -2204,6 +2284,28 @@ PREDICTION_DETAILS: 'PREDICTION_DETAILS';
|
||||
PREDICTION_PROBABILITY: 'PREDICTION_PROBABILITY';
|
||||
PREDICTION_SET: 'PREDICTION_SET';
|
||||
|
||||
BLOCKCHAIN: 'BLOCKCHAIN';
|
||||
COLLATE: 'COLLATE';
|
||||
COLLATION: 'COLLATION';
|
||||
DEFINITION: 'DEFINITION';
|
||||
DUPLICATED: 'DUPLICATED';
|
||||
EXTENDED: 'EXTENDED';
|
||||
HASHING: 'HASHING';
|
||||
IDLE: 'IDLE';
|
||||
IMMUTABLE: 'IMMUTABLE';
|
||||
ORACLE_DATAPUMP: 'ORACLE_DATAPUMP';
|
||||
ORACLE_HDFS: 'ORACLE_HDFS';
|
||||
ORACLE_HIVE: 'ORACLE_HIVE';
|
||||
ORACLE_LOADER: 'ORACLE_LOADER';
|
||||
SHA2_512_Q: '"SHA2_512"';
|
||||
SHARDED: 'SHARDED';
|
||||
V1_Q: '"V1"';
|
||||
|
||||
ISOLATE: 'ISOLATE';
|
||||
ROOT: 'ROOT';
|
||||
UNITE: 'UNITE';
|
||||
ALGORITHM: 'ALGORITHM';
|
||||
|
||||
CUME_DIST: 'CUME_DIST';
|
||||
DENSE_RANK: 'DENSE_RANK';
|
||||
LISTAGG: 'LISTAGG';
|
||||
@ -2217,9 +2319,12 @@ CORR: 'CORR';
|
||||
COVAR_: 'COVAR_';
|
||||
DECODE: 'DECODE';
|
||||
LAG: 'LAG';
|
||||
LAG_DIFF: 'LAG_DIFF';
|
||||
LAG_DIFF_PERCENT: 'LAG_DIFF_PERCENT';
|
||||
LEAD: 'LEAD';
|
||||
MAX: 'MAX';
|
||||
MEDIAN: 'MEDIAN';
|
||||
MEMOPTIMIZE: 'MEMOPTIMIZE';
|
||||
MIN: 'MIN';
|
||||
NTILE: 'NTILE';
|
||||
NVL: 'NVL';
|
||||
@ -2251,7 +2356,7 @@ BIT_STRING_LIT: 'B' ('\'' [01]* '\'')+;
|
||||
// Rule #284 <HEX_STRING_LIT> - subtoken typecast in <REGULAR_ID>
|
||||
// Lowercase 'x' is a usual addition to the standard
|
||||
|
||||
HEX_STRING_LIT: 'X' ('\'' [A-F0-9]* '\'')+;
|
||||
HEX_STRING_LIT: 'X' ('\'' [A-Fa-f0-9]* '\'')+;
|
||||
DOUBLE_PERIOD: '..';
|
||||
PERIOD: '.';
|
||||
|
||||
@ -2274,6 +2379,7 @@ PERIOD: '.';
|
||||
UNSIGNED_INTEGER: [0-9]+;
|
||||
APPROXIMATE_NUM_LIT: FLOAT_FRAGMENT ('E' ('+'|'-')? (FLOAT_FRAGMENT | [0-9]+))? ('D' | 'F')?;
|
||||
|
||||
|
||||
// Rule #--- <CHAR_STRING> is a base for Rule #065 <char_string_lit> , it incorporates <character_representation>
|
||||
// and a superfluous subtoken typecasting of the "QUOTE"
|
||||
CHAR_STRING: '\'' (~('\'' | '\r' | '\n') | '\'' '\'' | NEWLINE)* '\'';
|
||||
@ -2304,6 +2410,9 @@ COMMA: ',';
|
||||
SOLIDUS: '/';
|
||||
AT_SIGN: '@';
|
||||
ASSIGN_OP: ':=';
|
||||
HASH_OP: '#';
|
||||
|
||||
SQ: '\'';
|
||||
|
||||
BINDVAR
|
||||
: ':' SIMPLE_LETTER (SIMPLE_LETTER | [0-9] | '_')*
|
||||
@ -2359,7 +2468,7 @@ SPACES: [ \t\r\n]+ -> channel(HIDDEN);
|
||||
|
||||
fragment NEWLINE_EOF : NEWLINE | EOF;
|
||||
fragment QUESTION_MARK : '?';
|
||||
fragment SIMPLE_LETTER : [A-Z];
|
||||
fragment SIMPLE_LETTER : [a-zA-Z];
|
||||
fragment FLOAT_FRAGMENT : UNSIGNED_INTEGER* '.'? UNSIGNED_INTEGER+;
|
||||
fragment NEWLINE : '\r'? '\n';
|
||||
fragment SPACE : [ \t];
|
@ -24,11 +24,14 @@ options {
|
||||
tokenVocab=PlSqlLexer;
|
||||
superClass=PlSqlBaseParser;
|
||||
}
|
||||
@parser::header {
|
||||
import PlSqlBaseParser from './PlSqlBaseParser';
|
||||
}
|
||||
|
||||
program: sql_script EOF;
|
||||
program: sql_script SEMICOLON? EOF;
|
||||
|
||||
sql_script
|
||||
: ((unit_statement | sql_plus_command) SEMICOLON?)* EOF
|
||||
: (unit_statement | sql_plus_command)*
|
||||
;
|
||||
|
||||
unit_statement
|
||||
@ -268,21 +271,6 @@ trigger_body
|
||||
| trigger_block
|
||||
;
|
||||
|
||||
routine_clause
|
||||
: routine_name function_argument?
|
||||
;
|
||||
|
||||
compound_trigger_block
|
||||
: COMPOUND TRIGGER seq_of_declare_specs? timing_point_section+ END trigger_name
|
||||
;
|
||||
|
||||
timing_point_section
|
||||
: bk=BEFORE STATEMENT IS trigger_block BEFORE STATEMENT ';'
|
||||
| bk=BEFORE EACH ROW IS trigger_block BEFORE EACH ROW ';'
|
||||
| ak=AFTER STATEMENT IS trigger_block AFTER STATEMENT ';'
|
||||
| ak=AFTER EACH ROW IS trigger_block AFTER EACH ROW ';'
|
||||
;
|
||||
|
||||
non_dml_event
|
||||
: ALTER
|
||||
| ANALYZE
|
||||
@ -366,14 +354,6 @@ alter_method_element
|
||||
: (ADD | DROP) (map_order_function_spec | subprogram_spec)
|
||||
;
|
||||
|
||||
alter_attribute_definition
|
||||
: (ADD | MODIFY | DROP) ATTRIBUTE (attribute_definition | '(' attribute_definition (',' attribute_definition)* ')')
|
||||
;
|
||||
|
||||
attribute_definition
|
||||
: attribute_name type_spec?
|
||||
;
|
||||
|
||||
alter_collection_clauses
|
||||
: MODIFY (LIMIT expression | ELEMENT TYPE type_spec)
|
||||
;
|
||||
@ -1621,27 +1601,6 @@ mv_log_augmentation
|
||||
new_values_clause?
|
||||
;
|
||||
|
||||
// Should bound this to just date/time expr
|
||||
datetime_expr
|
||||
: expression
|
||||
;
|
||||
|
||||
// Should bound this to just interval expr
|
||||
interval_expr
|
||||
: expression
|
||||
;
|
||||
|
||||
synchronous_or_asynchronous
|
||||
: SYNCHRONOUS
|
||||
| ASYNCHRONOUS
|
||||
;
|
||||
|
||||
including_or_excluding
|
||||
: INCLUDING
|
||||
| EXCLUDING
|
||||
;
|
||||
|
||||
|
||||
create_materialized_view_log
|
||||
: CREATE MATERIALIZED VIEW LOG ON tableview_name
|
||||
( ( physical_attributes_clause
|
||||
@ -2005,12 +1964,6 @@ lob_partitioning_storage
|
||||
)
|
||||
;
|
||||
|
||||
datatype_null_enable
|
||||
: column_name datatype
|
||||
SORT? (DEFAULT expression)? (ENCRYPT ( USING CHAR_STRING )? (IDENTIFIED BY REGULAR_ID)? CHAR_STRING? ( NO? SALT )? )?
|
||||
(NOT NULL_)? (ENABLE | DISABLE)?
|
||||
;
|
||||
|
||||
//Technically, this should only allow 'K' | 'M' | 'G' | 'T' | 'P' | 'E'
|
||||
// but having issues with examples/numbers01.sql line 11 "sysdate -1m"
|
||||
size_clause
|
||||
@ -2286,8 +2239,7 @@ database_file_clauses
|
||||
|
||||
create_datafile_clause
|
||||
: CREATE DATAFILE (filename | filenumber) (',' (filename | filenumber) )*
|
||||
(AS (//TODO (','? file_specification)+ |
|
||||
NEW) )?
|
||||
(AS (NEW) )?
|
||||
;
|
||||
|
||||
alter_datafile_clause
|
||||
@ -2655,11 +2607,6 @@ add_column_clause
|
||||
')'
|
||||
| ( column_definition | virtual_column_definition ))
|
||||
column_properties?
|
||||
//TODO (','? out_of_line_part_storage )
|
||||
;
|
||||
|
||||
alter_varray_col_properties
|
||||
: MODIFY VARRAY varray_item '(' modify_lob_parameters ')'
|
||||
;
|
||||
|
||||
varray_col_properties
|
||||
@ -2760,37 +2707,20 @@ column_properties
|
||||
| xmltype_column_properties
|
||||
;
|
||||
|
||||
period_definition
|
||||
: {this.isVersion12()}? PERIOD FOR column_name
|
||||
( '(' start_time_column ',' end_time_column ')' )?
|
||||
;
|
||||
|
||||
start_time_column
|
||||
: column_name
|
||||
;
|
||||
|
||||
end_time_column
|
||||
: column_name
|
||||
;
|
||||
|
||||
column_definition
|
||||
: column_name (datatype | type_name)
|
||||
SORT? (DEFAULT expression)? (ENCRYPT (USING CHAR_STRING)? (IDENTIFIED BY regular_id)? CHAR_STRING? (NO? SALT)? )? (inline_constraint* | inline_ref_constraint)
|
||||
;
|
||||
|
||||
virtual_column_definition
|
||||
: column_name datatype? autogenerated_sequence_definition?
|
||||
: column_name datatype? autogenerated_sequence_definition?
|
||||
VIRTUAL? inline_constraint*
|
||||
;
|
||||
|
||||
|
||||
autogenerated_sequence_definition
|
||||
: GENERATED (ALWAYS | BY DEFAULT (ON NULL_)?)? AS IDENTITY
|
||||
;
|
||||
|
||||
out_of_line_part_storage
|
||||
: PARTITION partition_name
|
||||
;
|
||||
|
||||
nested_table_col_properties
|
||||
: NESTED TABLE (nested_item | COLUMN_VALUE) substitutable_column_clause? (LOCAL | GLOBAL)?
|
||||
STORE AS tableview_name ( '(' ( '(' object_properties ')'
|
||||
@ -2819,10 +2749,6 @@ supplemental_logging_props
|
||||
: SUPPLEMENTAL LOG (supplemental_log_grp_clause | supplemental_id_key_clause)
|
||||
;
|
||||
|
||||
column_or_attribute
|
||||
: regular_id
|
||||
;
|
||||
|
||||
object_type_col_properties
|
||||
: COLUMN column=regular_id substitutable_column_clause
|
||||
;
|
||||
@ -2852,33 +2778,11 @@ drop_primary_key_or_unique_or_generic_clause
|
||||
| CONSTRAINT constraint_name CASCADE?
|
||||
;
|
||||
|
||||
add_constraint
|
||||
: ADD (CONSTRAINT constraint_name)? add_constraint_clause (',' (CONSTRAINT constraint_name)? add_constraint_clause)+
|
||||
;
|
||||
|
||||
add_constraint_clause
|
||||
: primary_key_clause
|
||||
| foreign_key_clause
|
||||
| unique_key_clause
|
||||
| check_constraint
|
||||
;
|
||||
|
||||
check_constraint
|
||||
: CHECK '(' condition ')' DISABLE?
|
||||
;
|
||||
|
||||
drop_constraint
|
||||
: DROP CONSTRAINT constraint_name
|
||||
;
|
||||
|
||||
enable_constraint
|
||||
: ENABLE CONSTRAINT constraint_name
|
||||
;
|
||||
|
||||
disable_constraint
|
||||
: DISABLE CONSTRAINT constraint_name
|
||||
;
|
||||
|
||||
foreign_key_clause
|
||||
: FOREIGN KEY paren_column_list references_clause on_delete_clause?
|
||||
;
|
||||
@ -2891,14 +2795,6 @@ on_delete_clause
|
||||
: ON DELETE (CASCADE | SET NULL_)
|
||||
;
|
||||
|
||||
unique_key_clause
|
||||
: UNIQUE paren_column_list using_index_clause?
|
||||
;
|
||||
|
||||
primary_key_clause
|
||||
: PRIMARY KEY paren_column_list using_index_clause?
|
||||
;
|
||||
|
||||
// Anonymous PL/SQL code block
|
||||
|
||||
anonymous_block
|
||||
@ -3053,10 +2949,6 @@ statement
|
||||
| procedure_call
|
||||
;
|
||||
|
||||
swallow_to_semi
|
||||
: ~';'+
|
||||
;
|
||||
|
||||
assignment_statement
|
||||
: (general_element | bind_variable) ASSIGN_OP expression
|
||||
;
|
||||
@ -3322,7 +3214,7 @@ subquery_operation_part
|
||||
|
||||
query_block
|
||||
: SELECT (DISTINCT | UNIQUE | ALL)? selected_list
|
||||
into_clause? from_clause where_clause? hierarchical_query_clause? group_by_clause? model_clause? order_by_clause?
|
||||
into_clause? from_clause? where_clause? hierarchical_query_clause? group_by_clause? model_clause? order_by_clause?
|
||||
;
|
||||
|
||||
selected_list
|
||||
@ -4146,10 +4038,6 @@ rollback_segment_name
|
||||
: identifier
|
||||
;
|
||||
|
||||
table_var_name
|
||||
: identifier
|
||||
;
|
||||
|
||||
schema_name
|
||||
: identifier
|
||||
;
|
||||
@ -6741,19 +6629,3 @@ non_reserved_keywords_pre12c
|
||||
| YES
|
||||
| ZONE
|
||||
;
|
||||
|
||||
string_function_name
|
||||
: CHR
|
||||
| DECODE
|
||||
| SUBSTR
|
||||
| TO_CHAR
|
||||
| TRIM
|
||||
;
|
||||
|
||||
numeric_function_name
|
||||
: AVG
|
||||
| COUNT
|
||||
| NVL
|
||||
| ROUND
|
||||
| SUM
|
||||
;
|
Reference in New Issue
Block a user