Module: AsciiChem::Linter::Registry

Defined in:
lib/asciichem/linter/registry.rb

Overview

Check registry. Each check self-registers at file-load time via Registry.add(:name, Klass). The registry is a Hash; iteration order is insertion order.

Class Method Summary collapse

Class Method Details

.add(name, klass) ⇒ Object



12
13
14
# File 'lib/asciichem/linter/registry.rb', line 12

def add(name, klass)
  @checks << [name, klass] unless @checks.any? { |n, _k| n == name }
end

.allObject



16
17
18
# File 'lib/asciichem/linter/registry.rb', line 16

def all
  @checks.map { |(_name, klass)| klass }
end

.namesObject



20
21
22
# File 'lib/asciichem/linter/registry.rb', line 20

def names
  @checks.map { |(name, _klass)| name }
end

.resetObject

For testing: clear the registry.



25
26
27
# File 'lib/asciichem/linter/registry.rb', line 25

def reset
  @checks.clear
end