.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / espree / lib / visitor-keys.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/espree/lib/visitor-keys.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/espree/lib/visitor-keys.js
new file mode 100644 (file)
index 0000000..4216864
--- /dev/null
@@ -0,0 +1,123 @@
+/**
+ * @fileoverview The visitor keys for the node types Espree supports
+ * @author Nicholas C. Zakas
+ *
+ * This file contains code from estraverse-fb.
+ *
+ * The MIT license. Copyright (c) 2014 Ingvar Stepanyan
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+"use strict";
+
+//------------------------------------------------------------------------------
+// Requirements
+//------------------------------------------------------------------------------
+
+// None!
+
+//------------------------------------------------------------------------------
+// Public
+//------------------------------------------------------------------------------
+
+module.exports = {
+
+    // ECMAScript
+    AssignmentExpression: ["left", "right"],
+    AssignmentPattern: ["left", "right"],
+    ArrayExpression: ["elements"],
+    ArrayPattern: ["elements"],
+    ArrowFunctionExpression: ["params", "body"],
+    BlockStatement: ["body"],
+    BinaryExpression: ["left", "right"],
+    BreakStatement: ["label"],
+    CallExpression: ["callee", "arguments"],
+    CatchClause: ["param", "body"],
+    ClassBody: ["body"],
+    ClassDeclaration: ["id", "superClass", "body"],
+    ClassExpression: ["id", "superClass", "body"],
+    ConditionalExpression: ["test", "consequent", "alternate"],
+    ContinueStatement: ["label"],
+    DebuggerStatement: [],
+    DirectiveStatement: [],
+    DoWhileStatement: ["body", "test"],
+    EmptyStatement: [],
+    ExportAllDeclaration: ["source"],
+    ExportDefaultDeclaration: ["declaration"],
+    ExportNamedDeclaration: ["declaration", "specifiers", "source"],
+    ExportSpecifier: ["exported", "local"],
+    ExpressionStatement: ["expression"],
+    ForStatement: ["init", "test", "update", "body"],
+    ForInStatement: ["left", "right", "body"],
+    ForOfStatement: ["left", "right", "body"],
+    FunctionDeclaration: ["id", "params", "body"],
+    FunctionExpression: ["id", "params", "body"],
+    Identifier: [],
+    IfStatement: ["test", "consequent", "alternate"],
+    ImportDeclaration: ["specifiers", "source"],
+    ImportDefaultSpecifier: ["local"],
+    ImportNamespaceSpecifier: ["local"],
+    ImportSpecifier: ["imported", "local"],
+    Literal: [],
+    LabeledStatement: ["label", "body"],
+    LogicalExpression: ["left", "right"],
+    MemberExpression: ["object", "property"],
+    MetaProperty: ["meta", "property"],
+    MethodDefinition: ["key", "value"],
+    ModuleSpecifier: [],
+    NewExpression: ["callee", "arguments"],
+    ObjectExpression: ["properties"],
+    ObjectPattern: ["properties"],
+    Program: ["body"],
+    Property: ["key", "value"],
+    RestElement: ["argument"],
+    ReturnStatement: ["argument"],
+    SequenceExpression: ["expressions"],
+    SpreadElement: ["argument"],
+    Super: [],
+    SwitchStatement: ["discriminant", "cases"],
+    SwitchCase: ["test", "consequent"],
+    TaggedTemplateExpression: ["tag", "quasi"],
+    TemplateElement: [],
+    TemplateLiteral: ["quasis", "expressions"],
+    ThisExpression: [],
+    ThrowStatement: ["argument"],
+    TryStatement: ["block", "handler", "finalizer"],
+    UnaryExpression: ["argument"],
+    UpdateExpression: ["argument"],
+    VariableDeclaration: ["declarations"],
+    VariableDeclarator: ["id", "init"],
+    WhileStatement: ["test", "body"],
+    WithStatement: ["object", "body"],
+    YieldExpression: ["argument"],
+
+    // JSX
+    JSXIdentifier: [],
+    JSXNamespacedName: ["namespace", "name"],
+    JSXMemberExpression: ["object", "property"],
+    JSXEmptyExpression: [],
+    JSXExpressionContainer: ["expression"],
+    JSXElement: ["openingElement", "closingElement", "children"],
+    JSXClosingElement: ["name"],
+    JSXOpeningElement: ["name", "attributes"],
+    JSXAttribute: ["name", "value"],
+    JSXText: null,
+    JSXSpreadAttribute: ["argument"]
+};