1/** 2 * @fileoverview Rule to check use of chained assignment expressions 3 * @author Stewart Rand 4 */ 5 6"use strict"; 7 8 9//------------------------------------------------------------------------------ 10// Rule Definition 11//------------------------------------------------------------------------------ 12 13module.exports = { 14 meta: { 15 type: "suggestion", 16 17 docs: { 18 description: "disallow use of chained assignment expressions", 19 category: "Stylistic Issues", 20 recommended: false, 21 url: "https://eslint.org/docs/rules/no-multi-assign" 22 }, 23 24 schema: [], 25 26 messages: { 27 unexpectedChain: "Unexpected chained assignment." 28 } 29 }, 30 31 create(context) { 32 33 //-------------------------------------------------------------------------- 34 // Public 35 //-------------------------------------------------------------------------- 36 37 return { 38 AssignmentExpression(node) { 39 if (["AssignmentExpression", "VariableDeclarator"].indexOf(node.parent.type) !== -1) { 40 context.report({ 41 node, 42 messageId: "unexpectedChain" 43 }); 44 } 45 } 46 }; 47 48 } 49}; 50