dt-sql-parser 4.5.1-beta.1 → 4.5.1-beta.3
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.
- package/README.md +12 -0
- package/dist/index.d.ts +1 -1
- package/dist/lib/mysql/MySqlParser.d.ts +8 -31
- package/dist/lib/mysql/MySqlParser.js +5659 -5786
- package/dist/lib/mysql/MySqlParserListener.d.ts +5 -33
- package/dist/lib/mysql/MySqlParserVisitor.d.ts +3 -20
- package/dist/lib/postgresql/PostgreSqlParser.d.ts +2 -19
- package/dist/lib/postgresql/PostgreSqlParser.js +1756 -1857
- package/dist/lib/postgresql/PostgreSqlParserListener.d.ts +5 -20
- package/dist/lib/postgresql/PostgreSqlParserVisitor.d.ts +3 -12
- package/dist/lib/trino/TrinoSqlListener.d.ts +0 -33
- package/dist/lib/trino/TrinoSqlParser.d.ts +114 -155
- package/dist/lib/trino/TrinoSqlParser.js +4494 -4747
- package/dist/lib/trino/TrinoSqlVisitor.d.ts +0 -21
- package/dist/parser/common/basicSQL.d.ts +12 -2
- package/dist/parser/common/basicSQL.js +70 -8
- package/dist/parser/common/types.d.ts +9 -0
- package/dist/parser/mysql/index.js +0 -11
- package/dist/parser/mysql/mysqlEntityCollector.d.ts +1 -2
- package/dist/parser/mysql/mysqlEntityCollector.js +0 -5
- package/dist/parser/postgresql/index.js +1 -2
- package/dist/parser/postgresql/postgreEntityCollector.d.ts +1 -2
- package/dist/parser/postgresql/postgreEntityCollector.js +0 -5
- package/dist/parser/trino/index.js +1 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -263,6 +263,18 @@ Call the `getAllEntities` method on the SQL instance, pass the SQL content and t
|
|
|
263
263
|
[ 'CATALOG', 'FUNCTION', 'TEMPORARY', 'VIEW', 'DATABASE', 'TABLE' ]
|
|
264
264
|
*/
|
|
265
265
|
```
|
|
266
|
+
|
|
267
|
+
Use the optional `keywordFilter` to remove unwanted keyword candidates. Return `true` to keep a keyword and `false` to remove it.
|
|
268
|
+
|
|
269
|
+
```typescript
|
|
270
|
+
const sql = 'SELECT * FROM tb ';
|
|
271
|
+
const pos = { lineNumber: 1, column: sql.length + 1 };
|
|
272
|
+
const excludedKeywords = new Set(['WHERE', 'ORDER BY']);
|
|
273
|
+
const keywords = flink.getSuggestionAtCaretPosition(sql, pos, {
|
|
274
|
+
keywordFilter: (keyword) => !excludedKeywords.has(keyword),
|
|
275
|
+
})?.keywords;
|
|
276
|
+
```
|
|
277
|
+
|
|
266
278
|
+ **Obtaining information related to grammar completion**
|
|
267
279
|
```javascript
|
|
268
280
|
import { FlinkSQL } from 'dt-sql-parser';
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { MySQL, FlinkSQL, SparkSQL, HiveSQL, PostgreSQL, TrinoSQL, ImpalaSQL, Ge
|
|
|
2
2
|
export { MySqlParserListener, MySqlParserVisitor, FlinkSqlParserListener, FlinkSqlParserVisitor, SparkSqlParserListener, SparkSqlParserVisitor, HiveSqlParserListener, HiveSqlParserVisitor, PostgreSqlParserListener, PostgreSqlParserVisitor, TrinoSqlListener, TrinoSqlVisitor, ImpalaSqlParserListener, ImpalaSqlParserVisitor, GenericSqlListener, GenericSqlVisitor, } from './lib';
|
|
3
3
|
export { EntityContextType } from './parser/common/types';
|
|
4
4
|
export { StmtContextType } from './parser/common/entityCollector';
|
|
5
|
-
export type { CaretPosition, Suggestions, SyntaxSuggestion } from './parser/common/types';
|
|
5
|
+
export type { CaretPosition, SuggestionOptions, Suggestions, SyntaxSuggestion, } from './parser/common/types';
|
|
6
6
|
export type { WordRange, TextSlice } from './parser/common/textAndWord';
|
|
7
7
|
export type { SyntaxError, ParseError, ErrorListener } from './parser/common/parseErrorListener';
|
|
8
8
|
export type { GenericSQLOptions } from './parser/generic';
|
|
@@ -1773,7 +1773,6 @@ export declare class MySqlParser extends SQLParserBase {
|
|
|
1773
1773
|
private queryItem_sempred;
|
|
1774
1774
|
private selectElement_sempred;
|
|
1775
1775
|
private columnName_sempred;
|
|
1776
|
-
private columnNamePath_sempred;
|
|
1777
1776
|
private columnNamePathAllowEmpty_sempred;
|
|
1778
1777
|
private expression_sempred;
|
|
1779
1778
|
private predicate_sempred;
|
|
@@ -5381,8 +5380,7 @@ export declare class OrderByClauseContext extends antlr.ParserRuleContext {
|
|
|
5381
5380
|
export declare class OrderByExpressionContext extends antlr.ParserRuleContext {
|
|
5382
5381
|
_order?: Token | null;
|
|
5383
5382
|
constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
|
|
5384
|
-
expression(): ExpressionContext
|
|
5385
|
-
columnNamePathAllowEmpty(): ColumnNamePathAllowEmptyContext | null;
|
|
5383
|
+
expression(): ExpressionContext;
|
|
5386
5384
|
KW_ASC(): antlr.TerminalNode | null;
|
|
5387
5385
|
KW_DESC(): antlr.TerminalNode | null;
|
|
5388
5386
|
get ruleIndex(): number;
|
|
@@ -5960,8 +5958,7 @@ export declare class HavingClauseContext extends antlr.ParserRuleContext {
|
|
|
5960
5958
|
_havingExpr?: ExpressionContext;
|
|
5961
5959
|
constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
|
|
5962
5960
|
KW_HAVING(): antlr.TerminalNode;
|
|
5963
|
-
|
|
5964
|
-
expression(): ExpressionContext | null;
|
|
5961
|
+
expression(): ExpressionContext;
|
|
5965
5962
|
get ruleIndex(): number;
|
|
5966
5963
|
enterRule(listener: MySqlParserListener): void;
|
|
5967
5964
|
exitRule(listener: MySqlParserListener): void;
|
|
@@ -5990,8 +5987,7 @@ export declare class WindowClauseContext extends antlr.ParserRuleContext {
|
|
|
5990
5987
|
export declare class GroupByItemContext extends antlr.ParserRuleContext {
|
|
5991
5988
|
_order?: Token | null;
|
|
5992
5989
|
constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
|
|
5993
|
-
expression(): ExpressionContext
|
|
5994
|
-
columnNamePathAllowEmpty(): ColumnNamePathAllowEmptyContext | null;
|
|
5990
|
+
expression(): ExpressionContext;
|
|
5995
5991
|
KW_ASC(): antlr.TerminalNode | null;
|
|
5996
5992
|
KW_DESC(): antlr.TerminalNode | null;
|
|
5997
5993
|
get ruleIndex(): number;
|
|
@@ -9420,39 +9416,20 @@ export declare class ColumnNameContext extends antlr.ParserRuleContext {
|
|
|
9420
9416
|
}
|
|
9421
9417
|
export declare class ColumnNamePathContext extends antlr.ParserRuleContext {
|
|
9422
9418
|
constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
|
|
9423
|
-
|
|
9424
|
-
copyFrom(ctx: ColumnNamePathContext): void;
|
|
9425
|
-
}
|
|
9426
|
-
export declare class ColumnNamePath_dottedContext extends ColumnNamePathContext {
|
|
9427
|
-
constructor(ctx: ColumnNamePathContext);
|
|
9428
|
-
dottedId(): DottedIdContext[];
|
|
9429
|
-
dottedId(i: number): DottedIdContext | null;
|
|
9430
|
-
enterRule(listener: MySqlParserListener): void;
|
|
9431
|
-
exitRule(listener: MySqlParserListener): void;
|
|
9432
|
-
accept<Result>(visitor: MySqlParserVisitor<Result>): Result | null;
|
|
9433
|
-
}
|
|
9434
|
-
export declare class ColumnNamePath_defaultContext extends ColumnNamePathContext {
|
|
9435
|
-
constructor(ctx: ColumnNamePathContext);
|
|
9436
|
-
uid(): UidContext;
|
|
9419
|
+
uid(): UidContext | null;
|
|
9437
9420
|
dottedId(): DottedIdContext[];
|
|
9438
9421
|
dottedId(i: number): DottedIdContext | null;
|
|
9439
|
-
|
|
9440
|
-
exitRule(listener: MySqlParserListener): void;
|
|
9441
|
-
accept<Result>(visitor: MySqlParserVisitor<Result>): Result | null;
|
|
9442
|
-
}
|
|
9443
|
-
export declare class ColumnNamePath_dot_emptyContext extends ColumnNamePathContext {
|
|
9444
|
-
constructor(ctx: ColumnNamePathContext);
|
|
9445
|
-
uid(): UidContext;
|
|
9446
|
-
DOT(): antlr.TerminalNode;
|
|
9447
|
-
emptyColumn(): EmptyColumnContext;
|
|
9422
|
+
get ruleIndex(): number;
|
|
9448
9423
|
enterRule(listener: MySqlParserListener): void;
|
|
9449
9424
|
exitRule(listener: MySqlParserListener): void;
|
|
9450
9425
|
accept<Result>(visitor: MySqlParserVisitor<Result>): Result | null;
|
|
9451
9426
|
}
|
|
9452
9427
|
export declare class ColumnNamePathAllowEmptyContext extends antlr.ParserRuleContext {
|
|
9453
9428
|
constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
|
|
9454
|
-
columnNamePath(): ColumnNamePathContext | null;
|
|
9455
9429
|
emptyColumn(): EmptyColumnContext | null;
|
|
9430
|
+
uid(): UidContext | null;
|
|
9431
|
+
dottedId(): DottedIdContext[];
|
|
9432
|
+
dottedId(i: number): DottedIdContext | null;
|
|
9456
9433
|
get ruleIndex(): number;
|
|
9457
9434
|
enterRule(listener: MySqlParserListener): void;
|
|
9458
9435
|
exitRule(listener: MySqlParserListener): void;
|