class Specifier::Memoizer

It remembers things (used for within let statements).

Usage:

memoizer = Specifier::Memoizer.new do
  # ...
end
memoizer.evaluate

Public Class Methods

new(&block) click to toggle source
# File lib/specifier/memoizer.rb, line 14
def initialize(&block)
  @block = block
end

Public Instance Methods

evaluate() click to toggle source
# File lib/specifier/memoizer.rb, line 18
def evaluate
  return @result if defined?(@result)
  @result = @block.call
end