Module: Memonic::ClassMethods
- Defined in:
- lib/memonic.rb
Instance Method Summary collapse
Instance Method Details
#memoize(name, &block) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/memonic.rb', line 21 def memoize(name, &block) define_method("__#{name}__", &block) class_eval <<-RUBY def #{name} @#{name} || begin if defined?(@#{name}) @#{name} else @#{name} = __#{name}__ end end end RUBY end |