Module: Fastererer::RuleCatalog
- Defined in:
- lib/fastererer/rule_catalog.rb
Overview
Loads, validates, memoizes and looks up the rule catalog from the i18n locale.
Constant Summary collapse
- LOCALE_PATH =
File.('../../config/locales/en.yml', __dir__)
Class Method Summary collapse
- .all ⇒ Object
- .fetch(offense_name) ⇒ Object
-
.validate!(offense_name) ⇒ Object
Guard-only: raises for an unknown rule, returns nil otherwise.
Class Method Details
.all ⇒ Object
13 14 15 |
# File 'lib/fastererer/rule_catalog.rb', line 13 def all @all ||= load end |
.fetch(offense_name) ⇒ Object
17 18 19 20 21 |
# File 'lib/fastererer/rule_catalog.rb', line 17 def fetch(offense_name) all.fetch(offense_name.to_s) do raise UnknownRuleError, "Unknown rule: #{offense_name.inspect}" end end |
.validate!(offense_name) ⇒ Object
Guard-only: raises for an unknown rule, returns nil otherwise.
24 25 26 27 |
# File 'lib/fastererer/rule_catalog.rb', line 24 def validate!(offense_name) fetch(offense_name) nil end |