diff options
Diffstat (limited to 'tools/eslint/lib/rules/no-empty-label.js')
-rw-r--r-- | tools/eslint/lib/rules/no-empty-label.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/eslint/lib/rules/no-empty-label.js b/tools/eslint/lib/rules/no-empty-label.js new file mode 100644 index 0000000000..371c629a82 --- /dev/null +++ b/tools/eslint/lib/rules/no-empty-label.js @@ -0,0 +1,25 @@ +/** + * @fileoverview Rule to flag when label is not used for a loop or switch + * @author Ilya Volodin + */ + +"use strict"; + +//------------------------------------------------------------------------------ +// Rule Definition +//------------------------------------------------------------------------------ + +module.exports = function(context) { + + return { + + "LabeledStatement": function(node) { + var type = node.body.type; + + if (type !== "ForStatement" && type !== "WhileStatement" && type !== "DoWhileStatement" && type !== "SwitchStatement" && type !== "ForInStatement" && type !== "ForOfStatement") { + context.report(node, "Unexpected label {{l}}", {l: node.label.name}); + } + } + }; + +}; |