@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,143 +1,143 @@
|
|
|
1
|
-
export interface OptionBase {
|
|
2
|
-
startsWith: string;
|
|
3
|
-
}
|
|
4
|
-
export interface BracketOption extends OptionBase {
|
|
5
|
-
endsWith: string;
|
|
6
|
-
}
|
|
7
|
-
export interface LineCommentOption extends OptionBase {
|
|
8
|
-
type: 'line-comment';
|
|
9
|
-
}
|
|
10
|
-
export interface MultilineCommentOption extends OptionBase {
|
|
11
|
-
type: 'multiline-comment';
|
|
12
|
-
endsWith: string;
|
|
13
|
-
}
|
|
14
|
-
export type CommentOption = LineCommentOption | MultilineCommentOption;
|
|
15
|
-
export type OperatorOption = string;
|
|
16
|
-
export interface VariableTemplateOption extends OptionBase {
|
|
17
|
-
type: 'var';
|
|
18
|
-
symbols?: RegExp;
|
|
19
|
-
operators?: string[];
|
|
20
|
-
}
|
|
21
|
-
export interface ExpressionTemplateOption extends OptionBase {
|
|
22
|
-
type: 'expr';
|
|
23
|
-
endsWith: string;
|
|
24
|
-
}
|
|
25
|
-
export type TemplateOption = VariableTemplateOption | ExpressionTemplateOption;
|
|
26
|
-
export interface StringOption extends OptionBase {
|
|
27
|
-
endsWith?: string;
|
|
28
|
-
escapeChar?: string;
|
|
29
|
-
templates?: TemplateOption[];
|
|
30
|
-
}
|
|
31
|
-
export interface SymbolOption {
|
|
32
|
-
match: RegExp;
|
|
33
|
-
}
|
|
34
|
-
export interface NumberOption {
|
|
35
|
-
match: RegExp;
|
|
36
|
-
}
|
|
37
|
-
export interface StringRule {
|
|
38
|
-
t: 'string';
|
|
39
|
-
type: string;
|
|
40
|
-
match: string;
|
|
41
|
-
push?: string;
|
|
42
|
-
pop?: number;
|
|
43
|
-
next?: string;
|
|
44
|
-
chunk: string | null;
|
|
45
|
-
}
|
|
46
|
-
export interface RegexRule {
|
|
47
|
-
t: 'regex';
|
|
48
|
-
type: string;
|
|
49
|
-
match: RegExp;
|
|
50
|
-
push?: string;
|
|
51
|
-
pop?: number;
|
|
52
|
-
next?: string;
|
|
53
|
-
lineBreaks?: true;
|
|
54
|
-
chunk: string | null;
|
|
55
|
-
}
|
|
56
|
-
export interface FallbackRule {
|
|
57
|
-
t: 'fallback';
|
|
58
|
-
type: string;
|
|
59
|
-
fallback: true;
|
|
60
|
-
chunk: null;
|
|
61
|
-
}
|
|
62
|
-
export type LexerRule = StringRule | RegexRule | FallbackRule;
|
|
63
|
-
export type TokenName = string;
|
|
64
|
-
export type StateDefinition = Record<TokenName, LexerRule>;
|
|
65
|
-
export interface StatesMap {
|
|
66
|
-
$: StateDefinition;
|
|
67
|
-
[k: string]: StateDefinition;
|
|
68
|
-
}
|
|
69
|
-
export interface OrderedStatesMap {
|
|
70
|
-
$: LexerRule[];
|
|
71
|
-
[k: string]: LexerRule[];
|
|
72
|
-
}
|
|
73
|
-
export interface Lexer {
|
|
74
|
-
reset(input?: string): Lexer;
|
|
75
|
-
[Symbol.iterator](): Iterator<Token, null>;
|
|
76
|
-
}
|
|
77
|
-
export interface TokenBase {
|
|
78
|
-
value: string;
|
|
79
|
-
offset: number;
|
|
80
|
-
line: number;
|
|
81
|
-
col: number;
|
|
82
|
-
lineBreaks: number;
|
|
83
|
-
}
|
|
84
|
-
export interface NewlineToken extends TokenBase {
|
|
85
|
-
type: 'newline';
|
|
86
|
-
}
|
|
87
|
-
export interface WhitespaceToken extends TokenBase {
|
|
88
|
-
type: 'whitespace';
|
|
89
|
-
}
|
|
90
|
-
export interface BracketLeftToken extends TokenBase {
|
|
91
|
-
type: 'bracket-left';
|
|
92
|
-
}
|
|
93
|
-
export interface BracketRightToken extends TokenBase {
|
|
94
|
-
type: 'bracket-right';
|
|
95
|
-
}
|
|
96
|
-
export interface CommentToken extends TokenBase {
|
|
97
|
-
type: 'comment';
|
|
98
|
-
}
|
|
99
|
-
export interface OperatorToken extends TokenBase {
|
|
100
|
-
type: 'operator';
|
|
101
|
-
}
|
|
102
|
-
export interface StringStartToken extends TokenBase {
|
|
103
|
-
type: 'string-start';
|
|
104
|
-
}
|
|
105
|
-
export interface StringValueToken extends TokenBase {
|
|
106
|
-
type: 'string-value';
|
|
107
|
-
}
|
|
108
|
-
export interface StringEndToken extends TokenBase {
|
|
109
|
-
type: 'string-end';
|
|
110
|
-
}
|
|
111
|
-
export interface TemplateStartToken extends TokenBase {
|
|
112
|
-
type: 'template-start';
|
|
113
|
-
}
|
|
114
|
-
export interface TemplateEndToken extends TokenBase {
|
|
115
|
-
type: 'template-end';
|
|
116
|
-
}
|
|
117
|
-
export interface SymbolToken extends TokenBase {
|
|
118
|
-
type: 'symbol';
|
|
119
|
-
}
|
|
120
|
-
export interface NumberToken extends TokenBase {
|
|
121
|
-
type: 'number';
|
|
122
|
-
}
|
|
123
|
-
export interface UnknownToken extends TokenBase {
|
|
124
|
-
type: '_';
|
|
125
|
-
}
|
|
126
|
-
export interface StartToken extends TokenBase {
|
|
127
|
-
type: '_start';
|
|
128
|
-
}
|
|
129
|
-
export interface EndToken extends TokenBase {
|
|
130
|
-
type: '_end';
|
|
131
|
-
}
|
|
132
|
-
export type Token = NewlineToken | WhitespaceToken | BracketLeftToken | BracketRightToken | CommentToken | OperatorToken | StringStartToken | StringValueToken | StringEndToken | TemplateStartToken | TemplateEndToken | SymbolToken | NumberToken | UnknownToken | StartToken | EndToken;
|
|
133
|
-
export type MinorToken = NewlineToken | WhitespaceToken | CommentToken;
|
|
134
|
-
export interface LexerConfig {
|
|
135
|
-
joinLines: string | null;
|
|
136
|
-
comments: CommentOption[];
|
|
137
|
-
symbols: RegExp;
|
|
138
|
-
numbers: RegExp;
|
|
139
|
-
operators: OperatorOption[];
|
|
140
|
-
brackets: BracketOption[];
|
|
141
|
-
strings: StringOption[];
|
|
142
|
-
}
|
|
1
|
+
export interface OptionBase {
|
|
2
|
+
startsWith: string;
|
|
3
|
+
}
|
|
4
|
+
export interface BracketOption extends OptionBase {
|
|
5
|
+
endsWith: string;
|
|
6
|
+
}
|
|
7
|
+
export interface LineCommentOption extends OptionBase {
|
|
8
|
+
type: 'line-comment';
|
|
9
|
+
}
|
|
10
|
+
export interface MultilineCommentOption extends OptionBase {
|
|
11
|
+
type: 'multiline-comment';
|
|
12
|
+
endsWith: string;
|
|
13
|
+
}
|
|
14
|
+
export type CommentOption = LineCommentOption | MultilineCommentOption;
|
|
15
|
+
export type OperatorOption = string;
|
|
16
|
+
export interface VariableTemplateOption extends OptionBase {
|
|
17
|
+
type: 'var';
|
|
18
|
+
symbols?: RegExp;
|
|
19
|
+
operators?: string[];
|
|
20
|
+
}
|
|
21
|
+
export interface ExpressionTemplateOption extends OptionBase {
|
|
22
|
+
type: 'expr';
|
|
23
|
+
endsWith: string;
|
|
24
|
+
}
|
|
25
|
+
export type TemplateOption = VariableTemplateOption | ExpressionTemplateOption;
|
|
26
|
+
export interface StringOption extends OptionBase {
|
|
27
|
+
endsWith?: string;
|
|
28
|
+
escapeChar?: string;
|
|
29
|
+
templates?: TemplateOption[];
|
|
30
|
+
}
|
|
31
|
+
export interface SymbolOption {
|
|
32
|
+
match: RegExp;
|
|
33
|
+
}
|
|
34
|
+
export interface NumberOption {
|
|
35
|
+
match: RegExp;
|
|
36
|
+
}
|
|
37
|
+
export interface StringRule {
|
|
38
|
+
t: 'string';
|
|
39
|
+
type: string;
|
|
40
|
+
match: string;
|
|
41
|
+
push?: string;
|
|
42
|
+
pop?: number;
|
|
43
|
+
next?: string;
|
|
44
|
+
chunk: string | null;
|
|
45
|
+
}
|
|
46
|
+
export interface RegexRule {
|
|
47
|
+
t: 'regex';
|
|
48
|
+
type: string;
|
|
49
|
+
match: RegExp;
|
|
50
|
+
push?: string;
|
|
51
|
+
pop?: number;
|
|
52
|
+
next?: string;
|
|
53
|
+
lineBreaks?: true;
|
|
54
|
+
chunk: string | null;
|
|
55
|
+
}
|
|
56
|
+
export interface FallbackRule {
|
|
57
|
+
t: 'fallback';
|
|
58
|
+
type: string;
|
|
59
|
+
fallback: true;
|
|
60
|
+
chunk: null;
|
|
61
|
+
}
|
|
62
|
+
export type LexerRule = StringRule | RegexRule | FallbackRule;
|
|
63
|
+
export type TokenName = string;
|
|
64
|
+
export type StateDefinition = Record<TokenName, LexerRule>;
|
|
65
|
+
export interface StatesMap {
|
|
66
|
+
$: StateDefinition;
|
|
67
|
+
[k: string]: StateDefinition;
|
|
68
|
+
}
|
|
69
|
+
export interface OrderedStatesMap {
|
|
70
|
+
$: LexerRule[];
|
|
71
|
+
[k: string]: LexerRule[];
|
|
72
|
+
}
|
|
73
|
+
export interface Lexer {
|
|
74
|
+
reset(input?: string): Lexer;
|
|
75
|
+
[Symbol.iterator](): Iterator<Token, null>;
|
|
76
|
+
}
|
|
77
|
+
export interface TokenBase {
|
|
78
|
+
value: string;
|
|
79
|
+
offset: number;
|
|
80
|
+
line: number;
|
|
81
|
+
col: number;
|
|
82
|
+
lineBreaks: number;
|
|
83
|
+
}
|
|
84
|
+
export interface NewlineToken extends TokenBase {
|
|
85
|
+
type: 'newline';
|
|
86
|
+
}
|
|
87
|
+
export interface WhitespaceToken extends TokenBase {
|
|
88
|
+
type: 'whitespace';
|
|
89
|
+
}
|
|
90
|
+
export interface BracketLeftToken extends TokenBase {
|
|
91
|
+
type: 'bracket-left';
|
|
92
|
+
}
|
|
93
|
+
export interface BracketRightToken extends TokenBase {
|
|
94
|
+
type: 'bracket-right';
|
|
95
|
+
}
|
|
96
|
+
export interface CommentToken extends TokenBase {
|
|
97
|
+
type: 'comment';
|
|
98
|
+
}
|
|
99
|
+
export interface OperatorToken extends TokenBase {
|
|
100
|
+
type: 'operator';
|
|
101
|
+
}
|
|
102
|
+
export interface StringStartToken extends TokenBase {
|
|
103
|
+
type: 'string-start';
|
|
104
|
+
}
|
|
105
|
+
export interface StringValueToken extends TokenBase {
|
|
106
|
+
type: 'string-value';
|
|
107
|
+
}
|
|
108
|
+
export interface StringEndToken extends TokenBase {
|
|
109
|
+
type: 'string-end';
|
|
110
|
+
}
|
|
111
|
+
export interface TemplateStartToken extends TokenBase {
|
|
112
|
+
type: 'template-start';
|
|
113
|
+
}
|
|
114
|
+
export interface TemplateEndToken extends TokenBase {
|
|
115
|
+
type: 'template-end';
|
|
116
|
+
}
|
|
117
|
+
export interface SymbolToken extends TokenBase {
|
|
118
|
+
type: 'symbol';
|
|
119
|
+
}
|
|
120
|
+
export interface NumberToken extends TokenBase {
|
|
121
|
+
type: 'number';
|
|
122
|
+
}
|
|
123
|
+
export interface UnknownToken extends TokenBase {
|
|
124
|
+
type: '_';
|
|
125
|
+
}
|
|
126
|
+
export interface StartToken extends TokenBase {
|
|
127
|
+
type: '_start';
|
|
128
|
+
}
|
|
129
|
+
export interface EndToken extends TokenBase {
|
|
130
|
+
type: '_end';
|
|
131
|
+
}
|
|
132
|
+
export type Token = NewlineToken | WhitespaceToken | BracketLeftToken | BracketRightToken | CommentToken | OperatorToken | StringStartToken | StringValueToken | StringEndToken | TemplateStartToken | TemplateEndToken | SymbolToken | NumberToken | UnknownToken | StartToken | EndToken;
|
|
133
|
+
export type MinorToken = NewlineToken | WhitespaceToken | CommentToken;
|
|
134
|
+
export interface LexerConfig {
|
|
135
|
+
joinLines: string | null;
|
|
136
|
+
comments: CommentOption[];
|
|
137
|
+
symbols: RegExp;
|
|
138
|
+
numbers: RegExp;
|
|
139
|
+
operators: OperatorOption[];
|
|
140
|
+
brackets: BracketOption[];
|
|
141
|
+
strings: StringOption[];
|
|
142
|
+
}
|
|
143
143
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/esm/lexer/types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { Cursor, Node } from './types';
|
|
2
|
-
export declare function createCursor(tree: Node): Cursor;
|
|
1
|
+
import type { Cursor, Node } from './types';
|
|
2
|
+
export declare function createCursor(tree: Node): Cursor;
|
|
3
3
|
//# sourceMappingURL=cursor.d.ts.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { zipper } from '@thi.ng/zipper';
|
|
2
|
-
import { isTree } from './tree';
|
|
3
|
-
export function createCursor(tree) {
|
|
4
|
-
return zipper({
|
|
5
|
-
branch: isTree,
|
|
6
|
-
children: (x) => x.children,
|
|
7
|
-
factory: (tree, children) => ({ ...tree, children }),
|
|
8
|
-
}, tree);
|
|
9
|
-
}
|
|
1
|
+
import { zipper } from '@thi.ng/zipper';
|
|
2
|
+
import { isTree } from './tree';
|
|
3
|
+
export function createCursor(tree) {
|
|
4
|
+
return zipper({
|
|
5
|
+
branch: isTree,
|
|
6
|
+
children: (x) => x.children,
|
|
7
|
+
factory: (tree, children) => ({ ...tree, children }),
|
|
8
|
+
}, tree);
|
|
9
|
+
}
|
|
10
10
|
//# sourceMappingURL=cursor.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './cursor';
|
|
2
|
-
export * from './tree';
|
|
3
|
-
export * from './types';
|
|
1
|
+
export * from './cursor';
|
|
2
|
+
export * from './tree';
|
|
3
|
+
export * from './types';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/parser/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './cursor';
|
|
2
|
-
export * from './tree';
|
|
3
|
-
export * from './types';
|
|
1
|
+
export * from './cursor';
|
|
2
|
+
export * from './tree';
|
|
3
|
+
export * from './types';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Lexer } from '../lexer/types';
|
|
2
|
-
import type { Node, ParserConfig, RootTree, Tree } from './types';
|
|
3
|
-
export declare function createTree(lexer: Lexer, config: ParserConfig): RootTree;
|
|
4
|
-
export declare function isTree(node: Node): node is Tree;
|
|
1
|
+
import type { Lexer } from '../lexer/types';
|
|
2
|
+
import type { Node, ParserConfig, RootTree, Tree } from './types';
|
|
3
|
+
export declare function createTree(lexer: Lexer, config: ParserConfig): RootTree;
|
|
4
|
+
export declare function isTree(node: Node): node is Tree;
|
|
5
5
|
//# sourceMappingURL=tree.d.ts.map
|