@ibyar/expressions 0.5.2 → 0.5.62
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/LICENSE +1 -1
- package/README.md +4 -3
- package/api/abstract.d.ts +5 -6
- package/api/abstract.js +8 -3
- package/api/abstract.js.map +1 -1
- package/api/class/class.d.ts +227 -0
- package/api/class/class.js +662 -0
- package/api/class/class.js.map +1 -0
- package/api/class/decorator.d.ts +20 -0
- package/api/class/decorator.js +48 -0
- package/api/class/decorator.js.map +1 -0
- package/api/computing/call.d.ts +3 -1
- package/api/computing/call.js +16 -4
- package/api/computing/call.js.map +1 -1
- package/api/computing/debugger.d.ts +15 -0
- package/api/computing/debugger.js +35 -0
- package/api/computing/debugger.js.map +1 -0
- package/api/computing/new.d.ts +2 -1
- package/api/computing/new.js +4 -0
- package/api/computing/new.js.map +1 -1
- package/api/computing/rest.d.ts +6 -6
- package/api/computing/rest.js +5 -2
- package/api/computing/rest.js.map +1 -1
- package/api/computing/return.d.ts +6 -1
- package/api/computing/return.js +8 -0
- package/api/computing/return.js.map +1 -1
- package/api/computing/spread.d.ts +2 -1
- package/api/computing/spread.js +5 -2
- package/api/computing/spread.js.map +1 -1
- package/api/computing/throw.d.ts +6 -1
- package/api/computing/throw.js +7 -0
- package/api/computing/throw.js.map +1 -1
- package/api/computing/yield.d.ts +2 -1
- package/api/computing/yield.js +3 -0
- package/api/computing/yield.js.map +1 -1
- package/api/definition/array.d.ts +12 -12
- package/api/definition/array.js +31 -25
- package/api/definition/array.js.map +1 -1
- package/api/definition/bind.d.ts +8 -2
- package/api/definition/bind.js +7 -1
- package/api/definition/bind.js.map +1 -1
- package/api/definition/function.d.ts +40 -51
- package/api/definition/function.js +292 -309
- package/api/definition/function.js.map +1 -1
- package/api/definition/member.d.ts +2 -2
- package/api/definition/member.js +1 -1
- package/api/definition/member.js.map +1 -1
- package/api/definition/object.d.ts +15 -12
- package/api/definition/object.js +43 -13
- package/api/definition/object.js.map +1 -1
- package/api/definition/statement.d.ts +2 -2
- package/api/definition/statement.js +7 -3
- package/api/definition/statement.js.map +1 -1
- package/api/definition/values.d.ts +44 -50
- package/api/definition/values.js +87 -149
- package/api/definition/values.js.map +1 -1
- package/api/deserialize/deserialize.d.ts +7 -1
- package/api/deserialize/deserialize.js +9 -1
- package/api/deserialize/deserialize.js.map +1 -1
- package/api/deserialize/type-store.d.ts +2 -2
- package/api/deserialize/type-store.js.map +1 -1
- package/api/expression.d.ts +159 -18
- package/api/expression.js.map +1 -1
- package/api/index.d.ts +2 -0
- package/api/index.js +2 -0
- package/api/index.js.map +1 -1
- package/api/module/common.d.ts +29 -0
- package/api/module/common.js +71 -0
- package/api/module/common.js.map +1 -0
- package/api/module/export.d.ts +129 -25
- package/api/module/export.js +333 -58
- package/api/module/export.js.map +1 -1
- package/api/module/import.d.ts +114 -25
- package/api/module/import.js +279 -68
- package/api/module/import.js.map +1 -1
- package/api/operators/assignment.d.ts +2 -2
- package/api/operators/assignment.js +1 -1
- package/api/operators/assignment.js.map +1 -1
- package/api/operators/await.d.ts +2 -2
- package/api/operators/await.js +1 -1
- package/api/operators/await.js.map +1 -1
- package/api/operators/binary.d.ts +2 -2
- package/api/operators/binary.js +1 -1
- package/api/operators/binary.js.map +1 -1
- package/api/operators/chaining.d.ts +2 -2
- package/api/operators/chaining.js +1 -1
- package/api/operators/chaining.js.map +1 -1
- package/api/operators/comma.d.ts +2 -2
- package/api/operators/comma.js +2 -2
- package/api/operators/comma.js.map +1 -1
- package/api/operators/grouping.d.ts +9 -2
- package/api/operators/grouping.js +8 -1
- package/api/operators/grouping.js.map +1 -1
- package/api/operators/logical.d.ts +2 -2
- package/api/operators/logical.js +1 -1
- package/api/operators/logical.js.map +1 -1
- package/api/operators/pipeline.d.ts +14 -2
- package/api/operators/pipeline.js +13 -1
- package/api/operators/pipeline.js.map +1 -1
- package/api/operators/ternary.d.ts +2 -2
- package/api/operators/ternary.js +1 -1
- package/api/operators/ternary.js.map +1 -1
- package/api/operators/unary.d.ts +3 -3
- package/api/operators/unary.js +7 -3
- package/api/operators/unary.js.map +1 -1
- package/api/operators/update.d.ts +2 -2
- package/api/operators/update.js +1 -1
- package/api/operators/update.js.map +1 -1
- package/api/{app/program.d.ts → program.d.ts} +8 -9
- package/api/program.js +45 -0
- package/api/program.js.map +1 -0
- package/api/statement/control/block.d.ts +8 -5
- package/api/statement/control/block.js +26 -23
- package/api/statement/control/block.js.map +1 -1
- package/api/statement/control/empty.d.ts +8 -1
- package/api/statement/control/empty.js +7 -0
- package/api/statement/control/empty.js.map +1 -1
- package/api/statement/control/if.d.ts +7 -2
- package/api/statement/control/if.js +6 -1
- package/api/statement/control/if.js.map +1 -1
- package/api/statement/control/switch.d.ts +10 -5
- package/api/statement/control/switch.js +22 -9
- package/api/statement/control/switch.js.map +1 -1
- package/api/statement/control/terminate.d.ts +46 -13
- package/api/statement/control/terminate.js +89 -20
- package/api/statement/control/terminate.js.map +1 -1
- package/api/statement/declarations/declares.d.ts +17 -16
- package/api/statement/declarations/declares.js +24 -19
- package/api/statement/declarations/declares.js.map +1 -1
- package/api/statement/iterations/for.d.ts +10 -5
- package/api/statement/iterations/for.js +42 -23
- package/api/statement/iterations/for.js.map +1 -1
- package/api/statement/iterations/while.d.ts +9 -3
- package/api/statement/iterations/while.js +27 -13
- package/api/statement/iterations/while.js.map +1 -1
- package/api/utils.d.ts +5 -0
- package/api/utils.js +4 -0
- package/api/utils.js.map +1 -0
- package/package.json +5 -5
- package/scope/finalizer.d.ts +4 -0
- package/scope/finalizer.js +11 -0
- package/scope/finalizer.js.map +1 -0
- package/scope/proxy.d.ts +5 -3
- package/scope/proxy.js +26 -26
- package/scope/proxy.js.map +1 -1
- package/scope/scope.d.ts +108 -51
- package/scope/scope.js +72 -134
- package/scope/scope.js.map +1 -1
- package/scope/stack.d.ts +117 -26
- package/scope/stack.js +154 -102
- package/scope/stack.js.map +1 -1
- package/v8/enums.d.ts +204 -0
- package/v8/enums.js +406 -0
- package/v8/enums.js.map +1 -0
- package/v8/index.d.ts +2 -1
- package/v8/index.js +2 -1
- package/v8/index.js.map +1 -1
- package/v8/inline.d.ts +213 -0
- package/v8/inline.js +2375 -0
- package/v8/inline.js.map +1 -0
- package/v8/nodes.d.ts +8 -7
- package/v8/nodes.js +39 -64
- package/v8/nodes.js.map +1 -1
- package/v8/parser.d.ts +49 -151
- package/v8/parser.js +839 -1607
- package/v8/parser.js.map +1 -1
- package/v8/stream.d.ts +39 -3
- package/v8/stream.js +685 -171
- package/v8/stream.js.map +1 -1
- package/v8/token.d.ts +244 -9
- package/v8/token.js +315 -47
- package/v8/token.js.map +1 -1
- package/visit/visitor.d.ts +3 -0
- package/visit/visitor.js +4 -7
- package/visit/visitor.js.map +1 -1
- package/api/app/class.d.ts +0 -117
- package/api/app/class.js +0 -292
- package/api/app/class.js.map +0 -1
- package/api/app/program.js +0 -39
- package/api/app/program.js.map +0 -1
- package/api/module/module.d.ts +0 -26
- package/api/module/module.js +0 -63
- package/api/module/module.js.map +0 -1
- package/v8/app.d.ts +0 -0
- package/v8/app.js +0 -2
- package/v8/app.js.map +0 -1
package/v8/token.d.ts
CHANGED
|
@@ -1,74 +1,292 @@
|
|
|
1
1
|
import type { ExpressionNode } from '../api/expression.js';
|
|
2
|
+
import { LanguageMode } from './enums.js';
|
|
2
3
|
export declare class Token {
|
|
3
4
|
private name;
|
|
4
5
|
private precedence;
|
|
6
|
+
/**
|
|
7
|
+
* ___ ? ___ : ___
|
|
8
|
+
*/
|
|
5
9
|
static readonly CONDITIONAL: Token;
|
|
10
|
+
/**
|
|
11
|
+
* ___ ?? ___
|
|
12
|
+
*/
|
|
6
13
|
static readonly NULLISH: Token;
|
|
14
|
+
/**
|
|
15
|
+
* ___ |> ___ : ___ : ?
|
|
16
|
+
* ___ |> ___ ( ___, ___ , ?)
|
|
17
|
+
*/
|
|
7
18
|
static readonly PIPELINE: Token;
|
|
19
|
+
/**
|
|
20
|
+
* ___ || ___
|
|
21
|
+
*/
|
|
8
22
|
static readonly OR: Token;
|
|
23
|
+
/**
|
|
24
|
+
* ___ && ___
|
|
25
|
+
*/
|
|
9
26
|
static readonly AND: Token;
|
|
27
|
+
/**
|
|
28
|
+
* ___ | ___
|
|
29
|
+
*/
|
|
10
30
|
static readonly BIT_OR: Token;
|
|
31
|
+
/**
|
|
32
|
+
* ___ ^ ___
|
|
33
|
+
*/
|
|
11
34
|
static readonly BIT_XOR: Token;
|
|
35
|
+
/**
|
|
36
|
+
* ___ | ___
|
|
37
|
+
*/
|
|
12
38
|
static readonly BIT_AND: Token;
|
|
39
|
+
/**
|
|
40
|
+
* ___ << ___
|
|
41
|
+
*/
|
|
13
42
|
static readonly SHL: Token;
|
|
43
|
+
/**
|
|
44
|
+
* ___ >> ___
|
|
45
|
+
*/
|
|
14
46
|
static readonly SAR: Token;
|
|
47
|
+
/**
|
|
48
|
+
* ___ >>> ___
|
|
49
|
+
*/
|
|
15
50
|
static readonly SHR: Token;
|
|
51
|
+
/**
|
|
52
|
+
* ___ * ___
|
|
53
|
+
*/
|
|
16
54
|
static readonly MUL: Token;
|
|
55
|
+
/**
|
|
56
|
+
* ___ / ___
|
|
57
|
+
*/
|
|
17
58
|
static readonly DIV: Token;
|
|
59
|
+
/**
|
|
60
|
+
* ___ % ___
|
|
61
|
+
*/
|
|
18
62
|
static readonly MOD: Token;
|
|
63
|
+
/**
|
|
64
|
+
* ___ %% ___
|
|
65
|
+
*/
|
|
19
66
|
static readonly MODULO: Token;
|
|
67
|
+
/**
|
|
68
|
+
* ___ > ___
|
|
69
|
+
*/
|
|
20
70
|
static readonly LARGER: Token;
|
|
71
|
+
/**
|
|
72
|
+
* ___ > ___
|
|
73
|
+
*/
|
|
21
74
|
static readonly SMALLER: Token;
|
|
75
|
+
/**
|
|
76
|
+
* ___ ** ___
|
|
77
|
+
*/
|
|
22
78
|
static readonly EXP: Token;
|
|
79
|
+
/**
|
|
80
|
+
* ___ + ___
|
|
81
|
+
*/
|
|
23
82
|
static readonly ADD: Token;
|
|
83
|
+
/**
|
|
84
|
+
* ___ - ___
|
|
85
|
+
*/
|
|
24
86
|
static readonly SUB: Token;
|
|
87
|
+
/**
|
|
88
|
+
* ! ___
|
|
89
|
+
*/
|
|
25
90
|
static readonly NOT: Token;
|
|
91
|
+
/**
|
|
92
|
+
* ~ ___
|
|
93
|
+
*/
|
|
26
94
|
static readonly BIT_NOT: Token;
|
|
95
|
+
/**
|
|
96
|
+
* ___ < ___
|
|
97
|
+
*/
|
|
27
98
|
static readonly LT: Token;
|
|
99
|
+
/**
|
|
100
|
+
* ___ > ___
|
|
101
|
+
*/
|
|
28
102
|
static readonly GT: Token;
|
|
103
|
+
/**
|
|
104
|
+
* ___++
|
|
105
|
+
*
|
|
106
|
+
* ++___
|
|
107
|
+
*/
|
|
29
108
|
static readonly INC: Token;
|
|
109
|
+
/**
|
|
110
|
+
* ___--
|
|
111
|
+
*
|
|
112
|
+
* --___
|
|
113
|
+
*/
|
|
30
114
|
static readonly DEC: Token;
|
|
115
|
+
/**
|
|
116
|
+
* ___ == ___
|
|
117
|
+
*/
|
|
31
118
|
static readonly EQ: Token;
|
|
119
|
+
/**
|
|
120
|
+
* ___ === ___
|
|
121
|
+
*/
|
|
32
122
|
static readonly EQ_STRICT: Token;
|
|
123
|
+
/**
|
|
124
|
+
* ___ != ___
|
|
125
|
+
*/
|
|
33
126
|
static readonly NE: Token;
|
|
127
|
+
/**
|
|
128
|
+
* ___ !== ___
|
|
129
|
+
*/
|
|
34
130
|
static readonly NE_STRICT: Token;
|
|
131
|
+
/**
|
|
132
|
+
* ___ <= ___
|
|
133
|
+
*/
|
|
35
134
|
static readonly LTE: Token;
|
|
135
|
+
/**
|
|
136
|
+
* ___ >= ___
|
|
137
|
+
*/
|
|
36
138
|
static readonly GTE: Token;
|
|
139
|
+
/**
|
|
140
|
+
* ___ <=> ___
|
|
141
|
+
*/
|
|
37
142
|
static readonly SPACESHIP: Token;
|
|
143
|
+
/**
|
|
144
|
+
* ___ = ___
|
|
145
|
+
*/
|
|
38
146
|
static readonly ASSIGN: Token;
|
|
147
|
+
/**
|
|
148
|
+
* ___ += ___
|
|
149
|
+
*/
|
|
39
150
|
static readonly ADD_ASSIGN: Token;
|
|
151
|
+
/**
|
|
152
|
+
* ___ -= ___
|
|
153
|
+
*/
|
|
40
154
|
static readonly SUB_ASSIGN: Token;
|
|
155
|
+
/**
|
|
156
|
+
* ___ *= ___
|
|
157
|
+
*/
|
|
41
158
|
static readonly MUL_ASSIGN: Token;
|
|
159
|
+
/**
|
|
160
|
+
* ___ /= ___
|
|
161
|
+
*/
|
|
42
162
|
static readonly DIV_ASSIGN: Token;
|
|
163
|
+
/**
|
|
164
|
+
* ___ %= ___
|
|
165
|
+
*/
|
|
43
166
|
static readonly MOD_ASSIGN: Token;
|
|
167
|
+
/**
|
|
168
|
+
* ___ %% ___
|
|
169
|
+
*/
|
|
44
170
|
static readonly MODULO_ASSIGN: Token;
|
|
171
|
+
/**
|
|
172
|
+
* ___ > ___
|
|
173
|
+
*/
|
|
45
174
|
static readonly LARGER_ASSIGN: Token;
|
|
175
|
+
/**
|
|
176
|
+
* ___ > ___
|
|
177
|
+
*/
|
|
46
178
|
static readonly SMALLER_ASSIGN: Token;
|
|
179
|
+
/**
|
|
180
|
+
* ___ **= ___
|
|
181
|
+
*/
|
|
47
182
|
static readonly EXP_ASSIGN: Token;
|
|
183
|
+
/**
|
|
184
|
+
* ___ ^= ___
|
|
185
|
+
*/
|
|
48
186
|
static readonly BIT_XOR_ASSIGN: Token;
|
|
187
|
+
/**
|
|
188
|
+
* ___ &= ___
|
|
189
|
+
*/
|
|
49
190
|
static readonly BIT_AND_ASSIGN: Token;
|
|
191
|
+
/**
|
|
192
|
+
* ___ |= ___
|
|
193
|
+
*/
|
|
50
194
|
static readonly BIT_OR_ASSIGN: Token;
|
|
195
|
+
/**
|
|
196
|
+
* ___ &&= ___
|
|
197
|
+
*/
|
|
51
198
|
static readonly AND_ASSIGN: Token;
|
|
199
|
+
/**
|
|
200
|
+
* ___ ||= ___
|
|
201
|
+
*/
|
|
52
202
|
static readonly OR_ASSIGN: Token;
|
|
203
|
+
/**
|
|
204
|
+
* ___ ??= ___
|
|
205
|
+
*/
|
|
53
206
|
static readonly NULLISH_ASSIGN: Token;
|
|
207
|
+
/**
|
|
208
|
+
* ___ <<= ___
|
|
209
|
+
*/
|
|
54
210
|
static readonly SHL_ASSIGN: Token;
|
|
211
|
+
/**
|
|
212
|
+
* ___ >>= ___
|
|
213
|
+
*/
|
|
55
214
|
static readonly SAR_ASSIGN: Token;
|
|
215
|
+
/**
|
|
216
|
+
* ___ >>>= ___
|
|
217
|
+
*/
|
|
56
218
|
static readonly SHR_ASSIGN: Token;
|
|
219
|
+
/**
|
|
220
|
+
* ___ . ___
|
|
221
|
+
*/
|
|
57
222
|
static readonly PERIOD: Token;
|
|
223
|
+
/**
|
|
224
|
+
* ___ ?. ___
|
|
225
|
+
*
|
|
226
|
+
* ___?.[___]
|
|
227
|
+
*
|
|
228
|
+
* ___?.()
|
|
229
|
+
*/
|
|
58
230
|
static readonly QUESTION_PERIOD: Token;
|
|
231
|
+
/**
|
|
232
|
+
* ___ :: ___
|
|
233
|
+
*/
|
|
59
234
|
static readonly BIND: Token;
|
|
235
|
+
/**
|
|
236
|
+
* ___ ?:: ___
|
|
237
|
+
*
|
|
238
|
+
* ___?::[___]
|
|
239
|
+
*
|
|
240
|
+
* ___?::()
|
|
241
|
+
*/
|
|
60
242
|
static readonly QUESTION_BIND: Token;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
static readonly
|
|
65
|
-
|
|
66
|
-
|
|
243
|
+
/**
|
|
244
|
+
* (
|
|
245
|
+
*/
|
|
246
|
+
static readonly LPAREN: Token;
|
|
247
|
+
/**
|
|
248
|
+
* )
|
|
249
|
+
*/
|
|
250
|
+
static readonly RPAREN: Token;
|
|
251
|
+
/**
|
|
252
|
+
* [
|
|
253
|
+
*/
|
|
254
|
+
static readonly LBRACK: Token;
|
|
255
|
+
/**
|
|
256
|
+
* ]
|
|
257
|
+
*/
|
|
258
|
+
static readonly RBRACK: Token;
|
|
259
|
+
/**
|
|
260
|
+
* {
|
|
261
|
+
*/
|
|
262
|
+
static readonly LBRACE: Token;
|
|
263
|
+
/**
|
|
264
|
+
* }
|
|
265
|
+
*/
|
|
266
|
+
static readonly RBRACE: Token;
|
|
267
|
+
/**
|
|
268
|
+
* :
|
|
269
|
+
*/
|
|
67
270
|
static readonly COLON: Token;
|
|
271
|
+
/**
|
|
272
|
+
* ...
|
|
273
|
+
*/
|
|
68
274
|
static readonly ELLIPSIS: Token;
|
|
275
|
+
/**
|
|
276
|
+
* ;
|
|
277
|
+
*/
|
|
69
278
|
static readonly SEMICOLON: Token;
|
|
279
|
+
/**
|
|
280
|
+
* end of source
|
|
281
|
+
*/
|
|
70
282
|
static readonly EOS: Token;
|
|
283
|
+
/**
|
|
284
|
+
* =>
|
|
285
|
+
*/
|
|
71
286
|
static readonly ARROW: Token;
|
|
287
|
+
/**
|
|
288
|
+
* ___, ___, ___
|
|
289
|
+
*/
|
|
72
290
|
static readonly COMMA: Token;
|
|
73
291
|
static readonly ASYNC: Token;
|
|
74
292
|
static readonly AWAIT: Token;
|
|
@@ -124,7 +342,20 @@ export declare class Token {
|
|
|
124
342
|
static readonly BIGINT: Token;
|
|
125
343
|
static readonly STRING: Token;
|
|
126
344
|
static readonly IDENTIFIER: Token;
|
|
127
|
-
|
|
345
|
+
/**
|
|
346
|
+
* TEMPLATE_SPAN ::
|
|
347
|
+
*
|
|
348
|
+
* ` LiteralChars* ${
|
|
349
|
+
* | } LiteralChars* ${
|
|
350
|
+
*/
|
|
351
|
+
static readonly TEMPLATE_SPAN: Token;
|
|
352
|
+
/**
|
|
353
|
+
* TEMPLATE_TAIL ::
|
|
354
|
+
*
|
|
355
|
+
* ` LiteralChars* `
|
|
356
|
+
* | } LiteralChar* `
|
|
357
|
+
*/
|
|
358
|
+
static readonly TEMPLATE_TAIL: Token;
|
|
128
359
|
static readonly ILLEGAL: Token;
|
|
129
360
|
static readonly ESCAPED_KEYWORD: Token;
|
|
130
361
|
static readonly WHITESPACE: Token;
|
|
@@ -144,9 +375,11 @@ export declare class Token {
|
|
|
144
375
|
static isMember(token: Token): boolean;
|
|
145
376
|
static isTemplate(token: Token): boolean;
|
|
146
377
|
static isNextLetKeyword(token: Token): boolean;
|
|
378
|
+
static isInRangeIdentifierAndAsync(token: Token): boolean;
|
|
147
379
|
static isPropertyOrCall(token: Token): boolean;
|
|
148
380
|
static isPropertyName(token: Token): boolean;
|
|
149
381
|
private static isInRange;
|
|
382
|
+
static isProperty(token: number | Token): boolean;
|
|
150
383
|
static isBinary(token: number | Token): boolean;
|
|
151
384
|
static isCompare(token: Token): boolean;
|
|
152
385
|
static isOrderedRelationalCompare(token: Token): boolean;
|
|
@@ -159,10 +392,12 @@ export declare class Token {
|
|
|
159
392
|
static isShift(token: Token): boolean;
|
|
160
393
|
static isStrictReservedWord(token: Token): boolean;
|
|
161
394
|
static isPipelineOperator(token: Token): boolean;
|
|
162
|
-
static isValidIdentifier(token: Token): boolean;
|
|
395
|
+
static isValidIdentifier(token: Token, mode: LanguageMode, isGenerator: boolean, disallowAwait: boolean): boolean;
|
|
396
|
+
static precedence(token: Token, acceptIN: boolean): number;
|
|
163
397
|
constructor(name: string, precedence: number);
|
|
164
398
|
getName(): string;
|
|
165
399
|
getPrecedence(): number;
|
|
400
|
+
equal(token: Token): boolean;
|
|
166
401
|
}
|
|
167
402
|
export declare class TokenExpression {
|
|
168
403
|
token: Token;
|
|
@@ -171,6 +406,6 @@ export declare class TokenExpression {
|
|
|
171
406
|
getValue<T extends ExpressionNode>(): T;
|
|
172
407
|
isType(type: Token): boolean;
|
|
173
408
|
isNotType(type: Token): boolean;
|
|
174
|
-
test(func: (token: Token) => boolean): boolean;
|
|
409
|
+
test(func: (token: Token, value?: ExpressionNode) => boolean): boolean;
|
|
175
410
|
toString(): string;
|
|
176
411
|
}
|