Class: HashAttributeAssignment::HashAttributeAssignor

Inherits:
Object
  • Object
show all
Defined in:
lib/hash_attribute_assignment.rb

Instance Method Summary collapse

Constructor Details

#initialize(instance, hash = {}) ⇒ HashAttributeAssignor

Returns a new instance of HashAttributeAssignor.



17
18
19
20
21
# File 'lib/hash_attribute_assignment.rb', line 17

def initialize(instance, hash = {})
  @hash = hash
  @klass = instance.class
  @instance = instance
end

Instance Method Details

#assignObject



23
24
25
26
27
28
# File 'lib/hash_attribute_assignment.rb', line 23

def assign
  check_required_keys if klass.const_defined?(:REQUIRED_KEYS)
  merge_default_hash! if klass.const_defined?(:DEFAULT_HASH)
  validate_hash!
  assign_asstributes
end