Class: AsciiChem::Linter::Base
- Inherits:
-
Object
- Object
- AsciiChem::Linter::Base
- Defined in:
- lib/asciichem/linter/base.rb
Overview
Base class for linter checks. Subclasses implement run(formula)
and return an array of Diagnostic objects.
Self-registration: subclasses call register(:name) inside their
class body. The Linter module triggers every autoload at load
time so each check file has a chance to register before any API
is queried.
Direct Known Subclasses
BalanceCheck, BracketBalanceCheck, ElementValidationCheck, IsotopeSanityCheck, UnclosedRingCheck, ValenceCheck
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
Instance Method Details
#run(_formula) ⇒ Object
19 20 21 |
# File 'lib/asciichem/linter/base.rb', line 19 def run(_formula) raise NotImplementedError, "#{self.class} must implement #run" end |