summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorWeijia Wang <381152119@qq.com>2017-10-31 23:51:59 +0800
committerAnatoli Papirovski <apapirovski@mac.com>2017-11-04 10:56:36 -0400
commit04ffa36e2307ede5a5d94afc3cca659b70fb4011 (patch)
tree245c2195ced47cdad0fb96343dbd6f83fff09a96 /tools
parent92f86632d534125aa7a86fe11a34d7b794b22991 (diff)
downloadandroid-node-v8-04ffa36e2307ede5a5d94afc3cca659b70fb4011.tar.gz
android-node-v8-04ffa36e2307ede5a5d94afc3cca659b70fb4011.tar.bz2
android-node-v8-04ffa36e2307ede5a5d94afc3cca659b70fb4011.zip
tools: add fixer for no-let-in-for-declaration
PR-URL: https://github.com/nodejs/node/pull/16642 Refs: https://github.com/nodejs/node/issues/16636 Reviewed-By: Anatoli Papirovski <apapirovski@mac.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Diffstat (limited to 'tools')
-rw-r--r--tools/eslint-rules/no-let-in-for-declaration.js16
1 files changed, 13 insertions, 3 deletions
diff --git a/tools/eslint-rules/no-let-in-for-declaration.js b/tools/eslint-rules/no-let-in-for-declaration.js
index 8b1a6783e0..34ad2d5761 100644
--- a/tools/eslint-rules/no-let-in-for-declaration.js
+++ b/tools/eslint-rules/no-let-in-for-declaration.js
@@ -14,7 +14,7 @@
module.exports = {
create(context) {
-
+ const sourceCode = context.getSourceCode();
const msg = 'Use of `let` as the loop variable in a for-loop is ' +
'not recommended. Please use `var` instead.';
@@ -23,7 +23,12 @@ module.exports = {
*/
function testForLoop(node) {
if (node.init && node.init.kind === 'let') {
- context.report(node.init, msg);
+ context.report({
+ node: node.init,
+ message: msg,
+ fix: (fixer) =>
+ fixer.replaceText(sourceCode.getFirstToken(node.init), 'var')
+ });
}
}
@@ -33,7 +38,12 @@ module.exports = {
*/
function testForInOfLoop(node) {
if (node.left && node.left.kind === 'let') {
- context.report(node.left, msg);
+ context.report({
+ node: node.left,
+ message: msg,
+ fix: (fixer) =>
+ fixer.replaceText(sourceCode.getFirstToken(node.left), 'var')
+ });
}
}