Class: SyntaxTree::YARV::PutObjectInt2Fix0
Overview
### Summary
‘putobject_INT2FIX_0_` pushes 0 on the stack. It is a specialized instruction resulting from the operand unification optimization. It is equivalent to `putobject 0`.
### Usage
~~~ruby 0 ~~~
Instance Method Summary
collapse
Methods inherited from Instruction
#branch_targets, #falls_through?, #leaves?, #length, #pops
Instance Method Details
#==(other) ⇒ Object
4582
4583
4584
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4582
def ==(other)
other.is_a?(PutObjectInt2Fix0)
end
|
#call(vm) ⇒ Object
4594
4595
4596
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4594
def call(vm)
canonical.call(vm)
end
|
#canonical ⇒ Object
4590
4591
4592
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4590
def canonical
PutObject.new(0)
end
|
#deconstruct_keys(_keys) ⇒ Object
4578
4579
4580
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4578
def deconstruct_keys(_keys)
{}
end
|
#disasm(fmt) ⇒ Object
4570
4571
4572
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4570
def disasm(fmt)
fmt.instruction("putobject_INT2FIX_0_")
end
|
#pushes ⇒ Object
4586
4587
4588
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4586
def pushes
1
end
|
#side_effects? ⇒ Boolean
4598
4599
4600
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4598
def side_effects?
false
end
|
#to_a(_iseq) ⇒ Object
4574
4575
4576
|
# File 'lib/syntax_tree/yarv/instructions.rb', line 4574
def to_a(_iseq)
[:putobject_INT2FIX_0_]
end
|