Class LocalVariableNode
- java.lang.Object
-
- org.checkerframework.dataflow.cfg.node.Node
-
- org.checkerframework.dataflow.cfg.node.LocalVariableNode
-
- All Implemented Interfaces:
org.plumelib.util.UniqueId
public class LocalVariableNode extends Node
A node for a local variable or a parameter:identifier
We allow local variable uses introduced by theCFGBuilderwithout corresponding ASTTrees.
-
-
Constructor Summary
Constructors Constructor Description LocalVariableNode(com.sun.source.tree.Tree tree)Create a new local variable node for the given tree.LocalVariableNode(com.sun.source.tree.Tree tree, @Nullable Node receiver)Create a new local variable node for the given tree and receiver.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,P>
Raccept(NodeVisitor<R,P> visitor, P p)Accept method of the visitor pattern.booleanequals(@Nullable java.lang.Object obj)javax.lang.model.element.VariableElementgetElement()Returns the element associated with this local variable.java.lang.StringgetName()java.util.Collection<Node>getOperands()@Nullable NodegetReceiver()The receiver node for the local variable,nullotherwise.com.sun.source.tree.TreegetTree()Returns theTreein the abstract syntax tree, ornullif no corresponding tree exists.inthashCode()java.lang.StringtoString()-
Methods inherited from class org.checkerframework.dataflow.cfg.node.Node
getBlock, getInSource, getTransitiveOperands, getType, getUid, isLValue, nodeCollectionToString, setBlock, setInSource, setLValue, toStringDebug
-
-
-
-
Constructor Detail
-
LocalVariableNode
public LocalVariableNode(com.sun.source.tree.Tree tree)
Create a new local variable node for the given tree.- Parameters:
tree- the tree for the local variable: a VariableTree or an IdentifierTree
-
LocalVariableNode
public LocalVariableNode(com.sun.source.tree.Tree tree, @Nullable Node receiver)Create a new local variable node for the given tree and receiver.- Parameters:
tree- the tree for the local variable: a VariableTree or an IdentifierTreereceiver- the receiver for the local variable, or null if none
-
-
Method Detail
-
getElement
public javax.lang.model.element.VariableElement getElement()
Returns the element associated with this local variable.- Returns:
- the element associated with this local variable
-
getReceiver
public @Nullable Node getReceiver()
The receiver node for the local variable,nullotherwise.
-
getName
public java.lang.String getName()
-
getTree
public com.sun.source.tree.Tree getTree()
Description copied from class:NodeReturns theTreein the abstract syntax tree, ornullif no corresponding tree exists. For instance, this is the case for anImplicitThisNode.
-
accept
public <R,P> R accept(NodeVisitor<R,P> visitor, P p)
Description copied from class:NodeAccept method of the visitor pattern.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
equals
public boolean equals(@Nullable java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
getOperands
@SideEffectFree public java.util.Collection<Node> getOperands()
Description copied from class:Node- Specified by:
getOperandsin classNode- Returns:
- a collection containing all of the operand
Nodes of thisNode
-
-