Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  */
 
 package org.jruby.ast;
 
 import org.jruby.Ruby;

Author(s):
enebo
public class AttrAssignOneArgNode extends AttrAssignNode {
    private Node arg1;
    
    public AttrAssignOneArgNode(ISourcePosition positionNode receiverNodeString nameArrayNode argsNode) {
        super(positionreceiverNodenameargsNode);
        
        assert argsNode.size() == 1 : "argsNode.size() is 1";
        
         = argsNode.get(0);
    }
    @Override
    public IRubyObject interpret(Ruby runtimeThreadContext contextIRubyObject selfBlock aBlock) {
        IRubyObject receiver = .interpret(runtimecontextselfaBlock);
        IRubyObject param1 = .interpret(runtimecontextselfaBlock);
        
        assert hasMetaClass(receiver) : receiverClassName(receiver);
        
        // If reciever is self then we do the call the same way as vcall
        CallSite callSite = ;
        callSite.call(contextselfreceiverparam1);
        return param1;
    }
    
        
    @Override
    public IRubyObject assign(Ruby runtimeThreadContext contextIRubyObject selfIRubyObject valueBlock aBlockboolean checkArity) {
        IRubyObject receiver = .interpret(runtimecontextselfaBlock);
        IRubyObject param1 = .interpret(runtimecontextselfaBlock);
        
        assert hasMetaClass(receiver) : receiverClassName(receiver);
        
        // If reciever is self then we do the call the same way as vcall
        CallSite callSite = ;
        callSite.call(contextselfreceiverparam1value);
        
        return runtime.getNil();
    }
New to GrepCode? Check out our FAQ X