Sha256: ed43524997acf3088a716bd53940e54f6f6bac77d7a5de7001e616488e711a2f
Contents?: true
Size: 907 Bytes
Versions: 10
Compression:
Stored size: 907 Bytes
Contents
module Representable::JSON module Hash include Representable::JSON def self.included(base) base.class_eval do include Representable extend ClassMethods end end module ClassMethods def values(options) hash :_self, options end end def create_representation_with(doc, options, format) bin = representable_bindings_for(format).first bin.serialize_for(self) end def update_properties_from(doc, options, format) bin = representable_bindings_for(format).first value = bin.deserialize_from(doc) replace(value) end # FIXME: refactor Definition so we can simply add options in #items to existing definition. def representable_attrs attrs = super attrs << Definition.new(:_self, :hash => true) if attrs.size == 0 attrs end end end
Version data entries
10 entries across 10 versions & 1 rubygems