Sha256: b15e5b3b7cb8fcb4f5a019bc4d24d6eaabb3147e1a0290713ecb15bf866a03a1
Contents?: true
Size: 1.2 KB
Versions: 45
Compression:
Stored size: 1.2 KB
Contents
'use strict'; var helpers = require('../helpers'); var leadingZeroRegex = /^0\.\d+$/, noLeadingZeroRegex = /^\.\d+$/; module.exports = { 'name': 'leading-zero', 'defaults': { 'include': false }, 'detect': function (ast, parser) { var result = []; ast.traverseByType('number', function (num) { if (num.content.match(/^-?(0?\.\d+)/)) { if (num.content.match(leadingZeroRegex)) { if (!parser.options.include) { result = helpers.addUnique(result, { 'ruleId': parser.rule.name, 'line': num.start.line, 'column': num.start.column, 'message': 'Don\'t include leading zeros on numbers', 'severity': parser.severity }); } } if (num.content.match(noLeadingZeroRegex)) { if (parser.options.include) { result = helpers.addUnique(result, { 'ruleId': parser.rule.name, 'line': num.start.line, 'column': num.start.column - 1, 'message': 'Include leading zeros on numbers', 'severity': parser.severity }); } } } }); return result; } };
Version data entries
45 entries across 45 versions & 2 rubygems