module SnakeEyes::Memoization

Public Class Methods

included(base) click to toggle source
# File lib/snake_eyes/memoization.rb, line 5
def self.included(base)
  base.class_eval do
    private

    def params_from_cache(key)
      previous_params[key]
    end

    def params_in_cache?(key)
      previous_params.key?(key)
    end

    def cache!(key, value)
      previous_params[key] = value
    end

    def previous_params
      @previous_params ||= {}
    end
  end
end

Public Instance Methods

cache!(key, value) click to toggle source
# File lib/snake_eyes/memoization.rb, line 17
def cache!(key, value)
  previous_params[key] = value
end
params_from_cache(key) click to toggle source
# File lib/snake_eyes/memoization.rb, line 9
def params_from_cache(key)
  previous_params[key]
end
params_in_cache?(key) click to toggle source
# File lib/snake_eyes/memoization.rb, line 13
def params_in_cache?(key)
  previous_params.key?(key)
end
previous_params() click to toggle source
# File lib/snake_eyes/memoization.rb, line 21
def previous_params
  @previous_params ||= {}
end