Class: Representable::XML::HashBinding

Inherits:
CollectionBinding show all
Defined in:
lib/representable/bindings/xml_bindings.rb

Instance Attribute Summary

Attributes inherited from Binding

#represented, #user_options

Instance Method Summary collapse

Methods inherited from PropertyBinding

build_for, #deserialize_node, #initialize, #read, #serialize_node, #write

Methods inherited from Binding

build, #compile_fragment, #deserialize, #get, #initialize, #read_fragment, #read_fragment_for, #serialize, #set, #uncompile_fragment, #write_fragment, #write_fragment_for

Constructor Details

This class inherits a constructor from Representable::XML::PropertyBinding

Instance Method Details

#deserialize_from(nodes) ⇒ Object



121
122
123
124
125
126
127
# File 'lib/representable/bindings/xml_bindings.rb', line 121

def deserialize_from(nodes)
  {}.tap do |hash|
    nodes.children.each do |node|
      hash[node.name] = deserialize_node(node)
    end
  end
end

#serialize_for(value, parent) ⇒ Object



114
115
116
117
118
119
# File 'lib/representable/bindings/xml_bindings.rb', line 114

def serialize_for(value, parent)
  set_for(parent, value.collect do |k, v|
    node = node_for(parent, k)
    serialize_node(node, v)
  end)
end