Blame view
node_modules/eslint/lib/rules/no-restricted-syntax.js
1.12 KB
c39994410
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
/** * @fileoverview Rule to flag use of certain node types * @author Burak Yigit Kaya * @copyright 2015 Burak Yigit Kaya. All rights reserved. */ "use strict"; //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ var nodeTypes = require("espree").Syntax; module.exports = function(context) { /** * Generates a warning from the provided node, saying that node type is not allowed. * @param {ASTNode} node The node to warn on * @returns {void} */ function warn(node) { context.report(node, "Using \"{{type}}\" is not allowed.", node); } return context.options.reduce(function(result, nodeType) { result[nodeType] = warn; return result; }, {}); }; module.exports.schema = { "type": "array", "items": [ { "enum": [0, 1, 2] }, { "enum": Object.keys(nodeTypes).map(function(k) { return nodeTypes[k]; }) } ], "uniqueItems": true, "minItems": 1 }; |