Module: Representable::Binding::Prepare

Included in:
Object
Defined in:
lib/representable/binding.rb

Overview

Hooks into #serialize and #deserialize to setup (extend/decorate) typed properties at runtime.

Instance Method Summary collapse

Instance Method Details

#deserializeObject



114
115
116
# File 'lib/representable/binding.rb', line 114

def deserialize(*)
  prepare(super)
end

#prepare(object) ⇒ Object



118
119
120
121
122
123
# File 'lib/representable/binding.rb', line 118

def prepare(object)
  return object unless mod = representer_module_for(object) # :extend.

  mod = mod.first if mod.is_a?(Array) # TODO: deprecate :extend => [..]
  mod.prepare(object)
end

#serializeObject

Extends the object with its representer before serialization.



110
111
112
# File 'lib/representable/binding.rb', line 110

def serialize(*)
  prepare(super)
end