Class: Ea::Lint::LintRule

Inherits:
Object
  • Object
show all
Defined in:
lib/ea/lint/lint_rule.rb

Overview

Base class for lint rules. Subclasses implement #check(model) and return an Array. Default severity is :warning; subclasses can override via self.severity.

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Class Attribute Details

.severityObject

Returns the value of attribute severity.



10
11
12
# File 'lib/ea/lint/lint_rule.rb', line 10

def severity
  @severity
end

Class Method Details

.nameObject



13
14
15
# File 'lib/ea/lint/lint_rule.rb', line 13

def self.name
  to_s.split("::").last.gsub(/Rule\z/, "").gsub(/([a-z])([A-Z])/, '\1_\2').downcase
end

Instance Method Details

#check(_model) ⇒ Object

Raises:

  • (NotImplementedError)


21
22
23
# File 'lib/ea/lint/lint_rule.rb', line 21

def check(_model)
  raise NotImplementedError, "#{self.class}#check not implemented"
end