class PHPSession::Encoder::StructSerializer

Public Instance Methods

serialize(value) click to toggle source
# File lib/php_session/encoder.rb, line 99
def serialize(value)
  key_values = value.members.zip(value.values)
  serialized_key_values = key_values.map do |kv|
    kv.map {|el| @encoder.serialize(el)}
  end
  class_name = value.class.to_s.gsub(/^Struct::/,'')
  %|o:#{class_name.bytesize}:"#{class_name}":#{key_values.size}:{#{serialized_key_values.flatten.join}}|
end