Class: TRuby::IR::Assignment

Inherits:
Node
  • Object
show all
Defined in:
lib/t_ruby/ir.rb

Overview

Variable assignment

Instance Attribute Summary collapse

Attributes inherited from Node

#location, #metadata, #type_info

Instance Method Summary collapse

Methods inherited from Node

#accept, #transform

Constructor Details

#initialize(target:, value:, type_annotation: nil, **opts) ⇒ Assignment

Returns a new instance of Assignment.



180
181
182
183
184
185
# File 'lib/t_ruby/ir.rb', line 180

def initialize(target:, value:, type_annotation: nil, **opts)
  super(**opts)
  @target = target
  @value = value
  @type_annotation = type_annotation
end

Instance Attribute Details

#targetObject

Returns the value of attribute target.



178
179
180
# File 'lib/t_ruby/ir.rb', line 178

def target
  @target
end

#type_annotationObject

Returns the value of attribute type_annotation.



178
179
180
# File 'lib/t_ruby/ir.rb', line 178

def type_annotation
  @type_annotation
end

#valueObject

Returns the value of attribute value.



178
179
180
# File 'lib/t_ruby/ir.rb', line 178

def value
  @value
end

Instance Method Details

#childrenObject



187
188
189
# File 'lib/t_ruby/ir.rb', line 187

def children
  [@value]
end