module Lite::Memoize::Klass
Public Instance Methods
memoize(method_name, as: nil)
click to toggle source
# File lib/lite/memoize/klass.rb, line 9 def memoize(method_name, as: nil) inner_method = instance_method(method_name) define_method(method_name) do |*args| key = self.class.caller_key(args, as: as || method_name) self.class.store[key] ||= inner_method.bind_call(self, *args) end end