dt-sql-parser 4.0.0-ng.2 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (142) hide show
  1. package/README.md +119 -112
  2. package/dist/index.d.ts +14 -6
  3. package/dist/index.js +11 -4
  4. package/dist/lib/SQLParserBase.d.ts +8 -0
  5. package/dist/lib/SQLParserBase.js +14 -0
  6. package/dist/lib/{flinksql → flink}/FlinkSqlLexer.d.ts +2 -2
  7. package/dist/lib/{flinksql → flink}/FlinkSqlLexer.js +2 -1
  8. package/dist/lib/{flinksql → flink}/FlinkSqlParser.d.ts +5 -11
  9. package/dist/lib/{flinksql → flink}/FlinkSqlParser.js +2065 -2054
  10. package/dist/lib/{flinksql → flink}/FlinkSqlParserListener.d.ts +0 -13
  11. package/dist/lib/{flinksql → flink}/FlinkSqlParserListener.js +1 -1
  12. package/dist/lib/{flinksql → flink}/FlinkSqlParserVisitor.d.ts +0 -8
  13. package/dist/lib/{flinksql → flink}/FlinkSqlParserVisitor.js +2 -1
  14. package/dist/lib/hive/HiveSqlLexer.d.ts +258 -257
  15. package/dist/lib/hive/HiveSqlLexer.js +1794 -1786
  16. package/dist/lib/hive/HiveSqlParser.d.ts +1266 -3176
  17. package/dist/lib/hive/HiveSqlParser.js +23046 -33454
  18. package/dist/lib/hive/HiveSqlParserListener.d.ts +141 -2036
  19. package/dist/lib/hive/HiveSqlParserVisitor.d.ts +151 -1358
  20. package/dist/lib/hive/HiveSqlParserVisitor.js +1 -0
  21. package/dist/lib/impala/ImpalaSqlLexer.d.ts +170 -154
  22. package/dist/lib/impala/ImpalaSqlLexer.js +1179 -1099
  23. package/dist/lib/impala/ImpalaSqlParser.d.ts +282 -240
  24. package/dist/lib/impala/ImpalaSqlParser.js +3881 -3744
  25. package/dist/lib/impala/ImpalaSqlParserListener.d.ts +22 -11
  26. package/dist/lib/impala/ImpalaSqlParserVisitor.d.ts +14 -7
  27. package/dist/lib/impala/ImpalaSqlParserVisitor.js +1 -0
  28. package/dist/lib/index.d.ts +6 -6
  29. package/dist/lib/index.js +6 -6
  30. package/dist/lib/mysql/MySqlLexer.d.ts +2 -2
  31. package/dist/lib/mysql/MySqlLexer.js +1 -0
  32. package/dist/lib/mysql/MySqlParser.d.ts +347 -418
  33. package/dist/lib/mysql/MySqlParser.js +10484 -11099
  34. package/dist/lib/mysql/MySqlParserListener.d.ts +41 -126
  35. package/dist/lib/mysql/MySqlParserVisitor.d.ts +23 -76
  36. package/dist/lib/mysql/MySqlParserVisitor.js +1 -0
  37. package/dist/lib/plsql/PlSqlBaseLexer.d.ts +1 -2
  38. package/dist/lib/plsql/PlSqlBaseLexer.js +1 -1
  39. package/dist/lib/plsql/PlSqlBaseParser.d.ts +3 -2
  40. package/dist/lib/plsql/PlSqlBaseParser.js +2 -2
  41. package/dist/lib/plsql/PlSqlLexer.d.ts +3 -3
  42. package/dist/lib/plsql/PlSqlLexer.js +2 -1
  43. package/dist/lib/plsql/PlSqlParser.d.ts +3 -3
  44. package/dist/lib/plsql/PlSqlParser.js +2 -1
  45. package/dist/lib/plsql/PlSqlParserVisitor.js +1 -0
  46. package/dist/lib/{pgsql/PostgreSQLLexer.d.ts → postgresql/PostgreSqlLexer.d.ts} +3 -3
  47. package/dist/lib/{pgsql/PostgreSQLLexer.js → postgresql/PostgreSqlLexer.js} +618 -617
  48. package/dist/lib/{pgsql/PostgreSQLParser.d.ts → postgresql/PostgreSqlParser.d.ts} +3598 -3484
  49. package/dist/lib/{pgsql/PostgreSQLParser.js → postgresql/PostgreSqlParser.js} +41502 -42831
  50. package/dist/lib/{pgsql/PostgreSQLParserListener.d.ts → postgresql/PostgreSqlParserListener.d.ts} +2797 -2730
  51. package/dist/lib/{pgsql/PostgreSQLParserListener.js → postgresql/PostgreSqlParserListener.js} +3 -3
  52. package/dist/lib/{pgsql/PostgreSQLParserVisitor.d.ts → postgresql/PostgreSqlParserVisitor.d.ts} +1845 -1810
  53. package/dist/lib/{pgsql/PostgreSQLParserVisitor.js → postgresql/PostgreSqlParserVisitor.js} +4 -3
  54. package/dist/lib/spark/SparkSqlLexer.d.ts +305 -298
  55. package/dist/lib/spark/SparkSqlLexer.js +1777 -1735
  56. package/dist/lib/spark/SparkSqlParser.d.ts +1764 -669
  57. package/dist/lib/spark/SparkSqlParser.js +15460 -10769
  58. package/dist/lib/spark/SparkSqlParserListener.d.ts +1285 -35
  59. package/dist/lib/spark/SparkSqlParserVisitor.d.ts +790 -21
  60. package/dist/lib/spark/SparkSqlParserVisitor.js +1 -0
  61. package/dist/lib/{trinosql → trino}/TrinoSqlLexer.d.ts +2 -2
  62. package/dist/lib/{trinosql → trino}/TrinoSqlLexer.js +2 -1
  63. package/dist/lib/{trinosql → trino}/TrinoSqlListener.d.ts +7 -5
  64. package/dist/lib/{trinosql → trino}/TrinoSqlListener.js +1 -1
  65. package/dist/lib/{trinosql → trino}/TrinoSqlParser.d.ts +11 -5
  66. package/dist/lib/{trinosql → trino}/TrinoSqlParser.js +360 -320
  67. package/dist/lib/{trinosql → trino}/TrinoSqlVisitor.d.ts +4 -3
  68. package/dist/lib/{trinosql → trino}/TrinoSqlVisitor.js +2 -1
  69. package/dist/parser/common/{basicParser.d.ts → basicSQL.d.ts} +22 -19
  70. package/dist/parser/common/{basicParser.js → basicSQL.js} +52 -34
  71. package/dist/parser/common/entityCollector.d.ts +78 -0
  72. package/dist/parser/common/entityCollector.js +191 -0
  73. package/dist/parser/common/{utils/findCaretTokenIndex.d.ts → findCaretTokenIndex.d.ts} +2 -2
  74. package/dist/parser/common/{utils/findCaretTokenIndex.js → findCaretTokenIndex.js} +3 -2
  75. package/dist/parser/common/parseErrorListener.d.ts +6 -6
  76. package/dist/parser/common/parseErrorListener.js +1 -1
  77. package/dist/parser/common/simpleStack.d.ts +10 -0
  78. package/dist/parser/common/simpleStack.js +23 -0
  79. package/dist/parser/common/splitListener.d.ts +8 -0
  80. package/dist/parser/common/splitListener.js +12 -0
  81. package/dist/parser/common/textAndWord.d.ts +52 -0
  82. package/dist/parser/common/textAndWord.js +58 -0
  83. package/dist/parser/common/{basic-parser-types.d.ts → types.d.ts} +4 -31
  84. package/dist/parser/common/types.js +34 -0
  85. package/dist/parser/flink/flinkEntityCollector.d.ts +33 -0
  86. package/dist/parser/flink/flinkEntityCollector.js +84 -0
  87. package/dist/parser/flink/flinkSplitListener.d.ts +6 -0
  88. package/dist/parser/flink/flinkSplitListener.js +6 -0
  89. package/dist/parser/flink/index.d.ts +17 -0
  90. package/dist/parser/{flinksql.js → flink/index.js} +26 -37
  91. package/dist/parser/hive/hiveEntityCollector.d.ts +35 -0
  92. package/dist/parser/hive/hiveEntityCollector.js +90 -0
  93. package/dist/parser/hive/hiveSplitListener.d.ts +6 -0
  94. package/dist/parser/hive/hiveSplitListener.js +6 -0
  95. package/dist/parser/hive/index.d.ts +17 -0
  96. package/dist/parser/{hive.js → hive/index.js} +24 -34
  97. package/dist/parser/impala/impalaEntityCollector.d.ts +35 -0
  98. package/dist/parser/impala/impalaEntityCollector.js +90 -0
  99. package/dist/parser/impala/impalaSplitListener.d.ts +6 -0
  100. package/dist/parser/impala/impalaSplitListener.js +6 -0
  101. package/dist/parser/impala/index.d.ts +17 -0
  102. package/dist/parser/{impala.js → impala/index.js} +24 -34
  103. package/dist/parser/index.d.ts +8 -8
  104. package/dist/parser/index.js +8 -8
  105. package/dist/parser/mysql/index.d.ts +17 -0
  106. package/dist/parser/{mysql.js → mysql/index.js} +24 -34
  107. package/dist/parser/mysql/mysqlEntityCollector.d.ts +37 -0
  108. package/dist/parser/mysql/mysqlEntityCollector.js +96 -0
  109. package/dist/parser/mysql/mysqlSplitListener.d.ts +6 -0
  110. package/dist/parser/mysql/mysqlSplitListener.js +6 -0
  111. package/dist/parser/plsql.d.ts +7 -6
  112. package/dist/parser/plsql.js +6 -4
  113. package/dist/parser/postgresql/index.d.ts +17 -0
  114. package/dist/parser/postgresql/index.js +130 -0
  115. package/dist/parser/postgresql/postgreEntityCollector.d.ts +37 -0
  116. package/dist/parser/postgresql/postgreEntityCollector.js +96 -0
  117. package/dist/parser/postgresql/postgreSplitListener.d.ts +6 -0
  118. package/dist/parser/postgresql/postgreSplitListener.js +6 -0
  119. package/dist/parser/spark/index.d.ts +17 -0
  120. package/dist/parser/{spark.js → spark/index.js} +29 -40
  121. package/dist/parser/spark/sparkEntityCollector.d.ts +37 -0
  122. package/dist/parser/spark/sparkEntityCollector.js +96 -0
  123. package/dist/parser/spark/sparkSplitListener.d.ts +6 -0
  124. package/dist/parser/spark/sparkSplitListener.js +6 -0
  125. package/dist/parser/trino/index.d.ts +17 -0
  126. package/dist/parser/{trinosql.js → trino/index.js} +25 -36
  127. package/dist/parser/trino/trinoEntityCollector.d.ts +30 -0
  128. package/dist/parser/trino/trinoEntityCollector.js +75 -0
  129. package/dist/parser/trino/trinoSplitListener.d.ts +6 -0
  130. package/dist/parser/trino/trinoSplitListener.js +6 -0
  131. package/dist/utils/index.d.ts +1 -1
  132. package/dist/utils/token.d.ts +1 -1
  133. package/package.json +1 -1
  134. package/dist/parser/common/basic-parser-types.js +0 -34
  135. package/dist/parser/flinksql.d.ts +0 -23
  136. package/dist/parser/hive.d.ts +0 -23
  137. package/dist/parser/impala.d.ts +0 -23
  138. package/dist/parser/mysql.d.ts +0 -23
  139. package/dist/parser/pgsql.d.ts +0 -23
  140. package/dist/parser/pgsql.js +0 -140
  141. package/dist/parser/spark.d.ts +0 -23
  142. package/dist/parser/trinosql.d.ts +0 -23
@@ -1,140 +0,0 @@
1
- import { PostgreSQLLexer } from '../lib/pgsql/PostgreSQLLexer';
2
- import { PostgreSQLParser } from '../lib/pgsql/PostgreSQLParser';
3
- import BasicParser from './common/basicParser';
4
- import { SyntaxContextType } from './common/basic-parser-types';
5
- export default class PostgresSQL extends BasicParser {
6
- constructor() {
7
- super(...arguments);
8
- this.preferredRules = new Set([
9
- PostgreSQLParser.RULE_table_name_create,
10
- PostgreSQLParser.RULE_table_name,
11
- PostgreSQLParser.RULE_function_name,
12
- PostgreSQLParser.RULE_function_name_create,
13
- PostgreSQLParser.RULE_schema_name_create,
14
- PostgreSQLParser.RULE_schema_name,
15
- PostgreSQLParser.RULE_view_name_create,
16
- PostgreSQLParser.RULE_view_name,
17
- PostgreSQLParser.RULE_database_name_create,
18
- PostgreSQLParser.RULE_database_name,
19
- PostgreSQLParser.RULE_procedure_name_create,
20
- PostgreSQLParser.RULE_procedure_name,
21
- PostgreSQLParser.RULE_column_name_create,
22
- PostgreSQLParser.RULE_column_name, // column name
23
- ]);
24
- }
25
- createLexerFromCharStream(charStreams) {
26
- const lexer = new PostgreSQLLexer(charStreams);
27
- return lexer;
28
- }
29
- createParserFromTokenStream(tokenStream) {
30
- return new PostgreSQLParser(tokenStream);
31
- }
32
- get splitListener() {
33
- return new PgSqlSplitListener();
34
- }
35
- processCandidates(candidates, allTokens, caretTokenIndex, tokenIndexOffset) {
36
- const originalSyntaxSuggestions = [];
37
- const keywords = [];
38
- for (let candidate of candidates.rules) {
39
- const [ruleType, candidateRule] = candidate;
40
- const startTokenIndex = candidateRule.startTokenIndex + tokenIndexOffset;
41
- const tokenRanges = allTokens.slice(startTokenIndex, caretTokenIndex + tokenIndexOffset + 1);
42
- let syntaxContextType;
43
- switch (ruleType) {
44
- case PostgreSQLParser.RULE_table_name_create: {
45
- syntaxContextType = SyntaxContextType.TABLE_CREATE;
46
- break;
47
- }
48
- case PostgreSQLParser.RULE_table_name: {
49
- syntaxContextType = SyntaxContextType.TABLE;
50
- break;
51
- }
52
- case PostgreSQLParser.RULE_function_name_create: {
53
- syntaxContextType = SyntaxContextType.FUNCTION_CREATE;
54
- break;
55
- }
56
- case PostgreSQLParser.RULE_function_name: {
57
- syntaxContextType = SyntaxContextType.FUNCTION;
58
- break;
59
- }
60
- case PostgreSQLParser.RULE_schema_name_create: {
61
- syntaxContextType = SyntaxContextType.DATABASE_CREATE;
62
- break;
63
- }
64
- case PostgreSQLParser.RULE_schema_name: {
65
- syntaxContextType = SyntaxContextType.DATABASE;
66
- break;
67
- }
68
- case PostgreSQLParser.RULE_view_name_create: {
69
- syntaxContextType = SyntaxContextType.VIEW_CREATE;
70
- break;
71
- }
72
- case PostgreSQLParser.RULE_view_name: {
73
- syntaxContextType = SyntaxContextType.VIEW;
74
- break;
75
- }
76
- case PostgreSQLParser.RULE_database_name_create: {
77
- syntaxContextType = SyntaxContextType.DATABASE_CREATE;
78
- break;
79
- }
80
- case PostgreSQLParser.RULE_database_name: {
81
- syntaxContextType = SyntaxContextType.DATABASE;
82
- break;
83
- }
84
- case PostgreSQLParser.RULE_procedure_name_create: {
85
- syntaxContextType = SyntaxContextType.PROCEDURE_CREATE;
86
- break;
87
- }
88
- case PostgreSQLParser.RULE_procedure_name: {
89
- syntaxContextType = SyntaxContextType.PROCEDURE;
90
- break;
91
- }
92
- case PostgreSQLParser.RULE_column_name_create: {
93
- syntaxContextType = SyntaxContextType.COLUMN_CREATE;
94
- break;
95
- }
96
- case PostgreSQLParser.RULE_column_name: {
97
- syntaxContextType = SyntaxContextType.COLUMN;
98
- break;
99
- }
100
- default:
101
- break;
102
- }
103
- if (syntaxContextType) {
104
- originalSyntaxSuggestions.push({
105
- syntaxContextType,
106
- wordRanges: tokenRanges,
107
- });
108
- }
109
- }
110
- for (let candidate of candidates.tokens) {
111
- const symbolicName = this._parser.vocabulary.getSymbolicName(candidate[0]);
112
- const displayName = this._parser.vocabulary.getDisplayName(candidate[0]);
113
- if (symbolicName && symbolicName.startsWith('KW_')) {
114
- const keyword = displayName.startsWith("'") && displayName.endsWith("'")
115
- ? displayName.slice(1, -1)
116
- : displayName;
117
- keywords.push(keyword);
118
- }
119
- }
120
- return {
121
- syntax: originalSyntaxSuggestions,
122
- keywords,
123
- };
124
- }
125
- }
126
- export class PgSqlSplitListener {
127
- constructor() {
128
- this._statementsContext = [];
129
- this.exitSingleStmt = (ctx) => {
130
- this._statementsContext.push(ctx);
131
- };
132
- }
133
- visitTerminal() { }
134
- visitErrorNode() { }
135
- enterEveryRule() { }
136
- exitEveryRule() { }
137
- get statementsContext() {
138
- return this._statementsContext;
139
- }
140
- }
@@ -1,23 +0,0 @@
1
- import { Token } from 'antlr4ng';
2
- import { CandidatesCollection } from 'antlr4-c3';
3
- import { SparkSqlLexer } from '../lib/spark/SparkSqlLexer';
4
- import { SparkSqlParser, ProgramContext, SingleStatementContext } from '../lib/spark/SparkSqlParser';
5
- import BasicParser from './common/basicParser';
6
- import { Suggestions } from './common/basic-parser-types';
7
- import { SparkSqlParserListener } from '../lib/spark/SparkSqlParserListener';
8
- export default class SparkSQL extends BasicParser<SparkSqlLexer, ProgramContext, SparkSqlParser> {
9
- protected createLexerFromCharStream(charStreams: any): SparkSqlLexer;
10
- protected createParserFromTokenStream(tokenStream: any): SparkSqlParser;
11
- protected preferredRules: Set<number>;
12
- protected get splitListener(): SparkSqlSplitListener;
13
- protected processCandidates(candidates: CandidatesCollection, allTokens: Token[], caretTokenIndex: number, tokenIndexOffset: number): Suggestions<Token>;
14
- }
15
- export declare class SparkSqlSplitListener implements SparkSqlParserListener {
16
- private _statementsContext;
17
- exitSingleStatement: (ctx: SingleStatementContext) => void;
18
- visitTerminal(): void;
19
- visitErrorNode(): void;
20
- enterEveryRule(): void;
21
- exitEveryRule(): void;
22
- get statementsContext(): SingleStatementContext[];
23
- }
@@ -1,23 +0,0 @@
1
- import { Token } from 'antlr4ng';
2
- import { CandidatesCollection } from 'antlr4-c3';
3
- import { TrinoSqlLexer } from '../lib/trinosql/TrinoSqlLexer';
4
- import { TrinoSqlParser, ProgramContext, SingleStatementContext } from '../lib/trinosql/TrinoSqlParser';
5
- import { TrinoSqlListener } from '../lib/trinosql/TrinoSqlListener';
6
- import BasicParser from './common/basicParser';
7
- import { Suggestions } from './common/basic-parser-types';
8
- export default class TrinoSQL extends BasicParser<TrinoSqlLexer, ProgramContext, TrinoSqlParser> {
9
- protected createLexerFromCharStream(charStreams: any): TrinoSqlLexer;
10
- protected createParserFromTokenStream(tokenStream: any): TrinoSqlParser;
11
- protected get splitListener(): TrinoSqlSplitListener;
12
- protected preferredRules: Set<number>;
13
- protected processCandidates(candidates: CandidatesCollection, allTokens: Token[], caretTokenIndex: number, tokenIndexOffset: number): Suggestions<Token>;
14
- }
15
- export declare class TrinoSqlSplitListener implements TrinoSqlListener {
16
- private _statementsContext;
17
- exitSingleStatement: (ctx: SingleStatementContext) => void;
18
- visitTerminal(): void;
19
- visitErrorNode(): void;
20
- enterEveryRule(): void;
21
- exitEveryRule(): void;
22
- get statementsContext(): SingleStatementContext[];
23
- }