org.jruby.ast
Class CallNode

java.lang.Object
  extended by org.jruby.ast.Node
      extended by org.jruby.ast.CallNode
All Implemented Interfaces:
BlockAcceptingNode, IArgumentNode, INameNode, ISourcePositionHolder
Direct Known Subclasses:
CallNoArgBlockNode, CallNoArgBlockPassNode, CallNoArgNode, CallOneArgBlockNode, CallOneArgBlockPassNode, CallOneArgNode, CallThreeArgBlockNode, CallThreeArgBlockPassNode, CallThreeArgNode, CallTwoArgBlockNode, CallTwoArgBlockPassNode, CallTwoArgNode

public class CallNode
extends Node
implements INameNode, IArgumentNode, BlockAcceptingNode

A method or operator call.


Field Summary
 CallSite callAdapter
           
 
Fields inherited from class org.jruby.ast.Node
EMPTY_COMMENT_LIST, INVALID_POSITION, nodeId
 
Constructor Summary
CallNode(ISourcePosition position, Node receiverNode, java.lang.String name, Node argsNode)
           
CallNode(ISourcePosition position, Node receiverNode, java.lang.String name, Node argsNode, Node iterNode)
           
 
Method Summary
 Instruction accept(NodeVisitor iVisitor)
          Accept for the visitor pattern.
 IRubyObject assign(Ruby runtime, ThreadContext context, IRubyObject self, IRubyObject value, Block block, boolean checkArity)
           
 java.util.List<Node> childNodes()
           
 java.lang.String definition(Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock)
           
 Node getArgsNode()
          Gets the argsNode representing the method's arguments' value for this call.
 Block getBlock(Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock)
           
 Block getBlock(ThreadContext context, IRubyObject self)
           
 Node getIterNode()
           
 java.lang.String getName()
          Gets the name.
 Node getReceiverNode()
          Gets the receiverNode.
 IRubyObject interpret(Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock)
           
 Node setArgsNode(Node argsNode)
          Set the argsNode.
 Node setIterNode(Node iterNode)
           
 java.lang.String toString()
           
 
Methods inherited from class org.jruby.ast.Node
addComment, addComments, createList, getComments, getNodeName, getPosition, getPositionIncludingComments, hasComments, isInvisible, setPosition
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

callAdapter

public CallSite callAdapter
Constructor Detail

CallNode

public CallNode(ISourcePosition position,
                Node receiverNode,
                java.lang.String name,
                Node argsNode)

CallNode

public CallNode(ISourcePosition position,
                Node receiverNode,
                java.lang.String name,
                Node argsNode,
                Node iterNode)
Method Detail

accept

public Instruction accept(NodeVisitor iVisitor)
Accept for the visitor pattern.

Specified by:
accept in class Node
Parameters:
iVisitor - the visitor

getIterNode

public Node getIterNode()
Specified by:
getIterNode in interface BlockAcceptingNode

setIterNode

public Node setIterNode(Node iterNode)
Specified by:
setIterNode in interface BlockAcceptingNode

getArgsNode

public Node getArgsNode()
Gets the argsNode representing the method's arguments' value for this call.

Specified by:
getArgsNode in interface IArgumentNode
Returns:
argsNode

setArgsNode

public Node setArgsNode(Node argsNode)
Set the argsNode. This is for re-writer and not general interpretation.

Specified by:
setArgsNode in interface IArgumentNode
Parameters:
argsNode - set the arguments for this node.

getName

public java.lang.String getName()
Gets the name. name is the name of the method called

Specified by:
getName in interface INameNode
Returns:
name

getReceiverNode

public Node getReceiverNode()
Gets the receiverNode. receiverNode is the object on which the method is being called

Returns:
receiverNode

childNodes

public java.util.List<Node> childNodes()
Specified by:
childNodes in class Node

toString

public java.lang.String toString()
Overrides:
toString in class Node

interpret

public IRubyObject interpret(Ruby runtime,
                             ThreadContext context,
                             IRubyObject self,
                             Block aBlock)
Overrides:
interpret in class Node

getBlock

public Block getBlock(ThreadContext context,
                      IRubyObject self)

getBlock

public Block getBlock(Ruby runtime,
                      ThreadContext context,
                      IRubyObject self,
                      Block aBlock)

assign

public IRubyObject assign(Ruby runtime,
                          ThreadContext context,
                          IRubyObject self,
                          IRubyObject value,
                          Block block,
                          boolean checkArity)
Overrides:
assign in class Node

definition

public java.lang.String definition(Ruby runtime,
                                   ThreadContext context,
                                   IRubyObject self,
                                   Block aBlock)
Overrides:
definition in class Node


Copyright © 2002-2007 JRuby Team. All Rights Reserved.