Module: SimpleCache::Marshal

Extended by:
Marshal
Included in:
Marshal
Defined in:
lib/simple_cache/marshal.rb

Instance Method Summary collapse

Instance Method Details

#marshal(value) ⇒ Object



19
20
21
# File 'lib/simple_cache/marshal.rb', line 19

def marshal(value)
  Base64.encode64 ::Marshal.dump(value)
end

#md5(key) ⇒ Object



11
12
13
# File 'lib/simple_cache/marshal.rb', line 11

def md5(key)
  Digest::MD5.hexdigest(key)
end

#uid(key) ⇒ Object



7
8
9
# File 'lib/simple_cache/marshal.rb', line 7

def uid(key)
  md5(key).unpack("LL").inject { |a,b| (a << 31) + b }
end

#unmarshal(marshalled) ⇒ Object



15
16
17
# File 'lib/simple_cache/marshal.rb', line 15

def unmarshal(marshalled)
  ::Marshal.load Base64.decode64(marshalled) if marshalled
end