69 lines
3.4 KiB
JavaScript
69 lines
3.4 KiB
JavaScript
|
module.exports = {
|
||
|
ArrayExpression: ['type', 'elements'],
|
||
|
ArrayPattern: ['type', 'elements'],
|
||
|
ArrowFunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'expression', 'async'],
|
||
|
AssignmentExpression: ['type', 'operator', 'left', 'right'],
|
||
|
AssignmentPattern: ['type', 'left', 'right'],
|
||
|
AwaitExpression: ['type', 'argument'],
|
||
|
BinaryExpression: ['type', 'operator', 'left', 'right'],
|
||
|
BlockStatement: ['type', 'body'],
|
||
|
BreakStatement: ['type', 'label'],
|
||
|
CallExpression: ['type', 'callee', 'arguments'],
|
||
|
CatchClause: ['type', 'param', 'guard', 'body'],
|
||
|
ClassBody: ['type', 'body'],
|
||
|
ClassDeclaration: ['type', 'id', 'superClass', 'body'],
|
||
|
ClassExpression: ['type', 'id', 'superClass', 'body'],
|
||
|
ConditionalExpression: ['type', 'test', 'consequent', 'alternate'],
|
||
|
ContinueStatement: ['type', 'label'],
|
||
|
DebuggerStatement: ['type'],
|
||
|
DoWhileStatement: ['type', 'body', 'test'],
|
||
|
EmptyStatement: ['type'],
|
||
|
ExportAllDeclaration: ['type', 'source'],
|
||
|
ExportDefaultDeclaration: ['type', 'declaration'],
|
||
|
ExportNamedDeclaration: ['type', 'declaration', 'specifiers', 'source'],
|
||
|
ExportSpecifier: ['type', 'exported', 'local'],
|
||
|
ExpressionStatement: ['type', 'expression'],
|
||
|
ForInStatement: ['type', 'left', 'right', 'body'],
|
||
|
ForOfStatement: ['type', 'left', 'right', 'body'],
|
||
|
ForStatement: ['type', 'init', 'test', 'update', 'body'],
|
||
|
FunctionDeclaration: ['type', 'id', 'params', 'body', 'generator', 'async'],
|
||
|
FunctionExpression: ['type', 'id', 'params', 'body', 'generator', 'async'],
|
||
|
Identifier: ['type', 'name'],
|
||
|
IfStatement: ['type', 'test', 'consequent', 'alternate'],
|
||
|
ImportDeclaration: ['type', 'specifiers', 'source'],
|
||
|
ImportDefaultSpecifier: ['type', 'local'],
|
||
|
ImportNamespaceSpecifier: ['type', 'local'],
|
||
|
ImportSpecifier: ['type', 'imported', 'local'],
|
||
|
LabeledStatement: ['type', 'label', 'body'],
|
||
|
Literal: ['type', 'value', 'regex'],
|
||
|
LogicalExpression: ['type', 'operator', 'left', 'right'],
|
||
|
MemberExpression: ['type', 'object', 'property', 'computed'],
|
||
|
MetaProperty: ['type', 'meta', 'property'],
|
||
|
MethodDefinition: ['type', 'key', 'value', 'kind', 'computed', 'static'],
|
||
|
NewExpression: ['type', 'callee', 'arguments'],
|
||
|
ObjectExpression: ['type', 'properties'],
|
||
|
ObjectPattern: ['type', 'properties'],
|
||
|
Program: ['type', 'body', 'sourceType'],
|
||
|
Property: ['type', 'key', 'value', 'kind', 'method', 'shorthand', 'computed'],
|
||
|
RestElement: ['type', 'argument'],
|
||
|
ReturnStatement: ['type', 'argument'],
|
||
|
SequenceExpression: ['type', 'expressions'],
|
||
|
SpreadElement: ['type', 'argument'],
|
||
|
Super: ['type'],
|
||
|
SwitchCase: ['type', 'test', 'consequent'],
|
||
|
SwitchStatement: ['type', 'discriminant', 'cases', 'lexical'],
|
||
|
TaggedTemplateExpression: ['type', 'tag', 'quasi'],
|
||
|
TemplateElement: ['type', 'tail', 'value'],
|
||
|
TemplateLiteral: ['type', 'quasis', 'expressions'],
|
||
|
ThisExpression: ['type'],
|
||
|
ThrowStatement: ['type', 'argument'],
|
||
|
TryStatement: ['type', 'block', 'handler', 'finalizer'],
|
||
|
UnaryExpression: ['type', 'operator', 'prefix', 'argument'],
|
||
|
UpdateExpression: ['type', 'operator', 'argument', 'prefix'],
|
||
|
VariableDeclaration: ['type', 'declarations', 'kind'],
|
||
|
VariableDeclarator: ['type', 'id', 'init'],
|
||
|
WhileStatement: ['type', 'test', 'body'],
|
||
|
WithStatement: ['type', 'object', 'body'],
|
||
|
YieldExpression: ['type', 'argument', 'delegate']
|
||
|
};
|