Module: Glossarist::Validation::Rules::Registry
- Defined in:
- lib/glossarist/validation/rules/registry.rb
Class Method Summary collapse
- .all ⇒ Object
- .find(code) ⇒ Object
- .for_category(category) ⇒ Object
- .for_scope(scope) ⇒ Object
- .register(rule_class) ⇒ Object
- .reset! ⇒ Object
- .rule_classes ⇒ Object
Class Method Details
.all ⇒ Object
16 17 18 |
# File 'lib/glossarist/validation/rules/registry.rb', line 16 def self.all @rules.map(&:new) end |
.find(code) ⇒ Object
28 29 30 |
# File 'lib/glossarist/validation/rules/registry.rb', line 28 def self.find(code) all.find { |r| r.code == code } end |
.for_category(category) ⇒ Object
20 21 22 |
# File 'lib/glossarist/validation/rules/registry.rb', line 20 def self.for_category(category) all.select { |r| r.category == category } end |
.for_scope(scope) ⇒ Object
24 25 26 |
# File 'lib/glossarist/validation/rules/registry.rb', line 24 def self.for_scope(scope) all.select { |r| r.scope == scope } end |
.register(rule_class) ⇒ Object
10 11 12 13 14 |
# File 'lib/glossarist/validation/rules/registry.rb', line 10 def self.register(rule_class) @mutex.synchronize do @rules << rule_class unless @rules.include?(rule_class) end end |
.reset! ⇒ Object
32 33 34 |
# File 'lib/glossarist/validation/rules/registry.rb', line 32 def self.reset! @mutex.synchronize { @rules.clear } end |
.rule_classes ⇒ Object
36 37 38 |
# File 'lib/glossarist/validation/rules/registry.rb', line 36 def self.rule_classes @rules.dup end |