lib/representable/serializer.rb in representable-1.7.0 vs lib/representable/serializer.rb in representable-1.7.1
- old
+ new
@@ -1,18 +1,21 @@
require "representable/deserializer"
module Representable
class ObjectSerializer < ObjectDeserializer
- def call
+ def call # TODO: make typed? switch here!
return @object if @object.nil?
representable = prepare(@object)
serialize(representable, @binding.user_options)
end
private
def serialize(object, user_options)
+ # TODO: this used to be handled in #serialize where Object added it's behaviour. treat scalars as objects to remove this switch:
+ return object unless @binding.typed?
+
object.send(@binding.serialize_method, user_options.merge!({:wrap => false}))
end
end
end
\ No newline at end of file