Class MarkerNode
- java.lang.Object
-
- org.checkerframework.dataflow.cfg.node.Node
-
- org.checkerframework.dataflow.cfg.node.MarkerNode
-
- All Implemented Interfaces:
org.plumelib.util.UniqueId
- Direct Known Subclasses:
CatchMarkerNode
public class MarkerNode extends Node
MarkerNodes are no-op Nodes used for debugging information. They can hold a Tree and a message, which will be part of the String representation of the MarkerNode.An example use case for MarkerNodes is representing switch statements.
-
-
Constructor Summary
Constructors Constructor Description MarkerNode(@Nullable com.sun.source.tree.Tree tree, java.lang.String message, 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.boolean
equals(@Nullable java.lang.Object obj)
java.lang.String
getMessage()
java.util.Collection<Node>
getOperands()
@Nullable com.sun.source.tree.Tree
getTree()
Returns theTree
in the abstract syntax tree, ornull
if no corresponding tree exists.int
hashCode()
java.lang.String
toString()
-
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 @Nullable com.sun.source.tree.Tree tree
-
message
protected final java.lang.String message
-
-
Constructor Detail
-
MarkerNode
public MarkerNode(@Nullable com.sun.source.tree.Tree tree, java.lang.String message, javax.lang.model.util.Types types)
-
-
Method Detail
-
getMessage
public java.lang.String getMessage()
-
getTree
public @Nullable com.sun.source.tree.Tree 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
public <R,P> R accept(NodeVisitor<R,P> visitor, P p)
Description copied from class:Node
Accept method of the visitor pattern.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(@Nullable java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
getOperands
@SideEffectFree public java.util.Collection<Node> getOperands()
Description copied from class:Node
- Specified by:
getOperands
in classNode
- Returns:
- a collection containing all of the operand
Node
s of thisNode
-
-