Class: Calyx::Production::Memo
- Inherits:
-
Object
- Object
- Calyx::Production::Memo
- Defined in:
- lib/calyx/production/memo.rb
Constant Summary collapse
- SIGIL =
'@'.freeze
Instance Method Summary collapse
- #evaluate ⇒ Object
-
#initialize(symbol, registry) ⇒ Memo
constructor
A new instance of Memo.
Constructor Details
#initialize(symbol, registry) ⇒ Memo
6 7 8 9 |
# File 'lib/calyx/production/memo.rb', line 6 def initialize(symbol, registry) @symbol = symbol.slice(1, symbol.length-1).to_sym @registry = registry end |
Instance Method Details
#evaluate ⇒ Object
11 12 13 |
# File 'lib/calyx/production/memo.rb', line 11 def evaluate [@symbol, @registry.memoize_expansion(@symbol)] end |