Module: Representable::JSON::Hash
- Includes:
- Representable::JSON
- Defined in:
- lib/representable/json/hash.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #create_representation_with(doc, options, format) ⇒ Object
-
#representable_attrs ⇒ Object
FIXME: refactor Definition so we can simply add options in #items to existing definition.
- #update_properties_from(doc, options, format) ⇒ Object
Methods included from Representable::JSON
binding_for_definition, #from_hash, #from_json, #to_hash, #to_json
Class Method Details
.included(base) ⇒ Object
5 6 7 8 9 10 |
# File 'lib/representable/json/hash.rb', line 5 def self.included(base) base.class_eval do include Representable extend ClassMethods end end |
Instance Method Details
#create_representation_with(doc, options, format) ⇒ Object
20 21 22 23 |
# File 'lib/representable/json/hash.rb', line 20 def create_representation_with(doc, , format) bin = representable_bindings_for(format).first bin.serialize_for(self) end |
#representable_attrs ⇒ Object
FIXME: refactor Definition so we can simply add options in #items to existing definition.
32 33 34 35 36 |
# File 'lib/representable/json/hash.rb', line 32 def representable_attrs attrs = super attrs << Definition.new(:_self, :hash => true) if attrs.size == 0 attrs end |
#update_properties_from(doc, options, format) ⇒ Object
25 26 27 28 29 |
# File 'lib/representable/json/hash.rb', line 25 def update_properties_from(doc, , format) bin = representable_bindings_for(format).first value = bin.deserialize_from(doc) replace(value) end |