aboutsummaryrefslogtreecommitdiff
path: root/node_modules/espurify/lib/ast-properties.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/espurify/lib/ast-properties.js')
-rw-r--r--node_modules/espurify/lib/ast-properties.js68
1 files changed, 68 insertions, 0 deletions
diff --git a/node_modules/espurify/lib/ast-properties.js b/node_modules/espurify/lib/ast-properties.js
new file mode 100644
index 000000000..37267b973
--- /dev/null
+++ b/node_modules/espurify/lib/ast-properties.js
@@ -0,0 +1,68 @@
+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']
+};