Caching
Cache methods
Installation
Add this line to your application's Gemfile:
gem 'caching'
And then execute:
$ bundle
Or install it yourself as:
$ gem install caching
Usage
class Model
def slow_method
...
end
cache_method :slow_method
def slow_method_with_args(*args)
...
end
cache_method :slow_method_with_args
def fast_method
...
end
end
model = Model.new
model.slow_method # => Execute method
model.slow_method # => Return cached value
model.slow_method_with_args 'some value' # => Execute method
model.slow_method_with_args 'some value' # => Return cached value for argument 'some value'
model.slow_method_with_args 1234 # => Execute method
model.slow_method_with_args 1234 # => Return cached value for argument 1234
model.clear_cache :slow_method # => Remove cache only for method slow_method
model.clear_cache # => Remove cache for all cached methods
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request