Class: Definition::Types::And::Conformer
- Inherits:
-
Object
- Object
- Definition::Types::And::Conformer
- Defined in:
- lib/definition/types/and.rb
Instance Method Summary collapse
- #conform(value) ⇒ Object
-
#initialize(definition) ⇒ Conformer
constructor
A new instance of Conformer.
Constructor Details
#initialize(definition) ⇒ Conformer
Returns a new instance of Conformer.
27 28 29 |
# File 'lib/definition/types/and.rb', line 27 def initialize(definition) self.definition = definition end |
Instance Method Details
#conform(value) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/definition/types/and.rb', line 31 def conform(value) results = conform_all(value) if results.all?(&:conformed?) ConformResult.new(results.last.value) else ConformResult.new(value, errors: [ ConformError.new(definition, "Not all definitions are valid for '#{definition.name}'", sub_errors: results.map(&:error_tree).flatten) ]) end end |