node/tools/eslint/lib/rules/no-plusplus.js
Michaël Zasso 2d441493a4 tools: update eslint to v1.10.3
PR-URL: https://github.com/nodejs/io.js/pull/2286
Reviewed-By: Roman Reiss <me@silverwind.io>
2016-01-13 23:15:39 +01:00

46 lines
1.1 KiB
JavaScript

/**
* @fileoverview Rule to flag use of unary increment and decrement operators.
* @author Ian Christian Myers
* @author Brody McKee (github.com/mrmckeb)
*/
"use strict";
//------------------------------------------------------------------------------
// Rule Definition
//------------------------------------------------------------------------------
module.exports = function(context) {
var config = context.options[0],
allowInForAfterthought = false;
if (typeof config === "object") {
allowInForAfterthought = config.allowForLoopAfterthoughts === true;
}
return {
"UpdateExpression": function(node) {
if (allowInForAfterthought && node.parent.type === "ForStatement") {
return;
}
context.report(node, "Unary operator '" + node.operator + "' used.");
}
};
};
module.exports.schema = [
{
"type": "object",
"properties": {
"allowForLoopAfterthoughts": {
"type": "boolean"
}
},
"additionalProperties": false
}
];