Class: Red::AssignmentNode

Inherits:
Object
  • Object
show all
Defined in:
lib/red/assignment_nodes.rb

Overview

:nodoc:

Defined Under Namespace

Classes: AttributeNode, ClassVariableNode, GlobalVariableNode, InstanceVariableNode, LocalVariableNode, OperatorNode

Instance Method Summary collapse

Constructor Details

#initialize(variable_name, expression) ⇒ AssignmentNode

Returns a new instance of AssignmentNode.



3
4
5
6
# File 'lib/red/assignment_nodes.rb', line 3

def initialize(variable_name, expression)
  raise(BuildError::NoMultilineAssignment, "Multiline assignment (e.g. foo = begin; line1; line2; end) is not supported") if expression.first == :block
  @variable_name, @expression = [variable_name, expression].build_nodes
end

Instance Method Details

#compile_internals(options = {}) ⇒ Object



8
9
10
# File 'lib/red/assignment_nodes.rb', line 8

def compile_internals(options = {})
  return [@variable_name, @expression].compile_nodes(:as_argument => true)
end