Module: YTLJit::VM::YARVTranslatorCRubyObjectMixin
Instance Method Summary collapse
- #visit_getinstancevariable(code, ins, context) ⇒ Object
- #visit_setinstancevariable(code, ins, context) ⇒ Object
Instance Method Details
#visit_getinstancevariable(code, ins, context) ⇒ Object
76 77 78 79 80 |
# File 'lib/ytljit/vm_cruby_obj.rb', line 76 def visit_getinstancevariable(code, ins, context) curnode = context.current_node node = CRubyInstanceVarRefNode.new(curnode, ins[1]) context.expstack.push node end |
#visit_setinstancevariable(code, ins, context) ⇒ Object
82 83 84 85 86 87 88 89 90 91 |
# File 'lib/ytljit/vm_cruby_obj.rb', line 82 def visit_setinstancevariable(code, ins, context) val = context.expstack.pop curnode = context.current_node node = CRubyInstanceVarAssignNode.new(curnode, ins[1], val) if context.expstack[-1] == val then context.expstack[-1] = CRubyInstanceVarRefNode.new(curnode, ins[1]) end curnode.body = node context.current_node = node end |