Class: Definition::Types::Keys::Conformer
- Inherits:
-
Object
- Object
- Definition::Types::Keys::Conformer
- Defined in:
- lib/definition/types/keys.rb
Instance Method Summary collapse
- #conform ⇒ Object
-
#initialize(definition, value) ⇒ Conformer
constructor
A new instance of Conformer.
Constructor Details
#initialize(definition, value) ⇒ Conformer
Returns a new instance of Conformer.
80 81 82 83 84 |
# File 'lib/definition/types/keys.rb', line 80 def initialize(definition, value) self.definition = definition self.value = value self.errors = [] end |
Instance Method Details
#conform ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/definition/types/keys.rb', line 86 def conform if valid_input_type? add_extra_key_errors unless definition.ignore_extra_keys add_missing_key_errors values = conform_all_keys else errors.push(ConformError.new(definition, "#{definition.name} is not a Hash", i18n_key: "keys.not_a_hash")) end ConformResult.new(values, errors: errors) end |