private static class CoalesceVariableNames.LiveRangeChecker extends ControlFlowGraph.AbstractCfgNodeTraversalCallback
Modifier and Type | Field and Description |
---|---|
(package private) boolean |
crossed |
private Var |
def |
(package private) boolean |
defFound |
private Var |
use |
Constructor and Description |
---|
LiveRangeChecker(Var def,
Var use) |
Modifier and Type | Method and Description |
---|---|
(package private) Var |
getDef() |
private static boolean |
isAssignTo(Var var,
Node n,
Node parent) |
private static boolean |
isReadFrom(Var var,
Node name) |
static boolean |
shouldVisit(Node n) |
void |
visit(NodeTraversal t,
Node n,
Node parent)
Visits a node in postorder (after its children have been visited).
|
shouldTraverse
boolean defFound
boolean crossed
private final Var def
private final Var use
Var getDef()
public static boolean shouldVisit(Node n)
public void visit(NodeTraversal t, Node n, Node parent)
NodeTraversal.Callback
Visits a node in postorder (after its children have been visited).
A node is visited only if all its parents should be traversed
(NodeTraversal.Callback.shouldTraverse(NodeTraversal, Node, Node)
).
Implementations can have side effects (e.g. modifying the parse tree).