module MethodCache::HelperMethods
Public Instance Methods
invalidate_cached_method(method_name, *args, &block)
click to toggle source
# File lib/method_cache.rb, line 125 def invalidate_cached_method(method_name, *args, &block) cached_method(method_name, args).invalidate(&block) end
method_cached_at(method_name, *args)
click to toggle source
# File lib/method_cache.rb, line 137 def method_cached_at(method_name, *args) cached_method(method_name, args).cached_at end
method_expires_at(method_name, *args)
click to toggle source
# File lib/method_cache.rb, line 141 def method_expires_at(method_name, *args) cached_method(method_name, args).expires_at end
method_value_cached?(method_name, *args)
click to toggle source
# File lib/method_cache.rb, line 129 def method_value_cached?(method_name, *args) cached_method(method_name, args).cached? end
update_cached_method(method_name, *args, &block)
click to toggle source
# File lib/method_cache.rb, line 133 def update_cached_method(method_name, *args, &block) cached_method(method_name, args).update(&block) end
without_method_cache(&block)
click to toggle source
# File lib/method_cache.rb, line 145 def without_method_cache(&block) MethodCache.disable(&block) end
Private Instance Methods
cached_method(method_name, args)
click to toggle source
# File lib/method_cache.rb, line 151 def cached_method(method_name, args) if self.kind_of?(Class) or self.kind_of?(Module) proxy = cached_class_methods(method_name) else proxy = self.class.send(:cached_instance_methods, method_name) end raise "method '#{method_name}' not cached" unless proxy proxy.bind(self, args) end