module Straw::Memoizable
Public Instance Methods
memoize(key) { || ... }
click to toggle source
# 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)
click to toggle source
# File lib/straw.rb, line 30 def memoized?(key) instance_variable_defined?(var_for(key)) end
Private Instance Methods
var_for(key)
click to toggle source
# File lib/straw.rb, line 36 def var_for(key) "@#{key}" end