public abstract class PtSensVisitor<VarType extends ContextVar>
extends java.lang.Object
| Modifier and Type | Field and Description | 
|---|---|
java.util.List<VarType> | 
outList  | 
protected GeomPointsTo | 
ptsProvider  | 
protected boolean | 
readyToUse  | 
protected java.util.Map<Node,java.util.List<VarType>> | 
tableView  | 
| Constructor and Description | 
|---|
PtSensVisitor()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
debugPrint()
Print the objects. 
 | 
void | 
finish()
Called after each round of collection. 
 | 
java.util.List<VarType> | 
getCSList(Node var)
Obtain the list of context sensitive objects pointed to by var. 
 | 
boolean | 
getUsageState()
The visitor contains valid information only when this function returns true. 
 | 
boolean | 
hasNonEmptyIntersection(PtSensVisitor<VarType> other)
Tests if two containers have contain same things. 
 | 
int | 
numOfDiffObjects()
Return the number of different points-to targets. 
 | 
void | 
prepare()
Called before each round of collection. 
 | 
PointsToSet | 
toSparkCompatiableResult(VarNode vn)
Transform the result to SPARK style context insensitive points-to set. 
 | 
abstract boolean | 
visit(Node var,
     long L,
     long R,
     int sm_int)
We use visitor pattern to collect contexts. 
 | 
protected boolean readyToUse
protected GeomPointsTo ptsProvider
public java.util.List<VarType extends ContextVar> outList
protected java.util.Map<Node,java.util.List<VarType extends ContextVar>> tableView
public void prepare()
public void finish()
public boolean getUsageState()
public int numOfDiffObjects()
public boolean hasNonEmptyIntersection(PtSensVisitor<VarType> other)
public java.util.List<VarType> getCSList(Node var)
var - public PointsToSet toSparkCompatiableResult(VarNode vn)
vn: - the querying pointerpublic void debugPrint()
public abstract boolean visit(Node var, long L, long R, int sm_int)
var - L - R - sm_int - : the integer ID of the SootMethod