Class: Basic101::LetStatement

Inherits:
Statement show all
Defined in:
lib/basic101/let_statement.rb

Instance Attribute Summary

Attributes inherited from Statement

#index, #line

Instance Method Summary collapse

Methods inherited from Statement

#data_items, #exec, #line_number, #raise_error_with_line_number

Methods included from Identity

#==

Constructor Details

#initialize(reference, expression) ⇒ LetStatement

Returns a new instance of LetStatement.



9
10
11
12
# File 'lib/basic101/let_statement.rb', line 9

def initialize(reference, expression)
  @reference = reference
  @expression = expression
end

Instance Method Details

#execute(runtime) ⇒ Object



14
15
16
# File 'lib/basic101/let_statement.rb', line 14

def execute(runtime)
  @reference.assign(runtime, @expression.eval(runtime))
end