lib/representable/binding.rb in representable-1.2.3 vs lib/representable/binding.rb in representable-1.2.4

- old
+ new

@@ -42,7 +42,27 @@ end object end end + + module Object + include Binding::Extend # provides #serialize/#deserialize with extend. + + def serialize(object) + return object if object.nil? + + super(object).send(serialize_method, :wrap => false) + end + + def deserialize(data) + # DISCUSS: does it make sense to skip deserialization of nil-values here? + super(create_object).send(deserialize_method, data) + end + + def create_object + definition.sought_type.new + end + end + end end