Class ObjectCreationNode
java.lang.Object
org.checkerframework.dataflow.cfg.node.Node
org.checkerframework.dataflow.cfg.node.ObjectCreationNode
- All Implemented Interfaces:
org.plumelib.util.UniqueId
A node for new object creation.
new constructor(arg1, arg2, ...) enclosingExpression.new constructor(arg1, arg2, ...)
-
Field Summary
Modifier and TypeFieldDescriptionThe arguments of the object creation.protected final @Nullable ClassDeclarationNode
Class body for anonymous classes, otherwise null.protected final Node
The constructor node of the object creation.The enclosing expression of the object creation or null.protected final NewClassTree
The tree for the object creation. -
Constructor Summary
ConstructorDescriptionObjectCreationNode
(NewClassTree tree, @Nullable Node enclosingExpr, Node constructor, List<Node> arguments, @Nullable ClassDeclarationNode classbody) Constructs aObjectCreationNode
. -
Method Summary
Modifier and TypeMethodDescription<R,
P> R accept
(NodeVisitor<R, P> visitor, P p) Accept method of the visitor pattern.boolean
getArgument
(int i) Returns the i-th explicit argument to the object creation.Returns the explicit arguments to the object creation.Returns the classbody.Returns the constructor node.Returns the enclosing expression node, which only exists if it is an inner class instantiation.getTree()
Returns theTree
in the abstract syntax tree, ornull
if no corresponding tree exists.int
hashCode()
toString()
Methods inherited from class org.checkerframework.dataflow.cfg.node.Node
getBlock, getInSource, getTransitiveOperands, getType, getUid, isLValue, nodeCollectionToString, setBlock, setInSource, setLValue, toStringDebug
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.plumelib.util.UniqueId
getClassAndUid
-
Field Details
-
tree
The tree for the object creation. -
enclosingExpression
The enclosing expression of the object creation or null. -
constructor
The constructor node of the object creation. -
arguments
The arguments of the object creation. -
classbody
Class body for anonymous classes, otherwise null.
-
-
Constructor Details
-
ObjectCreationNode
public ObjectCreationNode(NewClassTree tree, @Nullable Node enclosingExpr, Node constructor, List<Node> arguments, @Nullable ClassDeclarationNode classbody) Constructs aObjectCreationNode
.- Parameters:
tree
- the NewClassTreeenclosingExpr
- the enclosing expression Node if it exists, or nullconstructor
- the constructor nodearguments
- the passed argumentsclassbody
- the ClassDeclarationNode
-
-
Method Details
-
getConstructor
Returns the constructor node.- Returns:
- the constructor node
-
getArguments
Returns the explicit arguments to the object creation.- Returns:
- the arguments
-
getArgument
Returns the i-th explicit argument to the object creation.- Parameters:
i
- the index of the argument- Returns:
- the argument
-
getEnclosingExpression
Returns the enclosing expression node, which only exists if it is an inner class instantiation.- Returns:
- the enclosing type expression node
-
getClassBody
Returns the classbody.- Returns:
- the classbody
-
getTree
Description copied from class:Node
Returns theTree
in the abstract syntax tree, ornull
if no corresponding tree exists. For instance, this is the case for anImplicitThisNode
. -
accept
Description copied from class:Node
Accept method of the visitor pattern. -
toString
-
equals
-
hashCode
-
getOperands
Description copied from class:Node
- Specified by:
getOperands
in classNode
- Returns:
- a collection containing all of the operand
Node
s of thisNode
-