class Synapse::Serialization::LazyObject

Provides a generic lazy deserializing object

Attributes

serialized_object[R]

@return [SerializedObject]

serializer[R]

@return [Serializer]

type[R]

@return [Class]

Public Class Methods

new(serialized_object, serializer) click to toggle source

@param [SerializedObject] serialized_object @param [Serializer] serializer @return [undefined]

# File lib/synapse/serialization/lazy_object.rb, line 17
def initialize(serialized_object, serializer)
  @serialized_object = serialized_object
  @serializer = serializer
  @type = serializer.class_for serialized_object.type
end

Public Instance Methods

deserialized() click to toggle source

Returns the deserialized version of the contained serialized object @return [Object]

# File lib/synapse/serialization/lazy_object.rb, line 25
def deserialized
  @deserialized ||= @serializer.deserialize @serialized_object
end
deserialized?() click to toggle source

Returns true if this object has been deserialized already @return [Boolean]

# File lib/synapse/serialization/lazy_object.rb, line 31
def deserialized?
  !!@deserialized
end