Module: Representable::HashMethods

Included in:
XML::AttributeHash, XML::Hash
Defined in:
lib/representable/hash_methods.rb

Instance Method Summary collapse

Instance Method Details

#create_representation_with(doc, options, format) ⇒ Object



3
4
5
6
7
8
# File 'lib/representable/hash_methods.rb', line 3

def create_representation_with(doc, options, format)
  hash  = filter_keys_for!(represented, options) # FIXME: this modifies options and replicates logic from Representable.
  bin   = representable_mapper(format, options).bindings(represented, options).first

  bin.render_fragment(hash, doc) # TODO: Use something along Populator, which does
end

#update_properties_from(doc, options, format) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/representable/hash_methods.rb', line 10

def update_properties_from(doc, options, format)
  hash  = filter_keys_for!(doc, options)
  bin   = representable_mapper(format, options).bindings(represented, options).first

  value = Deserializer::Hash.new(bin).call(hash)
  # value = bin.deserialize_from(hash)
  represented.replace(value)
end