Module: Straw::Memoizable

Defined in:
lib/straw.rb

Instance Method Summary collapse

Instance Method Details

#memoize(key) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/straw.rb', line 22

def memoize(key)
  if memoized?(key)
    instance_variable_get(var_for(key))
  else
    instance_variable_set(var_for(key), yield)
  end
end

#memoized?(key) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/straw.rb', line 30

def memoized?(key)
  instance_variable_defined?(var_for(key))
end