diff options
author | cjihrig <cjihrig@gmail.com> | 2019-07-21 00:15:32 -0400 |
---|---|---|
committer | Michaƫl Zasso <targos@protonmail.com> | 2019-07-23 08:15:42 +0200 |
commit | ed43880d6ba1ab6e499ef027c1e9e11a2376ba50 (patch) | |
tree | bd9551f12adfd0dc9f333adf306fc92f2417b2ad /tools/node_modules/eslint/lib/rules/no-param-reassign.js | |
parent | 302865e8b9756812b45d9ff60403c2a231c01152 (diff) | |
download | android-node-v8-ed43880d6ba1ab6e499ef027c1e9e11a2376ba50.tar.gz android-node-v8-ed43880d6ba1ab6e499ef027c1e9e11a2376ba50.tar.bz2 android-node-v8-ed43880d6ba1ab6e499ef027c1e9e11a2376ba50.zip |
tools: update ESLint to 6.1.0
Update ESLint to 6.1.0
PR-URL: https://github.com/nodejs/node/pull/28793
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Diffstat (limited to 'tools/node_modules/eslint/lib/rules/no-param-reassign.js')
-rw-r--r-- | tools/node_modules/eslint/lib/rules/no-param-reassign.js | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/tools/node_modules/eslint/lib/rules/no-param-reassign.js b/tools/node_modules/eslint/lib/rules/no-param-reassign.js index 880ff93cb5..9b8c828d2c 100644 --- a/tools/node_modules/eslint/lib/rules/no-param-reassign.js +++ b/tools/node_modules/eslint/lib/rules/no-param-reassign.js @@ -67,7 +67,8 @@ module.exports = { let node = reference.identifier; let parent = node.parent; - while (parent && !stopNodePattern.test(parent.type)) { + while (parent && (!stopNodePattern.test(parent.type) || + parent.type === "ForInStatement" || parent.type === "ForOfStatement")) { switch (parent.type) { // e.g. foo.a = 0; @@ -85,6 +86,16 @@ module.exports = { } break; + // e.g. for (foo.a in b) {} + case "ForInStatement": + case "ForOfStatement": + if (parent.left === node) { + return true; + } + + // this is a stop node for parent.right and parent.body + return false; + // EXCLUDES: e.g. cache.get(foo.a).b = 0; case "CallExpression": if (parent.callee !== node) { |