Project

tacky

0.0
No release in over a year
Decorate your existing Ruby object with Tacky and all its methods will be cached.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

EO principles respected here DevOps By Rultor.com We recommend RubyMine

rake Gem Version Maintainability Yard Docs Hits-of-Code License

First, install it:

$ gem install tacky

Then, use it like this:

require 'tacky'
obj = Tacky.new(obj)

That's it, all method calls will be cached. This means that only the first call of any method will actually reach your object. All consecutive calls will be intercepted by the Tacky decorator, which will return previously calculated values. The decorator keeps all values in its internal Hash.

If you want all methods of everything your methods return be cached too, you need to use "deep" caching (it's true by default):

obj = Tacky.new(obj, deep: true)

Keep in mind that Tacky is thread-safe.

How to contribute

Read these guidelines. Make sure you build is green before you contribute your pull request. You will need to have Ruby 2.3+ and Bundler installed. Then:

$ bundle update
$ bundle exec rake

If it's clean and you don't see any error messages, submit your pull request.