@renovatebot/good-enough-parser 1.1.24 → 2.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.
- package/README.md +6 -6
- package/dist/cjs/index.d.ts +4 -4
- package/dist/cjs/index.js +7 -7
- package/dist/cjs/lang/groovy.d.ts +6 -6
- package/dist/cjs/lang/groovy.js +83 -83
- package/dist/cjs/lang/index.d.ts +20 -20
- package/dist/cjs/lang/index.js +56 -56
- package/dist/cjs/lang/index.js.map +1 -1
- package/dist/cjs/lang/python.d.ts +6 -6
- package/dist/cjs/lang/python.js +73 -73
- package/dist/cjs/lang/scala.d.ts +6 -6
- package/dist/cjs/lang/scala.js +71 -71
- package/dist/cjs/lang/starlark.d.ts +6 -6
- package/dist/cjs/lang/starlark.js +58 -58
- package/dist/cjs/lang/types.d.ts +6 -6
- package/dist/cjs/lang/types.js +2 -2
- package/dist/cjs/lexer/bracket.d.ts +6 -6
- package/dist/cjs/lexer/bracket.js +56 -57
- package/dist/cjs/lexer/bracket.js.map +1 -1
- package/dist/cjs/lexer/comment.d.ts +3 -3
- package/dist/cjs/lexer/comment.js +43 -44
- package/dist/cjs/lexer/comment.js.map +1 -1
- package/dist/cjs/lexer/index.d.ts +5 -5
- package/dist/cjs/lexer/index.js +154 -155
- package/dist/cjs/lexer/index.js.map +1 -1
- package/dist/cjs/lexer/number.d.ts +2 -2
- package/dist/cjs/lexer/number.js +17 -18
- package/dist/cjs/lexer/number.js.map +1 -1
- package/dist/cjs/lexer/operator.d.ts +2 -2
- package/dist/cjs/lexer/operator.js +23 -24
- package/dist/cjs/lexer/operator.js.map +1 -1
- package/dist/cjs/lexer/rules.d.ts +4 -4
- package/dist/cjs/lexer/rules.js +74 -74
- package/dist/cjs/lexer/rules.js.map +1 -1
- package/dist/cjs/lexer/string.d.ts +2 -2
- package/dist/cjs/lexer/string.js +180 -181
- package/dist/cjs/lexer/string.js.map +1 -1
- package/dist/cjs/lexer/symbol.d.ts +2 -2
- package/dist/cjs/lexer/symbol.js +17 -18
- package/dist/cjs/lexer/symbol.js.map +1 -1
- package/dist/cjs/lexer/token.d.ts +3 -3
- package/dist/cjs/lexer/token.js +63 -64
- package/dist/cjs/lexer/token.js.map +1 -1
- package/dist/cjs/lexer/types.d.ts +142 -142
- package/dist/cjs/lexer/types.js +2 -2
- package/dist/cjs/parser/cursor.d.ts +2 -2
- package/dist/cjs/parser/cursor.js +12 -13
- package/dist/cjs/parser/cursor.js.map +1 -1
- package/dist/cjs/parser/index.d.ts +3 -3
- package/dist/cjs/parser/index.js +19 -19
- package/dist/cjs/parser/tree.d.ts +4 -4
- package/dist/cjs/parser/tree.js +245 -246
- package/dist/cjs/parser/tree.js.map +1 -1
- package/dist/cjs/parser/types.d.ts +33 -33
- package/dist/cjs/parser/types.js +2 -2
- package/dist/cjs/query/builder.d.ts +144 -144
- package/dist/cjs/query/builder.d.ts.map +1 -1
- package/dist/cjs/query/builder.js +333 -332
- package/dist/cjs/query/builder.js.map +1 -1
- package/dist/cjs/query/handler.d.ts +2 -2
- package/dist/cjs/query/handler.js +9 -10
- package/dist/cjs/query/handler.js.map +1 -1
- package/dist/cjs/query/index.d.ts +2 -2
- package/dist/cjs/query/index.js +32 -32
- package/dist/cjs/query/matchers/abstract-matcher.d.ts +9 -9
- package/dist/cjs/query/matchers/abstract-matcher.js +36 -36
- package/dist/cjs/query/matchers/abstract-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/alt-matcher.d.ts +10 -10
- package/dist/cjs/query/matchers/alt-matcher.js +33 -33
- package/dist/cjs/query/matchers/alt-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/anchor-matcher.d.ts +17 -17
- package/dist/cjs/query/matchers/anchor-matcher.js +50 -50
- package/dist/cjs/query/matchers/anchor-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/comment-matcher.d.ts +10 -10
- package/dist/cjs/query/matchers/comment-matcher.js +39 -39
- package/dist/cjs/query/matchers/comment-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/index.d.ts +6 -6
- package/dist/cjs/query/matchers/index.js +22 -22
- package/dist/cjs/query/matchers/many-matcher.d.ts +13 -13
- package/dist/cjs/query/matchers/many-matcher.js +61 -61
- package/dist/cjs/query/matchers/many-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/num-matcher.d.ts +8 -8
- package/dist/cjs/query/matchers/num-matcher.js +34 -34
- package/dist/cjs/query/matchers/num-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/op-matcher.d.ts +8 -8
- package/dist/cjs/query/matchers/op-matcher.js +34 -34
- package/dist/cjs/query/matchers/op-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/seq-matcher.d.ts +14 -14
- package/dist/cjs/query/matchers/seq-matcher.js +76 -76
- package/dist/cjs/query/matchers/seq-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/str-matcher.d.ts +38 -38
- package/dist/cjs/query/matchers/str-matcher.js +108 -108
- package/dist/cjs/query/matchers/str-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/sym-matcher.d.ts +8 -8
- package/dist/cjs/query/matchers/sym-matcher.js +34 -34
- package/dist/cjs/query/matchers/sym-matcher.js.map +1 -1
- package/dist/cjs/query/matchers/tree-matcher.d.ts +23 -23
- package/dist/cjs/query/matchers/tree-matcher.js +121 -121
- package/dist/cjs/query/matchers/tree-matcher.js.map +1 -1
- package/dist/cjs/query/options.d.ts +10 -10
- package/dist/cjs/query/options.js +148 -149
- package/dist/cjs/query/options.js.map +1 -1
- package/dist/cjs/query/regex.d.ts +1 -1
- package/dist/cjs/query/regex.js +12 -13
- package/dist/cjs/query/regex.js.map +1 -1
- package/dist/cjs/query/types.d.ts +100 -100
- package/dist/cjs/query/types.d.ts.map +1 -1
- package/dist/cjs/query/types.js +2 -2
- package/dist/cjs/util/clone.d.ts +1 -1
- package/dist/cjs/util/clone.js +5 -5
- package/dist/cjs/util/regex.d.ts +1 -1
- package/dist/cjs/util/regex.js +6 -7
- package/dist/cjs/util/regex.js.map +1 -1
- package/dist/esm/index.d.ts +4 -4
- package/dist/esm/index.js +8 -8
- package/dist/esm/lang/groovy.d.ts +6 -6
- package/dist/esm/lang/groovy.js +80 -80
- package/dist/esm/lang/index.d.ts +20 -20
- package/dist/esm/lang/index.js +37 -37
- package/dist/esm/lang/python.d.ts +6 -6
- package/dist/esm/lang/python.js +70 -70
- package/dist/esm/lang/scala.d.ts +6 -6
- package/dist/esm/lang/scala.js +68 -68
- package/dist/esm/lang/starlark.d.ts +6 -6
- package/dist/esm/lang/starlark.js +55 -55
- package/dist/esm/lang/types.d.ts +6 -6
- package/dist/esm/lang/types.js +1 -1
- package/dist/esm/lexer/bracket.d.ts +6 -6
- package/dist/esm/lexer/bracket.js +49 -49
- package/dist/esm/lexer/bracket.js.map +1 -1
- package/dist/esm/lexer/comment.d.ts +3 -3
- package/dist/esm/lexer/comment.js +39 -39
- package/dist/esm/lexer/comment.js.map +1 -1
- package/dist/esm/lexer/index.d.ts +5 -5
- package/dist/esm/lexer/index.js +136 -136
- package/dist/esm/lexer/index.js.map +1 -1
- package/dist/esm/lexer/number.d.ts +2 -2
- package/dist/esm/lexer/number.js +14 -14
- package/dist/esm/lexer/operator.d.ts +2 -2
- package/dist/esm/lexer/operator.js +20 -20
- package/dist/esm/lexer/rules.d.ts +4 -4
- package/dist/esm/lexer/rules.js +69 -69
- package/dist/esm/lexer/rules.js.map +1 -1
- package/dist/esm/lexer/string.d.ts +2 -2
- package/dist/esm/lexer/string.js +177 -177
- package/dist/esm/lexer/string.js.map +1 -1
- package/dist/esm/lexer/symbol.d.ts +2 -2
- package/dist/esm/lexer/symbol.js +14 -14
- package/dist/esm/lexer/token.d.ts +3 -3
- package/dist/esm/lexer/token.js +60 -60
- package/dist/esm/lexer/token.js.map +1 -1
- package/dist/esm/lexer/types.d.ts +142 -142
- package/dist/esm/lexer/types.js +1 -1
- package/dist/esm/parser/cursor.d.ts +2 -2
- package/dist/esm/parser/cursor.js +9 -9
- package/dist/esm/parser/index.d.ts +3 -3
- package/dist/esm/parser/index.js +3 -3
- package/dist/esm/parser/tree.d.ts +4 -4
- package/dist/esm/parser/tree.js +241 -241
- package/dist/esm/parser/tree.js.map +1 -1
- package/dist/esm/parser/types.d.ts +33 -33
- package/dist/esm/parser/types.js +1 -1
- package/dist/esm/query/builder.d.ts +144 -144
- package/dist/esm/query/builder.d.ts.map +1 -1
- package/dist/esm/query/builder.js +305 -304
- package/dist/esm/query/builder.js.map +1 -1
- package/dist/esm/query/handler.d.ts +2 -2
- package/dist/esm/query/handler.js +6 -6
- package/dist/esm/query/index.d.ts +2 -2
- package/dist/esm/query/index.js +2 -2
- package/dist/esm/query/matchers/abstract-matcher.d.ts +9 -9
- package/dist/esm/query/matchers/abstract-matcher.js +32 -32
- package/dist/esm/query/matchers/abstract-matcher.js.map +1 -1
- package/dist/esm/query/matchers/alt-matcher.d.ts +10 -10
- package/dist/esm/query/matchers/alt-matcher.js +29 -29
- package/dist/esm/query/matchers/alt-matcher.js.map +1 -1
- package/dist/esm/query/matchers/anchor-matcher.d.ts +17 -17
- package/dist/esm/query/matchers/anchor-matcher.js +44 -44
- package/dist/esm/query/matchers/anchor-matcher.js.map +1 -1
- package/dist/esm/query/matchers/comment-matcher.d.ts +10 -10
- package/dist/esm/query/matchers/comment-matcher.js +35 -35
- package/dist/esm/query/matchers/comment-matcher.js.map +1 -1
- package/dist/esm/query/matchers/index.d.ts +6 -6
- package/dist/esm/query/matchers/index.js +6 -6
- package/dist/esm/query/matchers/many-matcher.d.ts +13 -13
- package/dist/esm/query/matchers/many-matcher.js +57 -57
- package/dist/esm/query/matchers/many-matcher.js.map +1 -1
- package/dist/esm/query/matchers/num-matcher.d.ts +8 -8
- package/dist/esm/query/matchers/num-matcher.js +30 -30
- package/dist/esm/query/matchers/num-matcher.js.map +1 -1
- package/dist/esm/query/matchers/op-matcher.d.ts +8 -8
- package/dist/esm/query/matchers/op-matcher.js +30 -30
- package/dist/esm/query/matchers/op-matcher.js.map +1 -1
- package/dist/esm/query/matchers/seq-matcher.d.ts +14 -14
- package/dist/esm/query/matchers/seq-matcher.js +72 -72
- package/dist/esm/query/matchers/seq-matcher.js.map +1 -1
- package/dist/esm/query/matchers/str-matcher.d.ts +38 -38
- package/dist/esm/query/matchers/str-matcher.js +102 -102
- package/dist/esm/query/matchers/str-matcher.js.map +1 -1
- package/dist/esm/query/matchers/sym-matcher.d.ts +8 -8
- package/dist/esm/query/matchers/sym-matcher.js +30 -30
- package/dist/esm/query/matchers/sym-matcher.js.map +1 -1
- package/dist/esm/query/matchers/tree-matcher.d.ts +23 -23
- package/dist/esm/query/matchers/tree-matcher.js +117 -117
- package/dist/esm/query/matchers/tree-matcher.js.map +1 -1
- package/dist/esm/query/options.d.ts +10 -10
- package/dist/esm/query/options.js +139 -139
- package/dist/esm/query/options.js.map +1 -1
- package/dist/esm/query/regex.d.ts +1 -1
- package/dist/esm/query/regex.js +9 -9
- package/dist/esm/query/regex.js.map +1 -1
- package/dist/esm/query/types.d.ts +100 -100
- package/dist/esm/query/types.d.ts.map +1 -1
- package/dist/esm/query/types.js +1 -1
- package/dist/esm/util/clone.d.ts +1 -1
- package/dist/esm/util/clone.js +1 -1
- package/dist/esm/util/regex.d.ts +1 -1
- package/dist/esm/util/regex.js +3 -3
- package/package.json +42 -46
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../lib/query/regex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../lib/query/regex.ts"],"names":[],"mappings":";;AAAA,0BAUC;AAVD,SAAgB,OAAO,CAAC,KAAc;IACpC,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
import type { CommentToken, MinorToken, NumberToken, OperatorToken, SymbolToken } from '../lexer/types';
|
|
2
|
-
import type { Cursor, Node, StringTree, TemplateTree, Tree, TreeType } from '../parser/types';
|
|
3
|
-
import type { StrContentMatcherHandler } from './matchers/str-matcher';
|
|
4
|
-
export interface Checkpoint<Ctx> {
|
|
5
|
-
cursor: Cursor;
|
|
6
|
-
context: Ctx;
|
|
7
|
-
}
|
|
8
|
-
export type NodeHandler<Ctx, T extends Node> = (ctx: Ctx, tree: T) => Ctx;
|
|
9
|
-
export type SymMatcherValue = string | RegExp | null;
|
|
10
|
-
export type SymMatcherHandler<Ctx> = NodeHandler<Ctx, SymbolToken>;
|
|
11
|
-
export interface SymMatcherOptions<Ctx> {
|
|
12
|
-
value: SymMatcherValue;
|
|
13
|
-
handler: SymMatcherHandler<Ctx> | null;
|
|
14
|
-
}
|
|
15
|
-
export type OpMatcherValue = string | RegExp | null;
|
|
16
|
-
export type OpMatcherHandler<Ctx> = NodeHandler<Ctx, OperatorToken>;
|
|
17
|
-
export interface OpMatcherOptions<Ctx> {
|
|
18
|
-
value: OpMatcherValue;
|
|
19
|
-
handler: OpMatcherHandler<Ctx> | null;
|
|
20
|
-
}
|
|
21
|
-
export type CommentMatcherValue = string | RegExp | null;
|
|
22
|
-
export type CommentMatcherHandler<Ctx> = NodeHandler<Ctx, CommentToken>;
|
|
23
|
-
export interface CommentMatcherOptions<Ctx> {
|
|
24
|
-
value: CommentMatcherValue;
|
|
25
|
-
handler: CommentMatcherHandler<Ctx> | null;
|
|
26
|
-
}
|
|
27
|
-
export type NumMatcherValue = string | RegExp | null;
|
|
28
|
-
export type NumMatcherHandler<Ctx> = NodeHandler<Ctx, NumberToken>;
|
|
29
|
-
export interface NumMatcherOptions<Ctx> {
|
|
30
|
-
value: NumMatcherValue;
|
|
31
|
-
handler: NumMatcherHandler<Ctx> | null;
|
|
32
|
-
}
|
|
33
|
-
export interface SeqMatcherOptions<Ctx> {
|
|
34
|
-
matchers: Matcher<Ctx>[];
|
|
35
|
-
}
|
|
36
|
-
export type TreeMatcherType = TreeType | null;
|
|
37
|
-
export type TreeMatcherHandler<Ctx> = NodeHandler<Ctx, Tree>;
|
|
38
|
-
export interface TreeOptionsBase<Ctx> {
|
|
39
|
-
type?: TreeMatcherType;
|
|
40
|
-
startsWith?: string | null;
|
|
41
|
-
endsWith?: string | null;
|
|
42
|
-
maxDepth?: number | null;
|
|
43
|
-
maxMatches?: number | null;
|
|
44
|
-
preHandler?: TreeMatcherHandler<Ctx>;
|
|
45
|
-
postHandler?: TreeMatcherHandler<Ctx>;
|
|
46
|
-
}
|
|
47
|
-
export interface Matcher<Ctx> {
|
|
48
|
-
seekNext(cursor: Cursor): Cursor;
|
|
49
|
-
match(checkpoint: Checkpoint<Ctx>): Checkpoint<Ctx> | null;
|
|
50
|
-
nextMatch(): Checkpoint<Ctx> | null;
|
|
51
|
-
readonly preventSkipping?: MinorToken['type'];
|
|
52
|
-
}
|
|
53
|
-
export interface ManyBuilderOpts<Ctx> {
|
|
54
|
-
builder: QueryBuilder<Ctx, Node>;
|
|
55
|
-
min: number;
|
|
56
|
-
max: number | null;
|
|
57
|
-
}
|
|
58
|
-
export interface ManyMatcherOptions<Ctx> {
|
|
59
|
-
matcher: Matcher<Ctx>;
|
|
60
|
-
min: number;
|
|
61
|
-
max: number | null;
|
|
62
|
-
}
|
|
63
|
-
export interface TreeBuilderOptions<Ctx> extends TreeOptionsBase<Ctx> {
|
|
64
|
-
search?: QueryBuilder<Ctx, Node> | null;
|
|
65
|
-
}
|
|
66
|
-
export interface AltMatcherOptions<Ctx> {
|
|
67
|
-
matchers: Matcher<Ctx>[];
|
|
68
|
-
}
|
|
69
|
-
export type StrTreeHandler<Ctx> = NodeHandler<Ctx, StringTree>;
|
|
70
|
-
export interface StrTreeOptionsBase<Ctx> {
|
|
71
|
-
preHandler?: StrTreeHandler<Ctx> | null;
|
|
72
|
-
postHandler?: StrTreeHandler<Ctx> | null;
|
|
73
|
-
}
|
|
74
|
-
type StrTplHandler<Ctx> = NodeHandler<Ctx, TemplateTree>;
|
|
75
|
-
export interface StrTplOptionsBase<Ctx> {
|
|
76
|
-
preHandler?: StrTplHandler<Ctx> | null;
|
|
77
|
-
postHandler?: StrTplHandler<Ctx> | null;
|
|
78
|
-
}
|
|
79
|
-
export interface StrContentBuilderOptionsBase<Ctx> {
|
|
80
|
-
match?: string | RegExp | null;
|
|
81
|
-
handler?: StrContentMatcherHandler<Ctx> | null;
|
|
82
|
-
}
|
|
83
|
-
export interface StrTreeBuilderOptionsBase<Ctx> {
|
|
84
|
-
match?: (string | RegExp | QueryBuilder<Ctx, Node>)[] | null;
|
|
85
|
-
preHandler?: NodeHandler<Ctx, StringTree> | null;
|
|
86
|
-
postHandler?: NodeHandler<Ctx, StringTree> | null;
|
|
87
|
-
}
|
|
88
|
-
export type StrBuilderOptionsBase<Ctx> = StrContentBuilderOptionsBase<Ctx> | StrTreeBuilderOptionsBase<Ctx>;
|
|
89
|
-
export interface StrContentBuilderOptions<Ctx> extends StrContentBuilderOptionsBase<Ctx> {
|
|
90
|
-
type: 'str-content';
|
|
91
|
-
}
|
|
92
|
-
export interface StrTreeBuilderOptions<Ctx> extends StrTreeBuilderOptionsBase<Ctx> {
|
|
93
|
-
type: 'str-tree';
|
|
94
|
-
}
|
|
95
|
-
export type StrBuilderOptions<Ctx> = StrContentBuilderOptions<Ctx> | StrTreeBuilderOptions<Ctx>;
|
|
96
|
-
export interface QueryBuilder<Ctx, T extends Node> {
|
|
97
|
-
handler(fn: (ctx: Ctx, t: T) => Ctx): QueryBuilder<Ctx, T>;
|
|
98
|
-
build(): Matcher<Ctx>;
|
|
99
|
-
}
|
|
100
|
-
export {};
|
|
1
|
+
import type { CommentToken, MinorToken, NumberToken, OperatorToken, SymbolToken } from '../lexer/types';
|
|
2
|
+
import type { Cursor, Node, StringTree, TemplateTree, Tree, TreeType } from '../parser/types';
|
|
3
|
+
import type { StrContentMatcherHandler } from './matchers/str-matcher';
|
|
4
|
+
export interface Checkpoint<Ctx> {
|
|
5
|
+
cursor: Cursor;
|
|
6
|
+
context: Ctx;
|
|
7
|
+
}
|
|
8
|
+
export type NodeHandler<Ctx, T extends Node> = (ctx: Ctx, tree: T) => Ctx;
|
|
9
|
+
export type SymMatcherValue = string | RegExp | null;
|
|
10
|
+
export type SymMatcherHandler<Ctx> = NodeHandler<Ctx, SymbolToken>;
|
|
11
|
+
export interface SymMatcherOptions<Ctx> {
|
|
12
|
+
value: SymMatcherValue;
|
|
13
|
+
handler: SymMatcherHandler<Ctx> | null;
|
|
14
|
+
}
|
|
15
|
+
export type OpMatcherValue = string | RegExp | null;
|
|
16
|
+
export type OpMatcherHandler<Ctx> = NodeHandler<Ctx, OperatorToken>;
|
|
17
|
+
export interface OpMatcherOptions<Ctx> {
|
|
18
|
+
value: OpMatcherValue;
|
|
19
|
+
handler: OpMatcherHandler<Ctx> | null;
|
|
20
|
+
}
|
|
21
|
+
export type CommentMatcherValue = string | RegExp | null;
|
|
22
|
+
export type CommentMatcherHandler<Ctx> = NodeHandler<Ctx, CommentToken>;
|
|
23
|
+
export interface CommentMatcherOptions<Ctx> {
|
|
24
|
+
value: CommentMatcherValue;
|
|
25
|
+
handler: CommentMatcherHandler<Ctx> | null;
|
|
26
|
+
}
|
|
27
|
+
export type NumMatcherValue = string | RegExp | null;
|
|
28
|
+
export type NumMatcherHandler<Ctx> = NodeHandler<Ctx, NumberToken>;
|
|
29
|
+
export interface NumMatcherOptions<Ctx> {
|
|
30
|
+
value: NumMatcherValue;
|
|
31
|
+
handler: NumMatcherHandler<Ctx> | null;
|
|
32
|
+
}
|
|
33
|
+
export interface SeqMatcherOptions<Ctx> {
|
|
34
|
+
matchers: Matcher<Ctx>[];
|
|
35
|
+
}
|
|
36
|
+
export type TreeMatcherType = TreeType | null;
|
|
37
|
+
export type TreeMatcherHandler<Ctx> = NodeHandler<Ctx, Tree>;
|
|
38
|
+
export interface TreeOptionsBase<Ctx> {
|
|
39
|
+
type?: TreeMatcherType;
|
|
40
|
+
startsWith?: string | null;
|
|
41
|
+
endsWith?: string | null;
|
|
42
|
+
maxDepth?: number | null;
|
|
43
|
+
maxMatches?: number | null;
|
|
44
|
+
preHandler?: TreeMatcherHandler<Ctx>;
|
|
45
|
+
postHandler?: TreeMatcherHandler<Ctx>;
|
|
46
|
+
}
|
|
47
|
+
export interface Matcher<Ctx> {
|
|
48
|
+
seekNext(cursor: Cursor): Cursor;
|
|
49
|
+
match(checkpoint: Checkpoint<Ctx>): Checkpoint<Ctx> | null;
|
|
50
|
+
nextMatch(): Checkpoint<Ctx> | null;
|
|
51
|
+
readonly preventSkipping?: MinorToken['type'];
|
|
52
|
+
}
|
|
53
|
+
export interface ManyBuilderOpts<Ctx> {
|
|
54
|
+
builder: QueryBuilder<Ctx, Node>;
|
|
55
|
+
min: number;
|
|
56
|
+
max: number | null;
|
|
57
|
+
}
|
|
58
|
+
export interface ManyMatcherOptions<Ctx> {
|
|
59
|
+
matcher: Matcher<Ctx>;
|
|
60
|
+
min: number;
|
|
61
|
+
max: number | null;
|
|
62
|
+
}
|
|
63
|
+
export interface TreeBuilderOptions<Ctx> extends TreeOptionsBase<Ctx> {
|
|
64
|
+
search?: QueryBuilder<Ctx, Node> | null;
|
|
65
|
+
}
|
|
66
|
+
export interface AltMatcherOptions<Ctx> {
|
|
67
|
+
matchers: Matcher<Ctx>[];
|
|
68
|
+
}
|
|
69
|
+
export type StrTreeHandler<Ctx> = NodeHandler<Ctx, StringTree>;
|
|
70
|
+
export interface StrTreeOptionsBase<Ctx> {
|
|
71
|
+
preHandler?: StrTreeHandler<Ctx> | null;
|
|
72
|
+
postHandler?: StrTreeHandler<Ctx> | null;
|
|
73
|
+
}
|
|
74
|
+
type StrTplHandler<Ctx> = NodeHandler<Ctx, TemplateTree>;
|
|
75
|
+
export interface StrTplOptionsBase<Ctx> {
|
|
76
|
+
preHandler?: StrTplHandler<Ctx> | null;
|
|
77
|
+
postHandler?: StrTplHandler<Ctx> | null;
|
|
78
|
+
}
|
|
79
|
+
export interface StrContentBuilderOptionsBase<Ctx> {
|
|
80
|
+
match?: string | RegExp | null;
|
|
81
|
+
handler?: StrContentMatcherHandler<Ctx> | null;
|
|
82
|
+
}
|
|
83
|
+
export interface StrTreeBuilderOptionsBase<Ctx> {
|
|
84
|
+
match?: (string | RegExp | QueryBuilder<Ctx, Node>)[] | null;
|
|
85
|
+
preHandler?: NodeHandler<Ctx, StringTree> | null;
|
|
86
|
+
postHandler?: NodeHandler<Ctx, StringTree> | null;
|
|
87
|
+
}
|
|
88
|
+
export type StrBuilderOptionsBase<Ctx> = StrContentBuilderOptionsBase<Ctx> | StrTreeBuilderOptionsBase<Ctx>;
|
|
89
|
+
export interface StrContentBuilderOptions<Ctx> extends StrContentBuilderOptionsBase<Ctx> {
|
|
90
|
+
type: 'str-content';
|
|
91
|
+
}
|
|
92
|
+
export interface StrTreeBuilderOptions<Ctx> extends StrTreeBuilderOptionsBase<Ctx> {
|
|
93
|
+
type: 'str-tree';
|
|
94
|
+
}
|
|
95
|
+
export type StrBuilderOptions<Ctx> = StrContentBuilderOptions<Ctx> | StrTreeBuilderOptions<Ctx>;
|
|
96
|
+
export interface QueryBuilder<Ctx, T extends Node> {
|
|
97
|
+
handler(fn: (ctx: Ctx, t: T) => Ctx): QueryBuilder<Ctx, T>;
|
|
98
|
+
build(): Matcher<Ctx>;
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
101
101
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/query/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/query/types.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/query/types.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=types.js.map
|
package/dist/cjs/util/clone.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { klona as clone } from 'klona/lite';
|
|
1
|
+
export { klona as clone } from 'klona/lite';
|
|
2
2
|
//# sourceMappingURL=clone.d.ts.map
|
package/dist/cjs/util/clone.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.clone = void 0;
|
|
4
|
-
var lite_1 = require("klona/lite");
|
|
5
|
-
Object.defineProperty(exports, "clone", { enumerable: true, get: function () { return lite_1.klona; } });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clone = void 0;
|
|
4
|
+
var lite_1 = require("klona/lite");
|
|
5
|
+
Object.defineProperty(exports, "clone", { enumerable: true, get: function () { return lite_1.klona; } });
|
|
6
6
|
//# sourceMappingURL=clone.js.map
|
package/dist/cjs/util/regex.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function escape(input: string): string;
|
|
1
|
+
export declare function escape(input: string): string;
|
|
2
2
|
//# sourceMappingURL=regex.d.ts.map
|
package/dist/cjs/util/regex.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.escape =
|
|
4
|
-
function escape(input) {
|
|
5
|
-
return input.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
6
|
-
}
|
|
7
|
-
exports.escape = escape;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.escape = escape;
|
|
4
|
+
function escape(input) {
|
|
5
|
+
return input.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
6
|
+
}
|
|
8
7
|
//# sourceMappingURL=regex.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../lib/util/regex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../lib/util/regex.ts"],"names":[],"mappings":";;AAAA,wBAEC;AAFD,SAAgB,MAAM,CAAC,KAAa;IAClC,OAAO,KAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * as lang from './lang';
|
|
2
|
-
export * as lexer from './lexer';
|
|
3
|
-
export * as parser from './parser';
|
|
4
|
-
export * as query from './query';
|
|
1
|
+
export * as lang from './lang';
|
|
2
|
+
export * as lexer from './lexer';
|
|
3
|
+
export * as parser from './parser';
|
|
4
|
+
export * as query from './query';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import * as lang_1 from './lang';
|
|
2
|
-
export { lang_1 as lang };
|
|
3
|
-
import * as lexer_1 from './lexer';
|
|
4
|
-
export { lexer_1 as lexer };
|
|
5
|
-
import * as parser_1 from './parser';
|
|
6
|
-
export { parser_1 as parser };
|
|
7
|
-
import * as query_1 from './query';
|
|
8
|
-
export { query_1 as query };
|
|
1
|
+
import * as lang_1 from './lang';
|
|
2
|
+
export { lang_1 as lang };
|
|
3
|
+
import * as lexer_1 from './lexer';
|
|
4
|
+
export { lexer_1 as lexer };
|
|
5
|
+
import * as parser_1 from './parser';
|
|
6
|
+
export { parser_1 as parser };
|
|
7
|
+
import * as query_1 from './query';
|
|
8
|
+
export { query_1 as query };
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { LexerConfig } from '../lexer/types';
|
|
2
|
-
import type { ParserConfig } from '../parser/types';
|
|
3
|
-
import type { LanguageConfig } from './types';
|
|
4
|
-
export declare const lexer: LexerConfig;
|
|
5
|
-
export declare const parser: ParserConfig;
|
|
6
|
-
export declare const lang: LanguageConfig;
|
|
1
|
+
import type { LexerConfig } from '../lexer/types';
|
|
2
|
+
import type { ParserConfig } from '../parser/types';
|
|
3
|
+
import type { LanguageConfig } from './types';
|
|
4
|
+
export declare const lexer: LexerConfig;
|
|
5
|
+
export declare const parser: ParserConfig;
|
|
6
|
+
export declare const lang: LanguageConfig;
|
|
7
7
|
//# sourceMappingURL=groovy.d.ts.map
|
package/dist/esm/lang/groovy.js
CHANGED
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @see https://docs.groovy-lang.org/latest/html/documentation/#groovy-operators
|
|
3
|
-
*/
|
|
4
|
-
const operators =
|
|
5
|
-
/* prettier-ignore */ [
|
|
6
|
-
'+', '-', '*', '/', '%', '**',
|
|
7
|
-
'++', '--',
|
|
8
|
-
'+=', '-=', '*=', '/=', '%=', '**=',
|
|
9
|
-
'==', '!=', '<', '<=', '>', '>=', '===', '!==', '<=>',
|
|
10
|
-
'&&', '||', '!',
|
|
11
|
-
'&', '|', '^', '~',
|
|
12
|
-
'<<', '>>', '>>>',
|
|
13
|
-
'?', '?:',
|
|
14
|
-
'=', '?=',
|
|
15
|
-
'.', '?.', '.@', '.&', '::',
|
|
16
|
-
'=~', '==~',
|
|
17
|
-
'*.', ':',
|
|
18
|
-
'..', '..<',
|
|
19
|
-
'<>',
|
|
20
|
-
'<<=', '>>=', '>>>=', '&=', '^=', '|=', '?=',
|
|
21
|
-
'->',
|
|
22
|
-
',', ';',
|
|
23
|
-
];
|
|
24
|
-
/**
|
|
25
|
-
* Borrowed from Python implementation:
|
|
26
|
-
*
|
|
27
|
-
* @see https://docs.python.org/3/reference/lexical_analysis.html#numeric-literals
|
|
28
|
-
*/
|
|
29
|
-
const bindigit = '[01]';
|
|
30
|
-
const octdigit = '[0-7]';
|
|
31
|
-
const digit = '[0-9]';
|
|
32
|
-
const nonzerodigit = '[1-9]';
|
|
33
|
-
const hexdigit = `(?:${digit}|[a-fA-F])`;
|
|
34
|
-
const bininteger = `(?:0[bB](?:_?${bindigit})+)`;
|
|
35
|
-
const octinteger = `(?:0[oO](?:_?${octdigit})+)`;
|
|
36
|
-
const hexinteger = `(?:0[xX](?:_?${hexdigit})+)`;
|
|
37
|
-
const decinteger = `(?:${nonzerodigit}(?:_?${digit})*|0+(?:_?0)*)`;
|
|
38
|
-
const integer = `(?:${decinteger}|${bininteger}|${octinteger}|${hexinteger})`;
|
|
39
|
-
const digitpart = `(?:${digit}(?:_?${digit})*)`;
|
|
40
|
-
const fraction = `(?:\\.${digitpart})`;
|
|
41
|
-
const exponent = `(?:[eE][-+]?${digitpart})`;
|
|
42
|
-
const pointfloat = `(?:${digitpart}?${fraction}|${digitpart}\\.)`;
|
|
43
|
-
const exponentfloat = `(?:(?:${digitpart}|${pointfloat})${exponent})`;
|
|
44
|
-
const floatnumber = `(?:${pointfloat}|${exponentfloat})`;
|
|
45
|
-
const numbers = new RegExp(`(?:${integer}|${floatnumber})`);
|
|
46
|
-
const templates = [
|
|
47
|
-
{
|
|
48
|
-
type: 'var',
|
|
49
|
-
startsWith: '$',
|
|
50
|
-
symbols: /[a-zA-Z_][a-zA-Z0-9_]*/,
|
|
51
|
-
operators: ['.'],
|
|
52
|
-
},
|
|
53
|
-
{ type: 'expr', startsWith: '${', endsWith: '}' },
|
|
54
|
-
];
|
|
55
|
-
export const lexer = {
|
|
56
|
-
joinLines: '\\',
|
|
57
|
-
comments: [
|
|
58
|
-
{ type: 'line-comment', startsWith: '#!' },
|
|
59
|
-
{ type: 'line-comment', startsWith: '//' },
|
|
60
|
-
{ type: 'multiline-comment', startsWith: '/*', endsWith: '*/' },
|
|
61
|
-
],
|
|
62
|
-
symbols: /[a-zA-Z$_][a-zA-Z0-9$_]*/,
|
|
63
|
-
numbers,
|
|
64
|
-
operators,
|
|
65
|
-
brackets: [
|
|
66
|
-
{ startsWith: '{', endsWith: '}' },
|
|
67
|
-
{ startsWith: '[', endsWith: ']' },
|
|
68
|
-
{ startsWith: '(', endsWith: ')' },
|
|
69
|
-
],
|
|
70
|
-
strings: [
|
|
71
|
-
{ startsWith: "'", escapeChar: '\\' },
|
|
72
|
-
{ startsWith: "'''", escapeChar: '\\' },
|
|
73
|
-
{ startsWith: '"', templates, escapeChar: '\\' },
|
|
74
|
-
{ startsWith: '"""', templates, escapeChar: '\\' },
|
|
75
|
-
],
|
|
76
|
-
};
|
|
77
|
-
export const parser = {
|
|
78
|
-
useIndentBlocks: false,
|
|
79
|
-
};
|
|
80
|
-
export const lang = { lexer, parser };
|
|
1
|
+
/**
|
|
2
|
+
* @see https://docs.groovy-lang.org/latest/html/documentation/#groovy-operators
|
|
3
|
+
*/
|
|
4
|
+
const operators =
|
|
5
|
+
/* prettier-ignore */ [
|
|
6
|
+
'+', '-', '*', '/', '%', '**',
|
|
7
|
+
'++', '--',
|
|
8
|
+
'+=', '-=', '*=', '/=', '%=', '**=',
|
|
9
|
+
'==', '!=', '<', '<=', '>', '>=', '===', '!==', '<=>',
|
|
10
|
+
'&&', '||', '!',
|
|
11
|
+
'&', '|', '^', '~',
|
|
12
|
+
'<<', '>>', '>>>',
|
|
13
|
+
'?', '?:',
|
|
14
|
+
'=', '?=',
|
|
15
|
+
'.', '?.', '.@', '.&', '::',
|
|
16
|
+
'=~', '==~',
|
|
17
|
+
'*.', ':',
|
|
18
|
+
'..', '..<',
|
|
19
|
+
'<>',
|
|
20
|
+
'<<=', '>>=', '>>>=', '&=', '^=', '|=', '?=',
|
|
21
|
+
'->',
|
|
22
|
+
',', ';',
|
|
23
|
+
];
|
|
24
|
+
/**
|
|
25
|
+
* Borrowed from Python implementation:
|
|
26
|
+
*
|
|
27
|
+
* @see https://docs.python.org/3/reference/lexical_analysis.html#numeric-literals
|
|
28
|
+
*/
|
|
29
|
+
const bindigit = '[01]';
|
|
30
|
+
const octdigit = '[0-7]';
|
|
31
|
+
const digit = '[0-9]';
|
|
32
|
+
const nonzerodigit = '[1-9]';
|
|
33
|
+
const hexdigit = `(?:${digit}|[a-fA-F])`;
|
|
34
|
+
const bininteger = `(?:0[bB](?:_?${bindigit})+)`;
|
|
35
|
+
const octinteger = `(?:0[oO](?:_?${octdigit})+)`;
|
|
36
|
+
const hexinteger = `(?:0[xX](?:_?${hexdigit})+)`;
|
|
37
|
+
const decinteger = `(?:${nonzerodigit}(?:_?${digit})*|0+(?:_?0)*)`;
|
|
38
|
+
const integer = `(?:${decinteger}|${bininteger}|${octinteger}|${hexinteger})`;
|
|
39
|
+
const digitpart = `(?:${digit}(?:_?${digit})*)`;
|
|
40
|
+
const fraction = `(?:\\.${digitpart})`;
|
|
41
|
+
const exponent = `(?:[eE][-+]?${digitpart})`;
|
|
42
|
+
const pointfloat = `(?:${digitpart}?${fraction}|${digitpart}\\.)`;
|
|
43
|
+
const exponentfloat = `(?:(?:${digitpart}|${pointfloat})${exponent})`;
|
|
44
|
+
const floatnumber = `(?:${pointfloat}|${exponentfloat})`;
|
|
45
|
+
const numbers = new RegExp(`(?:${integer}|${floatnumber})`);
|
|
46
|
+
const templates = [
|
|
47
|
+
{
|
|
48
|
+
type: 'var',
|
|
49
|
+
startsWith: '$',
|
|
50
|
+
symbols: /[a-zA-Z_][a-zA-Z0-9_]*/,
|
|
51
|
+
operators: ['.'],
|
|
52
|
+
},
|
|
53
|
+
{ type: 'expr', startsWith: '${', endsWith: '}' },
|
|
54
|
+
];
|
|
55
|
+
export const lexer = {
|
|
56
|
+
joinLines: '\\',
|
|
57
|
+
comments: [
|
|
58
|
+
{ type: 'line-comment', startsWith: '#!' },
|
|
59
|
+
{ type: 'line-comment', startsWith: '//' },
|
|
60
|
+
{ type: 'multiline-comment', startsWith: '/*', endsWith: '*/' },
|
|
61
|
+
],
|
|
62
|
+
symbols: /[a-zA-Z$_][a-zA-Z0-9$_]*/,
|
|
63
|
+
numbers,
|
|
64
|
+
operators,
|
|
65
|
+
brackets: [
|
|
66
|
+
{ startsWith: '{', endsWith: '}' },
|
|
67
|
+
{ startsWith: '[', endsWith: ']' },
|
|
68
|
+
{ startsWith: '(', endsWith: ')' },
|
|
69
|
+
],
|
|
70
|
+
strings: [
|
|
71
|
+
{ startsWith: "'", escapeChar: '\\' },
|
|
72
|
+
{ startsWith: "'''", escapeChar: '\\' },
|
|
73
|
+
{ startsWith: '"', templates, escapeChar: '\\' },
|
|
74
|
+
{ startsWith: '"""', templates, escapeChar: '\\' },
|
|
75
|
+
],
|
|
76
|
+
};
|
|
77
|
+
export const parser = {
|
|
78
|
+
useIndentBlocks: false,
|
|
79
|
+
};
|
|
80
|
+
export const lang = { lexer, parser };
|
|
81
81
|
//# sourceMappingURL=groovy.js.map
|
package/dist/esm/lang/index.d.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import type { Cursor, Node } from '../parser/types';
|
|
2
|
-
import type { QueryBuilder } from '../query/types';
|
|
3
|
-
import type { LanguageConfig } from './types';
|
|
4
|
-
export * from './types';
|
|
5
|
-
export declare class Language {
|
|
6
|
-
readonly config: LanguageConfig;
|
|
7
|
-
private lexer;
|
|
8
|
-
constructor(config: LanguageConfig);
|
|
9
|
-
parse(input: string): Cursor;
|
|
10
|
-
query<Ctx, T extends Node>(input: string | Cursor, q: QueryBuilder<Ctx, T>, context: Ctx): Ctx | null;
|
|
11
|
-
}
|
|
12
|
-
declare const languagePresets: {
|
|
13
|
-
groovy: LanguageConfig;
|
|
14
|
-
python: LanguageConfig;
|
|
15
|
-
scala: LanguageConfig;
|
|
16
|
-
starlark: LanguageConfig;
|
|
17
|
-
};
|
|
18
|
-
type LanguagePreset = keyof typeof languagePresets;
|
|
19
|
-
export declare function createLang(key: LanguagePreset): Language;
|
|
20
|
-
export declare function createLang(config: LanguageConfig): Language;
|
|
1
|
+
import type { Cursor, Node } from '../parser/types';
|
|
2
|
+
import type { QueryBuilder } from '../query/types';
|
|
3
|
+
import type { LanguageConfig } from './types';
|
|
4
|
+
export * from './types';
|
|
5
|
+
export declare class Language {
|
|
6
|
+
readonly config: LanguageConfig;
|
|
7
|
+
private lexer;
|
|
8
|
+
constructor(config: LanguageConfig);
|
|
9
|
+
parse(input: string): Cursor;
|
|
10
|
+
query<Ctx, T extends Node>(input: string | Cursor, q: QueryBuilder<Ctx, T>, context: Ctx): Ctx | null;
|
|
11
|
+
}
|
|
12
|
+
declare const languagePresets: {
|
|
13
|
+
groovy: LanguageConfig;
|
|
14
|
+
python: LanguageConfig;
|
|
15
|
+
scala: LanguageConfig;
|
|
16
|
+
starlark: LanguageConfig;
|
|
17
|
+
};
|
|
18
|
+
type LanguagePreset = keyof typeof languagePresets;
|
|
19
|
+
export declare function createLang(key: LanguagePreset): Language;
|
|
20
|
+
export declare function createLang(config: LanguageConfig): Language;
|
|
21
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/lang/index.js
CHANGED
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
import { createLexer } from '../lexer';
|
|
2
|
-
import { createCursor, createTree } from '../parser';
|
|
3
|
-
import { buildRoot } from '../query';
|
|
4
|
-
import { clone } from '../util/clone';
|
|
5
|
-
import { lang as groovy } from './groovy';
|
|
6
|
-
import { lang as python } from './python';
|
|
7
|
-
import { lang as scala } from './scala';
|
|
8
|
-
import { lang as starlark } from './starlark';
|
|
9
|
-
export * from './types';
|
|
10
|
-
export class Language {
|
|
11
|
-
constructor(config) {
|
|
12
|
-
this.config = config;
|
|
13
|
-
this.lexer = createLexer(config.lexer);
|
|
14
|
-
}
|
|
15
|
-
parse(input) {
|
|
16
|
-
this.lexer.reset(input);
|
|
17
|
-
const root = createTree(this.lexer, this.config.parser);
|
|
18
|
-
return createCursor(root);
|
|
19
|
-
}
|
|
20
|
-
query(input, q, context) {
|
|
21
|
-
const matcher = buildRoot(q);
|
|
22
|
-
const cursor = typeof input === 'string' ? this.parse(input) : input;
|
|
23
|
-
const checkpoint = matcher.match({ cursor, context });
|
|
24
|
-
const result = checkpoint === null || checkpoint === void 0 ? void 0 : checkpoint.context;
|
|
25
|
-
return result ? clone(result) : null;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const languagePresets = {
|
|
29
|
-
groovy,
|
|
30
|
-
python,
|
|
31
|
-
scala,
|
|
32
|
-
starlark,
|
|
33
|
-
};
|
|
34
|
-
export function createLang(arg1) {
|
|
35
|
-
const config = typeof arg1 === 'string' ? languagePresets[arg1] : arg1;
|
|
36
|
-
return new Language(config);
|
|
37
|
-
}
|
|
1
|
+
import { createLexer } from '../lexer';
|
|
2
|
+
import { createCursor, createTree } from '../parser';
|
|
3
|
+
import { buildRoot } from '../query';
|
|
4
|
+
import { clone } from '../util/clone';
|
|
5
|
+
import { lang as groovy } from './groovy';
|
|
6
|
+
import { lang as python } from './python';
|
|
7
|
+
import { lang as scala } from './scala';
|
|
8
|
+
import { lang as starlark } from './starlark';
|
|
9
|
+
export * from './types';
|
|
10
|
+
export class Language {
|
|
11
|
+
constructor(config) {
|
|
12
|
+
this.config = config;
|
|
13
|
+
this.lexer = createLexer(config.lexer);
|
|
14
|
+
}
|
|
15
|
+
parse(input) {
|
|
16
|
+
this.lexer.reset(input);
|
|
17
|
+
const root = createTree(this.lexer, this.config.parser);
|
|
18
|
+
return createCursor(root);
|
|
19
|
+
}
|
|
20
|
+
query(input, q, context) {
|
|
21
|
+
const matcher = buildRoot(q);
|
|
22
|
+
const cursor = typeof input === 'string' ? this.parse(input) : input;
|
|
23
|
+
const checkpoint = matcher.match({ cursor, context });
|
|
24
|
+
const result = checkpoint === null || checkpoint === void 0 ? void 0 : checkpoint.context;
|
|
25
|
+
return result ? clone(result) : null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
const languagePresets = {
|
|
29
|
+
groovy,
|
|
30
|
+
python,
|
|
31
|
+
scala,
|
|
32
|
+
starlark,
|
|
33
|
+
};
|
|
34
|
+
export function createLang(arg1) {
|
|
35
|
+
const config = typeof arg1 === 'string' ? languagePresets[arg1] : arg1;
|
|
36
|
+
return new Language(config);
|
|
37
|
+
}
|
|
38
38
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { LexerConfig } from '../lexer/types';
|
|
2
|
-
import type { ParserConfig } from '../parser/types';
|
|
3
|
-
import type { LanguageConfig } from './types';
|
|
4
|
-
export declare const lexer: LexerConfig;
|
|
5
|
-
export declare const parser: ParserConfig;
|
|
6
|
-
export declare const lang: LanguageConfig;
|
|
1
|
+
import type { LexerConfig } from '../lexer/types';
|
|
2
|
+
import type { ParserConfig } from '../parser/types';
|
|
3
|
+
import type { LanguageConfig } from './types';
|
|
4
|
+
export declare const lexer: LexerConfig;
|
|
5
|
+
export declare const parser: ParserConfig;
|
|
6
|
+
export declare const lang: LanguageConfig;
|
|
7
7
|
//# sourceMappingURL=python.d.ts.map
|