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.



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

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.



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

def target
  @target
end

#type_annotationObject

Returns the value of attribute type_annotation.



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

def type_annotation
  @type_annotation
end

#valueObject

Returns the value of attribute value.



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

def value
  @value
end

Instance Method Details

#childrenObject



191
192
193
# File 'lib/t_ruby/ir.rb', line 191

def children
  [@value]
end