class SCSSLint::Linter::LeadingZero
Checks for unnecessary leading zeros in numeric values with decimal points.
Constants
- CONVENTIONS
- NUMBER_WITH_LEADING_ZERO_REGEX
Public Instance Methods
visit_script_number(node)
click to toggle source
# File lib/scss_lint/linter/leading_zero.rb, line 16 def visit_script_number(node) return unless number = source_from_range(node.source_range)[NUMBER_WITH_LEADING_ZERO_REGEX, 1] check_for_leading_zeros(node, number) end
visit_script_string(node)
click to toggle source
# File lib/scss_lint/linter/leading_zero.rb, line 6 def visit_script_string(node) return unless node.type == :identifier non_string_values = remove_quoted_strings(node.value).split non_string_values.each do |value| next unless number = value[NUMBER_WITH_LEADING_ZERO_REGEX, 1] check_for_leading_zeros(node, number) end end
Private Instance Methods
check_for_leading_zeros(node, original_number)
click to toggle source
# File lib/scss_lint/linter/leading_zero.rb, line 40 def check_for_leading_zeros(node, original_number) style = config.fetch('style', 'exclude_zero') convention = CONVENTIONS[style] return if convention[:validator].call(original_number) corrected = convention[:converter].call(original_number) add_lint(node, convention[:explanation] % [original_number, corrected]) end