public class MethodInvocationNode extends Node
target(arg1, arg2, ...)CFGs may contain
MethodInvocationNodes that correspond to no AST Tree, in which
 case, the tree field will be null.| Modifier and Type | Field and Description | 
|---|---|
protected List<Node> | 
arguments
The arguments of the method invocation. 
 | 
protected @Nullable ExpressionTree | 
iterableExpression
If this MethodInvocationNode is a node for an  
Iterator.next() desugared from an
 enhanced for loop, then the iterExpression field is the expression in the for loop,
 e.g., iter in for(Object o: iter. | 
protected MethodAccessNode | 
target
The target of the method invocation -- that is, the receiver. 
 | 
protected @Nullable MethodInvocationTree | 
tree
The tree for the method invocation. 
 | 
protected TreePath | 
treePath
The tree path to the method invocation. 
 | 
| Constructor and Description | 
|---|
MethodInvocationNode(MethodAccessNode target,
                    List<Node> arguments,
                    TreePath treePath)  | 
MethodInvocationNode(@Nullable MethodInvocationTree tree,
                    MethodAccessNode target,
                    List<Node> arguments,
                    TreePath treePath)
Create a MethodInvocationNode. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
<R,P> R | 
accept(NodeVisitor<R,P> visitor,
      P p)
Accept method of the visitor pattern. 
 | 
boolean | 
equals(@Nullable Object obj)  | 
Node | 
getArgument(int i)  | 
List<Node> | 
getArguments()  | 
@Nullable ExpressionTree | 
getIterableExpression()
If this MethodInvocationNode is a node for an  
Iterator.next() desugared from an
 enhanced for loop, then return the expression in the for loop, e.g., iter in for(Object o: iter. | 
Collection<Node> | 
getOperands()
 | 
MethodAccessNode | 
getTarget()  | 
@Nullable MethodInvocationTree | 
getTree()
Returns the  
Tree in the abstract syntax tree, or null if no corresponding
 tree exists. | 
TreePath | 
getTreePath()  | 
int | 
hashCode()  | 
void | 
setIterableExpression(@Nullable ExpressionTree iterableExpression)
Set the iterable expression from a for loop. 
 | 
String | 
toString()  | 
getAssignmentContext, getBlock, getInSource, getTransitiveOperands, getType, getUid, isLValue, nodeCollectionToString, setAssignmentContext, setBlock, setInSource, setLValue, toStringDebugprotected final @Nullable MethodInvocationTree tree
protected final MethodAccessNode target
protected final TreePath treePath
protected @Nullable ExpressionTree iterableExpression
Iterator.next() desugared from an
 enhanced for loop, then the iterExpression field is the expression in the for loop,
 e.g., iter in for(Object o: iter.public MethodInvocationNode(@Nullable MethodInvocationTree tree, MethodAccessNode target, List<Node> arguments, TreePath treePath)
tree - for the method invocationtarget - of the method invocation -- that is, the receiver. For a static method, may be
     a class name.arguments - arguments of the method invocationtreePath - path to the method invocationpublic MethodInvocationNode(MethodAccessNode target, List<Node> arguments, TreePath treePath)
public MethodAccessNode getTarget()
public Node getArgument(int i)
public TreePath getTreePath()
public @Nullable ExpressionTree getIterableExpression()
Iterator.next() desugared from an
 enhanced for loop, then return the expression in the for loop, e.g., iter in for(Object o: iter. Otherwise, return null.Iterator.next() from an
     enhanced for looppublic void setIterableExpression(@Nullable ExpressionTree iterableExpression)
iterableExpression - iterable expressiongetIterableExpression()public @Nullable MethodInvocationTree getTree()
NodeTree in the abstract syntax tree, or null if no corresponding
 tree exists. For instance, this is the case for an ImplicitThisLiteralNode.public <R,P> R accept(NodeVisitor<R,P> visitor, P p)
Nodepublic Collection<Node> getOperands()
NodegetOperands in class NodeNodes of this Node