org.jruby.ast
Class FCallNode

java.lang.Object
  extended by org.jruby.ast.Node
      extended by org.jruby.ast.FCallNode
All Implemented Interfaces:
BlockAcceptingNode, IArgumentNode, INameNode, ISourcePositionHolder
Direct Known Subclasses:
FCallManyArgsBlockNode, FCallManyArgsBlockPassNode, FCallManyArgsNode, FCallNoArgBlockNode, FCallNoArgBlockPassNode, FCallNoArgNode, FCallOneArgBlockNode, FCallOneArgBlockPassNode, FCallOneArgNode, FCallSpecialArgBlockNode, FCallSpecialArgBlockPassNode, FCallSpecialArgNode, FCallThreeArgBlockNode, FCallThreeArgBlockPassNode, FCallThreeArgNode, FCallTwoArgBlockNode, FCallTwoArgBlockPassNode, FCallTwoArgNode

public class FCallNode
extends Node
implements INameNode, IArgumentNode, BlockAcceptingNode

Represents a method call with self as an implicit receiver.


Field Summary
protected  Node argsNode
           
 CallSite callAdapter
           
protected  Node iterNode
           
 
Fields inherited from class org.jruby.ast.Node
ASSIGNMENT_BYTELIST, CLASS_VARIABLE_BYTELIST, CONSTANT_BYTELIST, EXPRESSION_BYTELIST, FALSE_BYTELIST, GLOBAL_VARIABLE_BYTELIST, INSTANCE_VARIABLE_BYTELIST, LOCAL_VARIABLE_BYTELIST, LOCAL_VARIABLE_IN_BLOCK_BYTELIST, METHOD_BYTELIST, NIL_BYTELIST, SELF_BYTELIST, SUPER_BYTELIST, TRUE_BYTELIST, YIELD_BYTELIST
 
Constructor Summary
  FCallNode(ISourcePosition position, java.lang.String name, Node argsNode)
          Deprecated. 
protected FCallNode(ISourcePosition position, java.lang.String name, Node argsNode, Node iterNode)
           
 
Method Summary
 java.lang.Object accept(NodeVisitor iVisitor)
          Accept for the visitor pattern.
 java.util.List<Node> childNodes()
           
 org.jruby.util.ByteList definition(Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock)
           
 Node getArgsNode()
          Gets the argsNode.
 Node getIterNode()
          Get the node that represents a block or a block variable.
 java.lang.String getName()
          Gets the name.
 NodeType getNodeType()
           
 IRubyObject interpret(Ruby runtime, ThreadContext context, IRubyObject self, Block aBlock)
           
 Node setArgsNode(Node argsNode)
          Set the argsNode.
 Node setIterNode(Node iterNode)
           
 
Methods inherited from class org.jruby.ast.Node
assign, createList, getNodeName, getPosition, isInvisible, setPosition, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

argsNode

protected Node argsNode

iterNode

protected Node iterNode

callAdapter

public CallSite callAdapter
Constructor Detail

FCallNode

@Deprecated
public FCallNode(ISourcePosition position,
                            java.lang.String name,
                            Node argsNode)
Deprecated. 


FCallNode

protected FCallNode(ISourcePosition position,
                    java.lang.String name,
                    Node argsNode,
                    Node iterNode)
Method Detail

getNodeType

public NodeType getNodeType()
Specified by:
getNodeType in class Node
Returns:
the nodeId

accept

public java.lang.Object accept(NodeVisitor iVisitor)
Accept for the visitor pattern.

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

getIterNode

public Node getIterNode()
Get the node that represents a block or a block variable.

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.

Specified by:
getArgsNode in interface IArgumentNode
Returns:
Returns a Node

setArgsNode

public Node setArgsNode(Node argsNode)
Set the argsNode. This is for re-writer and 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.

Specified by:
getName in interface INameNode
Returns:
Returns a String

childNodes

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

interpret

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

definition

public org.jruby.util.ByteList definition(Ruby runtime,
                                          ThreadContext context,
                                          IRubyObject self,
                                          Block aBlock)
Overrides:
definition in class Node


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