Class SynchronizedNode
- java.lang.Object
-
- org.checkerframework.dataflow.cfg.node.Node
-
- org.checkerframework.dataflow.cfg.node.SynchronizedNode
-
- All Implemented Interfaces:
org.plumelib.util.UniqueId
public class SynchronizedNode extends Node
This represents the start and end of a synchronized code block. If startOfBlock == true it is the node preceding a synchronized code block. Otherwise it is the node immediately after a synchronized code block.
-
-
Field Summary
Fields Modifier and Type Field Description protected Nodeexpressionprotected booleanstartOfBlockprotected com.sun.source.tree.SynchronizedTreetree
-
Constructor Summary
Constructors Constructor Description SynchronizedNode(com.sun.source.tree.SynchronizedTree tree, Node expression, boolean startOfBlock, javax.lang.model.util.Types types)
-
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)NodegetExpression()booleangetIsStartOfBlock()java.util.Collection<Node>getOperands()com.sun.source.tree.SynchronizedTreegetTree()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
-
-
-
-
Field Detail
-
tree
protected final com.sun.source.tree.SynchronizedTree tree
-
expression
protected final Node expression
-
startOfBlock
protected final boolean startOfBlock
-
-
Constructor Detail
-
SynchronizedNode
public SynchronizedNode(com.sun.source.tree.SynchronizedTree tree, Node expression, boolean startOfBlock, javax.lang.model.util.Types types)
-
-
Method Detail
-
getTree
public com.sun.source.tree.SynchronizedTree getTree()
Description copied from class:NodeReturns theTreein the abstract syntax tree, ornullif no corresponding tree exists. For instance, this is the case for anImplicitThisNode.
-
getExpression
public Node getExpression()
-
getIsStartOfBlock
public boolean getIsStartOfBlock()
-
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
-
-