Module: TeguGears::Memoize::InstanceMethods
- Defined in:
- lib/tegu_gears/memoize.rb
Instance Method Summary collapse
- #call(*x) ⇒ Object
- #flush ⇒ Object
- #function(*x) ⇒ Object
- #memoize ⇒ Object
- #memoize=(val) ⇒ Object
- #memoized(*x) ⇒ Object
Instance Method Details
#call(*x) ⇒ Object
18 19 20 |
# File 'lib/tegu_gears/memoize.rb', line 18 def call(*x) function(*x) end |
#flush ⇒ Object
39 40 41 |
# File 'lib/tegu_gears/memoize.rb', line 39 def flush MemoRepository.flush_for(self) end |
#function(*x) ⇒ Object
31 32 33 |
# File 'lib/tegu_gears/memoize.rb', line 31 def function(*x) self.memoize ? memoized(*x) : process(*x) end |
#memoize ⇒ Object
22 23 24 25 |
# File 'lib/tegu_gears/memoize.rb', line 22 def memoize @memoize = true unless defined?(@memoize) @memoize end |
#memoize=(val) ⇒ Object
27 28 29 |
# File 'lib/tegu_gears/memoize.rb', line 27 def memoize=(val) @memoize = val end |
#memoized(*x) ⇒ Object
35 36 37 |
# File 'lib/tegu_gears/memoize.rb', line 35 def memoized(*x) MemoRepository.for(self, x) || MemoRepository.set(self, x, process(*x)) end |