hermes-estree 0.5.0 → 0.8.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/LICENSE +1 -1
- package/dist/generated/HermesESTreeSelectorTypes.js.flow +129 -218
- package/dist/generated/predicates.js +1314 -0
- package/dist/generated/predicates.js.flow +1164 -0
- package/dist/index.js +9 -1
- package/dist/index.js.flow +2 -3
- package/dist/predicates.js +127 -0
- package/dist/predicates.js.flow +114 -0
- package/dist/selectors.js +1 -1
- package/dist/selectors.js.flow +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.flow +283 -127
- package/package.json +1 -1
|
@@ -0,0 +1,1164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow strict-local
|
|
8
|
+
* @format
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
// lint directives to let us do some basic validation of generated files
|
|
12
|
+
/* eslint no-undef: 'error', no-unused-vars: ['error', {vars: "local"}], no-redeclare: 'error' */
|
|
13
|
+
/* global $NonMaybeType, $Partial, $ReadOnly, $ReadOnlyArray */
|
|
14
|
+
|
|
15
|
+
'use strict';
|
|
16
|
+
|
|
17
|
+
import type {ESNode, Token} from 'hermes-estree';
|
|
18
|
+
|
|
19
|
+
export function isAnyTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
20
|
+
return node.type === 'AnyTypeAnnotation';
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function isArrayExpression(node: ESNode | Token): boolean %checks {
|
|
24
|
+
return node.type === 'ArrayExpression';
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function isArrayPattern(node: ESNode | Token): boolean %checks {
|
|
28
|
+
return node.type === 'ArrayPattern';
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function isArrayTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
32
|
+
return node.type === 'ArrayTypeAnnotation';
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function isArrowFunctionExpression(
|
|
36
|
+
node: ESNode | Token,
|
|
37
|
+
): boolean %checks {
|
|
38
|
+
return node.type === 'ArrowFunctionExpression';
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function isAssignmentExpression(node: ESNode | Token): boolean %checks {
|
|
42
|
+
return node.type === 'AssignmentExpression';
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export function isAssignmentPattern(node: ESNode | Token): boolean %checks {
|
|
46
|
+
return node.type === 'AssignmentPattern';
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export function isAwaitExpression(node: ESNode | Token): boolean %checks {
|
|
50
|
+
return node.type === 'AwaitExpression';
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export function isBigIntLiteralTypeAnnotation(
|
|
54
|
+
node: ESNode | Token,
|
|
55
|
+
): boolean %checks {
|
|
56
|
+
return node.type === 'BigIntLiteralTypeAnnotation';
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function isBinaryExpression(node: ESNode | Token): boolean %checks {
|
|
60
|
+
return node.type === 'BinaryExpression';
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export function isBlockStatement(node: ESNode | Token): boolean %checks {
|
|
64
|
+
return node.type === 'BlockStatement';
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function isBooleanLiteralTypeAnnotation(
|
|
68
|
+
node: ESNode | Token,
|
|
69
|
+
): boolean %checks {
|
|
70
|
+
return node.type === 'BooleanLiteralTypeAnnotation';
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export function isBooleanTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
74
|
+
return node.type === 'BooleanTypeAnnotation';
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function isBreakStatement(node: ESNode | Token): boolean %checks {
|
|
78
|
+
return node.type === 'BreakStatement';
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export function isCallExpression(node: ESNode | Token): boolean %checks {
|
|
82
|
+
return node.type === 'CallExpression';
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export function isCatchClause(node: ESNode | Token): boolean %checks {
|
|
86
|
+
return node.type === 'CatchClause';
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export function isChainExpression(node: ESNode | Token): boolean %checks {
|
|
90
|
+
return node.type === 'ChainExpression';
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export function isClassBody(node: ESNode | Token): boolean %checks {
|
|
94
|
+
return node.type === 'ClassBody';
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export function isClassDeclaration(node: ESNode | Token): boolean %checks {
|
|
98
|
+
return node.type === 'ClassDeclaration';
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export function isClassExpression(node: ESNode | Token): boolean %checks {
|
|
102
|
+
return node.type === 'ClassExpression';
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export function isClassImplements(node: ESNode | Token): boolean %checks {
|
|
106
|
+
return node.type === 'ClassImplements';
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export function isConditionalExpression(node: ESNode | Token): boolean %checks {
|
|
110
|
+
return node.type === 'ConditionalExpression';
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export function isContinueStatement(node: ESNode | Token): boolean %checks {
|
|
114
|
+
return node.type === 'ContinueStatement';
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export function isDebuggerStatement(node: ESNode | Token): boolean %checks {
|
|
118
|
+
return node.type === 'DebuggerStatement';
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export function isDeclareClass(node: ESNode | Token): boolean %checks {
|
|
122
|
+
return node.type === 'DeclareClass';
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export function isDeclaredPredicate(node: ESNode | Token): boolean %checks {
|
|
126
|
+
return node.type === 'DeclaredPredicate';
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export function isDeclareExportAllDeclaration(
|
|
130
|
+
node: ESNode | Token,
|
|
131
|
+
): boolean %checks {
|
|
132
|
+
return node.type === 'DeclareExportAllDeclaration';
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export function isDeclareExportDeclaration(
|
|
136
|
+
node: ESNode | Token,
|
|
137
|
+
): boolean %checks {
|
|
138
|
+
return node.type === 'DeclareExportDeclaration';
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export function isDeclareFunction(node: ESNode | Token): boolean %checks {
|
|
142
|
+
return node.type === 'DeclareFunction';
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export function isDeclareInterface(node: ESNode | Token): boolean %checks {
|
|
146
|
+
return node.type === 'DeclareInterface';
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
export function isDeclareModule(node: ESNode | Token): boolean %checks {
|
|
150
|
+
return node.type === 'DeclareModule';
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export function isDeclareModuleExports(node: ESNode | Token): boolean %checks {
|
|
154
|
+
return node.type === 'DeclareModuleExports';
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export function isDeclareOpaqueType(node: ESNode | Token): boolean %checks {
|
|
158
|
+
return node.type === 'DeclareOpaqueType';
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export function isDeclareTypeAlias(node: ESNode | Token): boolean %checks {
|
|
162
|
+
return node.type === 'DeclareTypeAlias';
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
export function isDeclareVariable(node: ESNode | Token): boolean %checks {
|
|
166
|
+
return node.type === 'DeclareVariable';
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export function isDoWhileStatement(node: ESNode | Token): boolean %checks {
|
|
170
|
+
return node.type === 'DoWhileStatement';
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
export function isEmptyStatement(node: ESNode | Token): boolean %checks {
|
|
174
|
+
return node.type === 'EmptyStatement';
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
export function isEmptyTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
178
|
+
return node.type === 'EmptyTypeAnnotation';
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export function isEnumBooleanBody(node: ESNode | Token): boolean %checks {
|
|
182
|
+
return node.type === 'EnumBooleanBody';
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
export function isEnumBooleanMember(node: ESNode | Token): boolean %checks {
|
|
186
|
+
return node.type === 'EnumBooleanMember';
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export function isEnumDeclaration(node: ESNode | Token): boolean %checks {
|
|
190
|
+
return node.type === 'EnumDeclaration';
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
export function isEnumDefaultedMember(node: ESNode | Token): boolean %checks {
|
|
194
|
+
return node.type === 'EnumDefaultedMember';
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export function isEnumNumberBody(node: ESNode | Token): boolean %checks {
|
|
198
|
+
return node.type === 'EnumNumberBody';
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
export function isEnumNumberMember(node: ESNode | Token): boolean %checks {
|
|
202
|
+
return node.type === 'EnumNumberMember';
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
export function isEnumStringBody(node: ESNode | Token): boolean %checks {
|
|
206
|
+
return node.type === 'EnumStringBody';
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
export function isEnumStringMember(node: ESNode | Token): boolean %checks {
|
|
210
|
+
return node.type === 'EnumStringMember';
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export function isEnumSymbolBody(node: ESNode | Token): boolean %checks {
|
|
214
|
+
return node.type === 'EnumSymbolBody';
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
export function isExistsTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
218
|
+
return node.type === 'ExistsTypeAnnotation';
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export function isExportAllDeclaration(node: ESNode | Token): boolean %checks {
|
|
222
|
+
return node.type === 'ExportAllDeclaration';
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
export function isExportDefaultDeclaration(
|
|
226
|
+
node: ESNode | Token,
|
|
227
|
+
): boolean %checks {
|
|
228
|
+
return node.type === 'ExportDefaultDeclaration';
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
export function isExportNamedDeclaration(
|
|
232
|
+
node: ESNode | Token,
|
|
233
|
+
): boolean %checks {
|
|
234
|
+
return node.type === 'ExportNamedDeclaration';
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
export function isExportSpecifier(node: ESNode | Token): boolean %checks {
|
|
238
|
+
return node.type === 'ExportSpecifier';
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
export function isExpressionStatement(node: ESNode | Token): boolean %checks {
|
|
242
|
+
return node.type === 'ExpressionStatement';
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
export function isForInStatement(node: ESNode | Token): boolean %checks {
|
|
246
|
+
return node.type === 'ForInStatement';
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
export function isForOfStatement(node: ESNode | Token): boolean %checks {
|
|
250
|
+
return node.type === 'ForOfStatement';
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
export function isForStatement(node: ESNode | Token): boolean %checks {
|
|
254
|
+
return node.type === 'ForStatement';
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
export function isFunctionDeclaration(node: ESNode | Token): boolean %checks {
|
|
258
|
+
return node.type === 'FunctionDeclaration';
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
export function isFunctionExpression(node: ESNode | Token): boolean %checks {
|
|
262
|
+
return node.type === 'FunctionExpression';
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
export function isFunctionTypeAnnotation(
|
|
266
|
+
node: ESNode | Token,
|
|
267
|
+
): boolean %checks {
|
|
268
|
+
return node.type === 'FunctionTypeAnnotation';
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
export function isFunctionTypeParam(node: ESNode | Token): boolean %checks {
|
|
272
|
+
return node.type === 'FunctionTypeParam';
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
export function isGenericTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
276
|
+
return node.type === 'GenericTypeAnnotation';
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
export function isIdentifier(node: ESNode | Token): boolean %checks {
|
|
280
|
+
return node.type === 'Identifier';
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
export function isIfStatement(node: ESNode | Token): boolean %checks {
|
|
284
|
+
return node.type === 'IfStatement';
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
export function isImportAttribute(node: ESNode | Token): boolean %checks {
|
|
288
|
+
return node.type === 'ImportAttribute';
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
export function isImportDeclaration(node: ESNode | Token): boolean %checks {
|
|
292
|
+
return node.type === 'ImportDeclaration';
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
export function isImportDefaultSpecifier(
|
|
296
|
+
node: ESNode | Token,
|
|
297
|
+
): boolean %checks {
|
|
298
|
+
return node.type === 'ImportDefaultSpecifier';
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
export function isImportExpression(node: ESNode | Token): boolean %checks {
|
|
302
|
+
return node.type === 'ImportExpression';
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
export function isImportNamespaceSpecifier(
|
|
306
|
+
node: ESNode | Token,
|
|
307
|
+
): boolean %checks {
|
|
308
|
+
return node.type === 'ImportNamespaceSpecifier';
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
export function isImportSpecifier(node: ESNode | Token): boolean %checks {
|
|
312
|
+
return node.type === 'ImportSpecifier';
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
export function isIndexedAccessType(node: ESNode | Token): boolean %checks {
|
|
316
|
+
return node.type === 'IndexedAccessType';
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
export function isInferredPredicate(node: ESNode | Token): boolean %checks {
|
|
320
|
+
return node.type === 'InferredPredicate';
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
export function isInterfaceDeclaration(node: ESNode | Token): boolean %checks {
|
|
324
|
+
return node.type === 'InterfaceDeclaration';
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
export function isInterfaceExtends(node: ESNode | Token): boolean %checks {
|
|
328
|
+
return node.type === 'InterfaceExtends';
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
export function isInterfaceTypeAnnotation(
|
|
332
|
+
node: ESNode | Token,
|
|
333
|
+
): boolean %checks {
|
|
334
|
+
return node.type === 'InterfaceTypeAnnotation';
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
export function isIntersectionTypeAnnotation(
|
|
338
|
+
node: ESNode | Token,
|
|
339
|
+
): boolean %checks {
|
|
340
|
+
return node.type === 'IntersectionTypeAnnotation';
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
export function isJSXAttribute(node: ESNode | Token): boolean %checks {
|
|
344
|
+
return node.type === 'JSXAttribute';
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
export function isJSXClosingElement(node: ESNode | Token): boolean %checks {
|
|
348
|
+
return node.type === 'JSXClosingElement';
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
export function isJSXClosingFragment(node: ESNode | Token): boolean %checks {
|
|
352
|
+
return node.type === 'JSXClosingFragment';
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
export function isJSXElement(node: ESNode | Token): boolean %checks {
|
|
356
|
+
return node.type === 'JSXElement';
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
export function isJSXEmptyExpression(node: ESNode | Token): boolean %checks {
|
|
360
|
+
return node.type === 'JSXEmptyExpression';
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
export function isJSXExpressionContainer(
|
|
364
|
+
node: ESNode | Token,
|
|
365
|
+
): boolean %checks {
|
|
366
|
+
return node.type === 'JSXExpressionContainer';
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export function isJSXFragment(node: ESNode | Token): boolean %checks {
|
|
370
|
+
return node.type === 'JSXFragment';
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
export function isJSXIdentifier(node: ESNode | Token): boolean %checks {
|
|
374
|
+
return node.type === 'JSXIdentifier';
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
export function isJSXMemberExpression(node: ESNode | Token): boolean %checks {
|
|
378
|
+
return node.type === 'JSXMemberExpression';
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
export function isJSXNamespacedName(node: ESNode | Token): boolean %checks {
|
|
382
|
+
return node.type === 'JSXNamespacedName';
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
export function isJSXOpeningElement(node: ESNode | Token): boolean %checks {
|
|
386
|
+
return node.type === 'JSXOpeningElement';
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
export function isJSXOpeningFragment(node: ESNode | Token): boolean %checks {
|
|
390
|
+
return node.type === 'JSXOpeningFragment';
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
export function isJSXSpreadAttribute(node: ESNode | Token): boolean %checks {
|
|
394
|
+
return node.type === 'JSXSpreadAttribute';
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
export function isJSXSpreadChild(node: ESNode | Token): boolean %checks {
|
|
398
|
+
return node.type === 'JSXSpreadChild';
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
export function isJSXText(node: ESNode | Token): boolean %checks {
|
|
402
|
+
return node.type === 'JSXText';
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
export function isLabeledStatement(node: ESNode | Token): boolean %checks {
|
|
406
|
+
return node.type === 'LabeledStatement';
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
export function isLogicalExpression(node: ESNode | Token): boolean %checks {
|
|
410
|
+
return node.type === 'LogicalExpression';
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
export function isMemberExpression(node: ESNode | Token): boolean %checks {
|
|
414
|
+
return node.type === 'MemberExpression';
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
export function isMetaProperty(node: ESNode | Token): boolean %checks {
|
|
418
|
+
return node.type === 'MetaProperty';
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
export function isMethodDefinition(node: ESNode | Token): boolean %checks {
|
|
422
|
+
return node.type === 'MethodDefinition';
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
export function isMixedTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
426
|
+
return node.type === 'MixedTypeAnnotation';
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
export function isNewExpression(node: ESNode | Token): boolean %checks {
|
|
430
|
+
return node.type === 'NewExpression';
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
export function isNullableTypeAnnotation(
|
|
434
|
+
node: ESNode | Token,
|
|
435
|
+
): boolean %checks {
|
|
436
|
+
return node.type === 'NullableTypeAnnotation';
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
export function isNullLiteralTypeAnnotation(
|
|
440
|
+
node: ESNode | Token,
|
|
441
|
+
): boolean %checks {
|
|
442
|
+
return node.type === 'NullLiteralTypeAnnotation';
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
export function isNumberLiteralTypeAnnotation(
|
|
446
|
+
node: ESNode | Token,
|
|
447
|
+
): boolean %checks {
|
|
448
|
+
return node.type === 'NumberLiteralTypeAnnotation';
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
export function isNumberTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
452
|
+
return node.type === 'NumberTypeAnnotation';
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
export function isObjectExpression(node: ESNode | Token): boolean %checks {
|
|
456
|
+
return node.type === 'ObjectExpression';
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
export function isObjectPattern(node: ESNode | Token): boolean %checks {
|
|
460
|
+
return node.type === 'ObjectPattern';
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
export function isObjectTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
464
|
+
return node.type === 'ObjectTypeAnnotation';
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
export function isObjectTypeCallProperty(
|
|
468
|
+
node: ESNode | Token,
|
|
469
|
+
): boolean %checks {
|
|
470
|
+
return node.type === 'ObjectTypeCallProperty';
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
export function isObjectTypeIndexer(node: ESNode | Token): boolean %checks {
|
|
474
|
+
return node.type === 'ObjectTypeIndexer';
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
export function isObjectTypeInternalSlot(
|
|
478
|
+
node: ESNode | Token,
|
|
479
|
+
): boolean %checks {
|
|
480
|
+
return node.type === 'ObjectTypeInternalSlot';
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
export function isObjectTypeProperty(node: ESNode | Token): boolean %checks {
|
|
484
|
+
return node.type === 'ObjectTypeProperty';
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
export function isObjectTypeSpreadProperty(
|
|
488
|
+
node: ESNode | Token,
|
|
489
|
+
): boolean %checks {
|
|
490
|
+
return node.type === 'ObjectTypeSpreadProperty';
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
export function isOpaqueType(node: ESNode | Token): boolean %checks {
|
|
494
|
+
return node.type === 'OpaqueType';
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
export function isOptionalIndexedAccessType(
|
|
498
|
+
node: ESNode | Token,
|
|
499
|
+
): boolean %checks {
|
|
500
|
+
return node.type === 'OptionalIndexedAccessType';
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
export function isPrivateIdentifier(node: ESNode | Token): boolean %checks {
|
|
504
|
+
return node.type === 'PrivateIdentifier';
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
export function isProperty(node: ESNode | Token): boolean %checks {
|
|
508
|
+
return node.type === 'Property';
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
export function isPropertyDefinition(node: ESNode | Token): boolean %checks {
|
|
512
|
+
return node.type === 'PropertyDefinition';
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
export function isQualifiedTypeIdentifier(
|
|
516
|
+
node: ESNode | Token,
|
|
517
|
+
): boolean %checks {
|
|
518
|
+
return node.type === 'QualifiedTypeIdentifier';
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
export function isRestElement(node: ESNode | Token): boolean %checks {
|
|
522
|
+
return node.type === 'RestElement';
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
export function isReturnStatement(node: ESNode | Token): boolean %checks {
|
|
526
|
+
return node.type === 'ReturnStatement';
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
export function isSequenceExpression(node: ESNode | Token): boolean %checks {
|
|
530
|
+
return node.type === 'SequenceExpression';
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
export function isSpreadElement(node: ESNode | Token): boolean %checks {
|
|
534
|
+
return node.type === 'SpreadElement';
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
export function isStringLiteralTypeAnnotation(
|
|
538
|
+
node: ESNode | Token,
|
|
539
|
+
): boolean %checks {
|
|
540
|
+
return node.type === 'StringLiteralTypeAnnotation';
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
export function isStringTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
544
|
+
return node.type === 'StringTypeAnnotation';
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
export function isSuper(node: ESNode | Token): boolean %checks {
|
|
548
|
+
return node.type === 'Super';
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
export function isSwitchCase(node: ESNode | Token): boolean %checks {
|
|
552
|
+
return node.type === 'SwitchCase';
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
export function isSwitchStatement(node: ESNode | Token): boolean %checks {
|
|
556
|
+
return node.type === 'SwitchStatement';
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
export function isSymbolTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
560
|
+
return node.type === 'SymbolTypeAnnotation';
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
export function isTaggedTemplateExpression(
|
|
564
|
+
node: ESNode | Token,
|
|
565
|
+
): boolean %checks {
|
|
566
|
+
return node.type === 'TaggedTemplateExpression';
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
export function isTemplateElement(node: ESNode | Token): boolean %checks {
|
|
570
|
+
return node.type === 'TemplateElement';
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
export function isTemplateLiteral(node: ESNode | Token): boolean %checks {
|
|
574
|
+
return node.type === 'TemplateLiteral';
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
export function isThisExpression(node: ESNode | Token): boolean %checks {
|
|
578
|
+
return node.type === 'ThisExpression';
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
export function isThisTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
582
|
+
return node.type === 'ThisTypeAnnotation';
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
export function isThrowStatement(node: ESNode | Token): boolean %checks {
|
|
586
|
+
return node.type === 'ThrowStatement';
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
export function isTryStatement(node: ESNode | Token): boolean %checks {
|
|
590
|
+
return node.type === 'TryStatement';
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
export function isTupleTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
594
|
+
return node.type === 'TupleTypeAnnotation';
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
export function isTypeAlias(node: ESNode | Token): boolean %checks {
|
|
598
|
+
return node.type === 'TypeAlias';
|
|
599
|
+
}
|
|
600
|
+
|
|
601
|
+
export function isTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
602
|
+
return node.type === 'TypeAnnotation';
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
export function isTypeCastExpression(node: ESNode | Token): boolean %checks {
|
|
606
|
+
return node.type === 'TypeCastExpression';
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
export function isTypeofTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
610
|
+
return node.type === 'TypeofTypeAnnotation';
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
export function isTypeParameter(node: ESNode | Token): boolean %checks {
|
|
614
|
+
return node.type === 'TypeParameter';
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
export function isTypeParameterDeclaration(
|
|
618
|
+
node: ESNode | Token,
|
|
619
|
+
): boolean %checks {
|
|
620
|
+
return node.type === 'TypeParameterDeclaration';
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
export function isTypeParameterInstantiation(
|
|
624
|
+
node: ESNode | Token,
|
|
625
|
+
): boolean %checks {
|
|
626
|
+
return node.type === 'TypeParameterInstantiation';
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
export function isUnaryExpression(node: ESNode | Token): boolean %checks {
|
|
630
|
+
return node.type === 'UnaryExpression';
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
export function isUnionTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
634
|
+
return node.type === 'UnionTypeAnnotation';
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
export function isUpdateExpression(node: ESNode | Token): boolean %checks {
|
|
638
|
+
return node.type === 'UpdateExpression';
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
export function isVariableDeclaration(node: ESNode | Token): boolean %checks {
|
|
642
|
+
return node.type === 'VariableDeclaration';
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
export function isVariableDeclarator(node: ESNode | Token): boolean %checks {
|
|
646
|
+
return node.type === 'VariableDeclarator';
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
export function isVariance(node: ESNode | Token): boolean %checks {
|
|
650
|
+
return node.type === 'Variance';
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
export function isVoidTypeAnnotation(node: ESNode | Token): boolean %checks {
|
|
654
|
+
return node.type === 'VoidTypeAnnotation';
|
|
655
|
+
}
|
|
656
|
+
|
|
657
|
+
export function isWhileStatement(node: ESNode | Token): boolean %checks {
|
|
658
|
+
return node.type === 'WhileStatement';
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
export function isWithStatement(node: ESNode | Token): boolean %checks {
|
|
662
|
+
return node.type === 'WithStatement';
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
export function isYieldExpression(node: ESNode | Token): boolean %checks {
|
|
666
|
+
return node.type === 'YieldExpression';
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
export function isLiteral(node: ESNode | Token): boolean %checks {
|
|
670
|
+
return node.type === 'Literal';
|
|
671
|
+
}
|
|
672
|
+
|
|
673
|
+
export function isLineComment(node: ESNode | Token): boolean %checks {
|
|
674
|
+
return node.type === 'Line';
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
export function isBlockComment(node: ESNode | Token): boolean %checks {
|
|
678
|
+
return node.type === 'Block';
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
export function isMinusToken(node: ESNode | Token): boolean %checks {
|
|
682
|
+
return node.type === 'Punctuator' && node.value === '-';
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
export function isPlusToken(node: ESNode | Token): boolean %checks {
|
|
686
|
+
return node.type === 'Punctuator' && node.value === '+';
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
export function isLogicalNotToken(node: ESNode | Token): boolean %checks {
|
|
690
|
+
return node.type === 'Punctuator' && node.value === '!';
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
export function isUnaryNegationToken(node: ESNode | Token): boolean %checks {
|
|
694
|
+
return node.type === 'Punctuator' && node.value === '~';
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
export function isTypeOfToken(node: ESNode | Token): boolean %checks {
|
|
698
|
+
return node.type === 'Keyword' && node.value === 'typeof';
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
export function isVoidToken(node: ESNode | Token): boolean %checks {
|
|
702
|
+
return node.type === 'Keyword' && node.value === 'void';
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
export function isDeleteToken(node: ESNode | Token): boolean %checks {
|
|
706
|
+
return node.type === 'Keyword' && node.value === 'delete';
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
export function isLooseEqualToken(node: ESNode | Token): boolean %checks {
|
|
710
|
+
return node.type === 'Punctuator' && node.value === '==';
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
export function isLooseNotEqualToken(node: ESNode | Token): boolean %checks {
|
|
714
|
+
return node.type === 'Punctuator' && node.value === '!=';
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
export function isStrictEqualToken(node: ESNode | Token): boolean %checks {
|
|
718
|
+
return node.type === 'Punctuator' && node.value === '===';
|
|
719
|
+
}
|
|
720
|
+
|
|
721
|
+
export function isStrictNotEqualToken(node: ESNode | Token): boolean %checks {
|
|
722
|
+
return node.type === 'Punctuator' && node.value === '!==';
|
|
723
|
+
}
|
|
724
|
+
|
|
725
|
+
export function isLessThanToken(node: ESNode | Token): boolean %checks {
|
|
726
|
+
return node.type === 'Punctuator' && node.value === '<';
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
export function isLessThanOrEqualToToken(
|
|
730
|
+
node: ESNode | Token,
|
|
731
|
+
): boolean %checks {
|
|
732
|
+
return node.type === 'Punctuator' && node.value === '<=';
|
|
733
|
+
}
|
|
734
|
+
|
|
735
|
+
export function isGreaterThanToken(node: ESNode | Token): boolean %checks {
|
|
736
|
+
return node.type === 'Punctuator' && node.value === '>';
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
export function isGreaterThanOrEqualToToken(
|
|
740
|
+
node: ESNode | Token,
|
|
741
|
+
): boolean %checks {
|
|
742
|
+
return node.type === 'Punctuator' && node.value === '>=';
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
export function isBitwiseLeftShiftToken(node: ESNode | Token): boolean %checks {
|
|
746
|
+
return node.type === 'Punctuator' && node.value === '<<';
|
|
747
|
+
}
|
|
748
|
+
|
|
749
|
+
export function isBitwiseRightShiftToken(
|
|
750
|
+
node: ESNode | Token,
|
|
751
|
+
): boolean %checks {
|
|
752
|
+
return node.type === 'Punctuator' && node.value === '>>';
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
export function isBitwiseUnsignedRightShiftToken(
|
|
756
|
+
node: ESNode | Token,
|
|
757
|
+
): boolean %checks {
|
|
758
|
+
return node.type === 'Punctuator' && node.value === '>>>';
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
export function isAsterixToken(node: ESNode | Token): boolean %checks {
|
|
762
|
+
return node.type === 'Punctuator' && node.value === '*';
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
export function isForwardSlashToken(node: ESNode | Token): boolean %checks {
|
|
766
|
+
return node.type === 'Punctuator' && node.value === '/';
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
export function isPercentToken(node: ESNode | Token): boolean %checks {
|
|
770
|
+
return node.type === 'Punctuator' && node.value === '%';
|
|
771
|
+
}
|
|
772
|
+
|
|
773
|
+
export function isExponentiationToken(node: ESNode | Token): boolean %checks {
|
|
774
|
+
return node.type === 'Punctuator' && node.value === '**';
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
export function isBitwiseORToken(node: ESNode | Token): boolean %checks {
|
|
778
|
+
return node.type === 'Punctuator' && node.value === '|';
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
export function isBitwiseXORToken(node: ESNode | Token): boolean %checks {
|
|
782
|
+
return node.type === 'Punctuator' && node.value === '^';
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
export function isBitwiseANDToken(node: ESNode | Token): boolean %checks {
|
|
786
|
+
return node.type === 'Punctuator' && node.value === '&';
|
|
787
|
+
}
|
|
788
|
+
|
|
789
|
+
export function isInToken(node: ESNode | Token): boolean %checks {
|
|
790
|
+
return node.type === 'Keyword' && node.value === 'in';
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
export function isInstanceOfToken(node: ESNode | Token): boolean %checks {
|
|
794
|
+
return node.type === 'Keyword' && node.value === 'instanceof';
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
export function isLogicalORToken(node: ESNode | Token): boolean %checks {
|
|
798
|
+
return node.type === 'Punctuator' && node.value === '||';
|
|
799
|
+
}
|
|
800
|
+
|
|
801
|
+
export function isLogicalANDToken(node: ESNode | Token): boolean %checks {
|
|
802
|
+
return node.type === 'Punctuator' && node.value === '&&';
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
export function isNullishCoalesceToken(node: ESNode | Token): boolean %checks {
|
|
806
|
+
return node.type === 'Punctuator' && node.value === '??';
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
export function isEqualToken(node: ESNode | Token): boolean %checks {
|
|
810
|
+
return node.type === 'Punctuator' && node.value === '=';
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
export function isPlusEqualToken(node: ESNode | Token): boolean %checks {
|
|
814
|
+
return node.type === 'Punctuator' && node.value === '+=';
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
export function isMinusEqualToken(node: ESNode | Token): boolean %checks {
|
|
818
|
+
return node.type === 'Punctuator' && node.value === '-=';
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
export function isMultiplyEqualToken(node: ESNode | Token): boolean %checks {
|
|
822
|
+
return node.type === 'Punctuator' && node.value === '*=';
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
export function isDivideEqualToken(node: ESNode | Token): boolean %checks {
|
|
826
|
+
return node.type === 'Punctuator' && node.value === '/=';
|
|
827
|
+
}
|
|
828
|
+
|
|
829
|
+
export function isRemainderEqualToken(node: ESNode | Token): boolean %checks {
|
|
830
|
+
return node.type === 'Punctuator' && node.value === '%=';
|
|
831
|
+
}
|
|
832
|
+
|
|
833
|
+
export function isExponentateEqualToken(node: ESNode | Token): boolean %checks {
|
|
834
|
+
return node.type === 'Punctuator' && node.value === '**=';
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
export function isBitwiseLeftShiftEqualToken(
|
|
838
|
+
node: ESNode | Token,
|
|
839
|
+
): boolean %checks {
|
|
840
|
+
return node.type === 'Punctuator' && node.value === '<<=';
|
|
841
|
+
}
|
|
842
|
+
|
|
843
|
+
export function isBitwiseRightShiftEqualToken(
|
|
844
|
+
node: ESNode | Token,
|
|
845
|
+
): boolean %checks {
|
|
846
|
+
return node.type === 'Punctuator' && node.value === '>>=';
|
|
847
|
+
}
|
|
848
|
+
|
|
849
|
+
export function isBitwiseUnsignedRightShiftEqualToken(
|
|
850
|
+
node: ESNode | Token,
|
|
851
|
+
): boolean %checks {
|
|
852
|
+
return node.type === 'Punctuator' && node.value === '>>>=';
|
|
853
|
+
}
|
|
854
|
+
|
|
855
|
+
export function isBitwiseOREqualToken(node: ESNode | Token): boolean %checks {
|
|
856
|
+
return node.type === 'Punctuator' && node.value === '|=';
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
export function isBitwiseXOREqualToken(node: ESNode | Token): boolean %checks {
|
|
860
|
+
return node.type === 'Punctuator' && node.value === '^=';
|
|
861
|
+
}
|
|
862
|
+
|
|
863
|
+
export function isBitwiseANDEqualToken(node: ESNode | Token): boolean %checks {
|
|
864
|
+
return node.type === 'Punctuator' && node.value === '&=';
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
export function isLogicalOREqualToken(node: ESNode | Token): boolean %checks {
|
|
868
|
+
return node.type === 'Punctuator' && node.value === '||=';
|
|
869
|
+
}
|
|
870
|
+
|
|
871
|
+
export function isLogicalANDEqualToken(node: ESNode | Token): boolean %checks {
|
|
872
|
+
return node.type === 'Punctuator' && node.value === '&&=';
|
|
873
|
+
}
|
|
874
|
+
|
|
875
|
+
export function isNullishCoalesceEqualToken(
|
|
876
|
+
node: ESNode | Token,
|
|
877
|
+
): boolean %checks {
|
|
878
|
+
return node.type === 'Punctuator' && node.value === '??=';
|
|
879
|
+
}
|
|
880
|
+
|
|
881
|
+
export function isIncrementToken(node: ESNode | Token): boolean %checks {
|
|
882
|
+
return node.type === 'Punctuator' && node.value === '++';
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
export function isDecrementToken(node: ESNode | Token): boolean %checks {
|
|
886
|
+
return node.type === 'Punctuator' && node.value === '--';
|
|
887
|
+
}
|
|
888
|
+
|
|
889
|
+
export function isUnionTypeToken(node: ESNode | Token): boolean %checks {
|
|
890
|
+
return node.type === 'Punctuator' && node.value === '|';
|
|
891
|
+
}
|
|
892
|
+
|
|
893
|
+
export function isIntersectionTypeToken(node: ESNode | Token): boolean %checks {
|
|
894
|
+
return node.type === 'Punctuator' && node.value === '&';
|
|
895
|
+
}
|
|
896
|
+
|
|
897
|
+
export function isBreakToken(node: ESNode | Token): boolean %checks {
|
|
898
|
+
return node.type === 'Keyword' && node.value === 'break';
|
|
899
|
+
}
|
|
900
|
+
|
|
901
|
+
export function isCaseToken(node: ESNode | Token): boolean %checks {
|
|
902
|
+
return node.type === 'Keyword' && node.value === 'case';
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
export function isCatchToken(node: ESNode | Token): boolean %checks {
|
|
906
|
+
return node.type === 'Keyword' && node.value === 'catch';
|
|
907
|
+
}
|
|
908
|
+
|
|
909
|
+
export function isClassToken(node: ESNode | Token): boolean %checks {
|
|
910
|
+
return node.type === 'Keyword' && node.value === 'class';
|
|
911
|
+
}
|
|
912
|
+
|
|
913
|
+
export function isConstToken(node: ESNode | Token): boolean %checks {
|
|
914
|
+
return node.type === 'Keyword' && node.value === 'const';
|
|
915
|
+
}
|
|
916
|
+
|
|
917
|
+
export function isContinueToken(node: ESNode | Token): boolean %checks {
|
|
918
|
+
return node.type === 'Keyword' && node.value === 'continue';
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
export function isDebuggerToken(node: ESNode | Token): boolean %checks {
|
|
922
|
+
return node.type === 'Keyword' && node.value === 'debugger';
|
|
923
|
+
}
|
|
924
|
+
|
|
925
|
+
export function isDefaultToken(node: ESNode | Token): boolean %checks {
|
|
926
|
+
return node.type === 'Keyword' && node.value === 'default';
|
|
927
|
+
}
|
|
928
|
+
|
|
929
|
+
export function isDoToken(node: ESNode | Token): boolean %checks {
|
|
930
|
+
return node.type === 'Keyword' && node.value === 'do';
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
export function isElseToken(node: ESNode | Token): boolean %checks {
|
|
934
|
+
return node.type === 'Keyword' && node.value === 'else';
|
|
935
|
+
}
|
|
936
|
+
|
|
937
|
+
export function isEnumToken(node: ESNode | Token): boolean %checks {
|
|
938
|
+
return node.type === 'Keyword' && node.value === 'enum';
|
|
939
|
+
}
|
|
940
|
+
|
|
941
|
+
export function isExportToken(node: ESNode | Token): boolean %checks {
|
|
942
|
+
return node.type === 'Keyword' && node.value === 'export';
|
|
943
|
+
}
|
|
944
|
+
|
|
945
|
+
export function isExtendsToken(node: ESNode | Token): boolean %checks {
|
|
946
|
+
return node.type === 'Keyword' && node.value === 'extends';
|
|
947
|
+
}
|
|
948
|
+
|
|
949
|
+
export function isFinallyToken(node: ESNode | Token): boolean %checks {
|
|
950
|
+
return node.type === 'Keyword' && node.value === 'finally';
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
export function isForToken(node: ESNode | Token): boolean %checks {
|
|
954
|
+
return node.type === 'Keyword' && node.value === 'for';
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
export function isFunctionToken(node: ESNode | Token): boolean %checks {
|
|
958
|
+
return node.type === 'Keyword' && node.value === 'function';
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
export function isIfToken(node: ESNode | Token): boolean %checks {
|
|
962
|
+
return node.type === 'Keyword' && node.value === 'if';
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
export function isImplementsToken(node: ESNode | Token): boolean %checks {
|
|
966
|
+
return node.type === 'Keyword' && node.value === 'implements';
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
export function isImportToken(node: ESNode | Token): boolean %checks {
|
|
970
|
+
return node.type === 'Keyword' && node.value === 'import';
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
export function isInterfaceToken(node: ESNode | Token): boolean %checks {
|
|
974
|
+
return node.type === 'Keyword' && node.value === 'interface';
|
|
975
|
+
}
|
|
976
|
+
|
|
977
|
+
export function isNewToken(node: ESNode | Token): boolean %checks {
|
|
978
|
+
return node.type === 'Keyword' && node.value === 'new';
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
export function isReturnToken(node: ESNode | Token): boolean %checks {
|
|
982
|
+
return node.type === 'Keyword' && node.value === 'return';
|
|
983
|
+
}
|
|
984
|
+
|
|
985
|
+
export function isStaticToken(node: ESNode | Token): boolean %checks {
|
|
986
|
+
return node.type === 'Keyword' && node.value === 'static';
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
export function isSuperToken(node: ESNode | Token): boolean %checks {
|
|
990
|
+
return node.type === 'Keyword' && node.value === 'super';
|
|
991
|
+
}
|
|
992
|
+
|
|
993
|
+
export function isSwitchToken(node: ESNode | Token): boolean %checks {
|
|
994
|
+
return node.type === 'Keyword' && node.value === 'switch';
|
|
995
|
+
}
|
|
996
|
+
|
|
997
|
+
export function isThisToken(node: ESNode | Token): boolean %checks {
|
|
998
|
+
return node.type === 'Keyword' && node.value === 'this';
|
|
999
|
+
}
|
|
1000
|
+
|
|
1001
|
+
export function isThrowToken(node: ESNode | Token): boolean %checks {
|
|
1002
|
+
return node.type === 'Keyword' && node.value === 'throw';
|
|
1003
|
+
}
|
|
1004
|
+
|
|
1005
|
+
export function isTryToken(node: ESNode | Token): boolean %checks {
|
|
1006
|
+
return node.type === 'Keyword' && node.value === 'try';
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
export function isVarToken(node: ESNode | Token): boolean %checks {
|
|
1010
|
+
return node.type === 'Keyword' && node.value === 'var';
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
export function isWhileToken(node: ESNode | Token): boolean %checks {
|
|
1014
|
+
return node.type === 'Keyword' && node.value === 'while';
|
|
1015
|
+
}
|
|
1016
|
+
|
|
1017
|
+
export function isWithToken(node: ESNode | Token): boolean %checks {
|
|
1018
|
+
return node.type === 'Keyword' && node.value === 'with';
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
export function isYieldToken(node: ESNode | Token): boolean %checks {
|
|
1022
|
+
return node.type === 'Keyword' && node.value === 'yield';
|
|
1023
|
+
}
|
|
1024
|
+
|
|
1025
|
+
export function isAsKeyword(node: ESNode | Token): boolean %checks {
|
|
1026
|
+
return (
|
|
1027
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1028
|
+
node.value === 'as'
|
|
1029
|
+
);
|
|
1030
|
+
}
|
|
1031
|
+
|
|
1032
|
+
export function isAsyncKeyword(node: ESNode | Token): boolean %checks {
|
|
1033
|
+
return (
|
|
1034
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1035
|
+
node.value === 'async'
|
|
1036
|
+
);
|
|
1037
|
+
}
|
|
1038
|
+
|
|
1039
|
+
export function isAwaitKeyword(node: ESNode | Token): boolean %checks {
|
|
1040
|
+
return (
|
|
1041
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1042
|
+
node.value === 'await'
|
|
1043
|
+
);
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
export function isDeclareKeyword(node: ESNode | Token): boolean %checks {
|
|
1047
|
+
return (
|
|
1048
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1049
|
+
node.value === 'declare'
|
|
1050
|
+
);
|
|
1051
|
+
}
|
|
1052
|
+
|
|
1053
|
+
export function isFromKeyword(node: ESNode | Token): boolean %checks {
|
|
1054
|
+
return (
|
|
1055
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1056
|
+
node.value === 'from'
|
|
1057
|
+
);
|
|
1058
|
+
}
|
|
1059
|
+
|
|
1060
|
+
export function isGetKeyword(node: ESNode | Token): boolean %checks {
|
|
1061
|
+
return (
|
|
1062
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1063
|
+
node.value === 'get'
|
|
1064
|
+
);
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
export function isLetKeyword(node: ESNode | Token): boolean %checks {
|
|
1068
|
+
return (
|
|
1069
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1070
|
+
node.value === 'let'
|
|
1071
|
+
);
|
|
1072
|
+
}
|
|
1073
|
+
|
|
1074
|
+
export function isModuleKeyword(node: ESNode | Token): boolean %checks {
|
|
1075
|
+
return (
|
|
1076
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1077
|
+
node.value === 'module'
|
|
1078
|
+
);
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
export function isOfKeyword(node: ESNode | Token): boolean %checks {
|
|
1082
|
+
return (
|
|
1083
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1084
|
+
node.value === 'of'
|
|
1085
|
+
);
|
|
1086
|
+
}
|
|
1087
|
+
|
|
1088
|
+
export function isSetKeyword(node: ESNode | Token): boolean %checks {
|
|
1089
|
+
return (
|
|
1090
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1091
|
+
node.value === 'set'
|
|
1092
|
+
);
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
export function isTypeKeyword(node: ESNode | Token): boolean %checks {
|
|
1096
|
+
return (
|
|
1097
|
+
(node.type === 'Identifier' || node.type === 'Keyword') &&
|
|
1098
|
+
node.value === 'type'
|
|
1099
|
+
);
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
export function isCommaToken(node: ESNode | Token): boolean %checks {
|
|
1103
|
+
return node.type === 'Punctuator' && node.value === ',';
|
|
1104
|
+
}
|
|
1105
|
+
|
|
1106
|
+
export function isColonToken(node: ESNode | Token): boolean %checks {
|
|
1107
|
+
return node.type === 'Punctuator' && node.value === ':';
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
export function isSemicolonToken(node: ESNode | Token): boolean %checks {
|
|
1111
|
+
return node.type === 'Punctuator' && node.value === ';';
|
|
1112
|
+
}
|
|
1113
|
+
|
|
1114
|
+
export function isDotToken(node: ESNode | Token): boolean %checks {
|
|
1115
|
+
return node.type === 'Punctuator' && node.value === '.';
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
export function isDotDotDotToken(node: ESNode | Token): boolean %checks {
|
|
1119
|
+
return node.type === 'Punctuator' && node.value === '...';
|
|
1120
|
+
}
|
|
1121
|
+
|
|
1122
|
+
export function isOptionalChainToken(node: ESNode | Token): boolean %checks {
|
|
1123
|
+
return node.type === 'Punctuator' && node.value === '?.';
|
|
1124
|
+
}
|
|
1125
|
+
|
|
1126
|
+
export function isQuestionMarkToken(node: ESNode | Token): boolean %checks {
|
|
1127
|
+
return node.type === 'Punctuator' && node.value === '?';
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1130
|
+
export function isOpeningParenthesisToken(
|
|
1131
|
+
node: ESNode | Token,
|
|
1132
|
+
): boolean %checks {
|
|
1133
|
+
return node.type === 'Punctuator' && node.value === '(';
|
|
1134
|
+
}
|
|
1135
|
+
|
|
1136
|
+
export function isClosingParenthesisToken(
|
|
1137
|
+
node: ESNode | Token,
|
|
1138
|
+
): boolean %checks {
|
|
1139
|
+
return node.type === 'Punctuator' && node.value === ')';
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
export function isOpeningCurlyBracketToken(
|
|
1143
|
+
node: ESNode | Token,
|
|
1144
|
+
): boolean %checks {
|
|
1145
|
+
return node.type === 'Punctuator' && node.value === '{';
|
|
1146
|
+
}
|
|
1147
|
+
|
|
1148
|
+
export function isClosingCurlyBracketToken(
|
|
1149
|
+
node: ESNode | Token,
|
|
1150
|
+
): boolean %checks {
|
|
1151
|
+
return node.type === 'Punctuator' && node.value === '}';
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1154
|
+
export function isOpeningAngleBracketToken(
|
|
1155
|
+
node: ESNode | Token,
|
|
1156
|
+
): boolean %checks {
|
|
1157
|
+
return node.type === 'Punctuator' && node.value === '<';
|
|
1158
|
+
}
|
|
1159
|
+
|
|
1160
|
+
export function isClosingAngleBracketToken(
|
|
1161
|
+
node: ESNode | Token,
|
|
1162
|
+
): boolean %checks {
|
|
1163
|
+
return node.type === 'Punctuator' && node.value === '>';
|
|
1164
|
+
}
|