jscs
Version:
JavaScript Style Checker
34 lines (27 loc) • 918 B
JavaScript
var assert = require('assert');
module.exports = function() {};
module.exports.prototype = {
configure: function(keywords) {
assert(Array.isArray(keywords), 'disallowKeywords option requires array value');
this._keywordIndex = {};
for (var i = 0, l = keywords.length; i < l; i++) {
this._keywordIndex[keywords[i]] = true;
}
},
getOptionName: function () {
return 'disallowKeywords';
},
check: function(file, errors) {
var keywordIndex = this._keywordIndex;
var tokens = file.getTokens();
for (var i = 0, l = tokens.length; i < l; i++) {
var token = tokens[i];
if (token.type === 'Keyword' && keywordIndex[token.value]) {
errors.add(
'Illegal keyword: ' + token.value,
token.loc.start
);
}
}
}
};