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



116
117
118
# File 'lib/representable/binding.rb', line 116

def deserialize(*)
  prepare(super)
end

#prepare(object) ⇒ Object



120
121
122
123
124
125
# File 'lib/representable/binding.rb', line 120

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.



112
113
114
# File 'lib/representable/binding.rb', line 112

def serialize(*)
  prepare(super)
end