Module: SlimLint::LinterRegistry
- Included in:
- SlimLint::Linter::CommentControlStatement, SlimLint::Linter::ConsecutiveControlStatements, SlimLint::Linter::EmptyControlStatement, SlimLint::Linter::LineLength, SlimLint::Linter::RedundantDiv, SlimLint::Linter::RuboCop, SlimLint::Linter::TagCase, SlimLint::Linter::TrailingWhitespace
- Defined in:
- lib/slim_lint/linter_registry.rb
Overview
Stores all defined linters.
Class Attribute Summary collapse
-
.linters ⇒ Object
readonly
List of all registered linters.
Class Method Summary collapse
-
.extract_linters_from(linter_names) ⇒ Array<Class>
Return a list of Linter Classes corresponding to the specified list of names.
-
.included(subclass) ⇒ Object
Executed when a linter includes the LinterRegistry module.
Class Attribute Details
.linters ⇒ Object (readonly)
List of all registered linters.
10 11 12 |
# File 'lib/slim_lint/linter_registry.rb', line 10 def linters @linters end |
Class Method Details
.extract_linters_from(linter_names) ⇒ Array<Class>
Return a list of SlimLint::Linter Classes corresponding to the specified list of names.
26 27 28 29 30 31 32 33 34 |
# File 'lib/slim_lint/linter_registry.rb', line 26 def extract_linters_from(linter_names) linter_names.map do |linter_name| begin SlimLint::Linter.const_get(linter_name) rescue NameError raise NoSuchLinter, "Linter #{linter_name} does not exist" end end end |
.included(subclass) ⇒ Object
Executed when a linter includes the SlimLint::LinterRegistry module.
This results in the linter being registered with the registry.
17 18 19 |
# File 'lib/slim_lint/linter_registry.rb', line 17 def included(subclass) @linters << subclass end |