Repository URL to install this package:
|
Version:
0.2.1.pre.mmior.1 ▾
|
| example |
| lib |
| spec |
| .gitignore |
| .rspec |
| .ruby-version |
| .travis.yml |
| Gemfile |
| LICENCE |
| README.md |
| Rakefile |
| benchmark.rb |
| memoist2.gemspec |
Simple Memoization for Ruby 2.0
Unlike Memoist, this is not a drop-in replacement for old ActiveSupport::Memoizable. Memoist will still work just fine for that if you're using Ruby 2.0. This project, on the other hand, is just me playing using Module#prepend which makes this stuff very simple.
Memoist works on all Rubies
Memoist is quite complicated
Memoist has the exact same api as ActiveSupport::Memoizable
Memoist2 only works on Ruby >= 2.0.0
Memoist2 is deliberately much simpler
Memoist2 has a slightly different API that could totally change
Memoize an instance method
class Foo
include Memoist2
def bar
sleep 1 && 2**10
end
memoize :bar
end
Memoize a class method
class Foo
include Memoist2
def self.bar
# something expensive
end
memoize_class_method :bar
end
Licensed under the MIT licence.
See the file LICENCE.