module Redmemo::Cache::InstanceMethods
start of instance methods
Public Instance Methods
cached_value_for(key, lazy_val)
click to toggle source
# File lib/redmemo.rb, line 28 def cached_value_for(key, lazy_val) cached_val = $redis.get(key) return decode_for_cache(cached_val) if cached_val # cache miss: first execution lazy_val.().tap do |val| $redis.set(key, encode_for_cache(val)) end end
decode_for_cache(encoded_val)
click to toggle source
# File lib/redmemo.rb, line 24 def decode_for_cache(encoded_val) Marshal.load(Base64.decode64(encoded_val)) end
encode_for_cache(val)
click to toggle source
# File lib/redmemo.rb, line 20 def encode_for_cache(val) Base64.encode64(Marshal.dump(val)) end