module Bramble::Serialize

eg, Redis uses strings only, so use this module to freeze and thaw values from storage

Public Class Methods

dump(obj) click to toggle source

prepare an object for storage

# File lib/bramble/serialize.rb, line 6
def self.dump(obj)
  JSON.dump(obj)
end
load(stored_obj) click to toggle source

reload an object from storage

# File lib/bramble/serialize.rb, line 11
def self.load(stored_obj)
  case stored_obj
  when Array
    stored_obj.map { |obj| load(obj) }
  when Hash
    stored_obj.inject({}) do |memo, (k, v)|
      memo[load(k)] = load(v)
      memo
    end
  when nil
    nil
  else
    JSON.load(stored_obj)
  end
end