summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorRich Trott <rtrott@gmail.com>2017-07-04 20:44:40 -0700
committerRich Trott <rtrott@gmail.com>2017-07-06 20:50:44 -0700
commita965067f7475d1816f1a0a7f94ff1dcacf183e0a (patch)
tree8e126c209ac342ac4a92057b467f14ef36ba2403 /tools
parent84f9261efd02c7e4ddb087cadf528b2aaed8809c (diff)
downloadandroid-node-v8-a965067f7475d1816f1a0a7f94ff1dcacf183e0a.tar.gz
android-node-v8-a965067f7475d1816f1a0a7f94ff1dcacf183e0a.tar.bz2
android-node-v8-a965067f7475d1816f1a0a7f94ff1dcacf183e0a.zip
tools: remove align-multiline-assignment lint rule
In preparation for stricter indentation linting, remove the align-multiline-assignment custom rule, as it may conflict with the ESLint stricter indentation linting. PR-URL: https://github.com/nodejs/node/pull/14079 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Michaƫl Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/eslint-rules/align-multiline-assignment.js67
1 files changed, 0 insertions, 67 deletions
diff --git a/tools/eslint-rules/align-multiline-assignment.js b/tools/eslint-rules/align-multiline-assignment.js
deleted file mode 100644
index 8e2f5ed1ee..0000000000
--- a/tools/eslint-rules/align-multiline-assignment.js
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * @fileoverview Align multiline variable assignments
- * @author Rich Trott
- */
-'use strict';
-
-//------------------------------------------------------------------------------
-// Rule Definition
-//------------------------------------------------------------------------------
-function getBinaryExpressionStarts(binaryExpression, starts) {
- function getStartsFromOneSide(side, starts) {
- starts.push(side.loc.start);
- if (side.type === 'BinaryExpression') {
- starts = getBinaryExpressionStarts(side, starts);
- }
- return starts;
- }
-
- starts = getStartsFromOneSide(binaryExpression.left, starts);
- starts = getStartsFromOneSide(binaryExpression.right, starts);
- return starts;
-}
-
-function checkExpressionAlignment(expression) {
- if (!expression)
- return;
-
- var msg = '';
-
- switch (expression.type) {
- case 'BinaryExpression':
- var starts = getBinaryExpressionStarts(expression, []);
- var startLine = starts[0].line;
- const startColumn = starts[0].column;
- starts.forEach((loc) => {
- if (loc.line > startLine) {
- startLine = loc.line;
- if (loc.column !== startColumn) {
- msg = 'Misaligned multiline assignment';
- }
- }
- });
- break;
- }
- return msg;
-}
-
-function testAssignment(context, node) {
- const msg = checkExpressionAlignment(node.right);
- if (msg)
- context.report(node, msg);
-}
-
-function testDeclaration(context, node) {
- node.declarations.forEach((declaration) => {
- const msg = checkExpressionAlignment(declaration.init);
- if (msg)
- context.report(node, msg);
- });
-}
-
-module.exports = function(context) {
- return {
- 'AssignmentExpression': (node) => testAssignment(context, node),
- 'VariableDeclaration': (node) => testDeclaration(context, node)
- };
-};