|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soot.jimple.toolkits.pointer.InstanceKey
public class InstanceKey
An instance key is a static representative of a runtime object.
An instance key, if based on a StrongLocalMustAliasAnalysis
,
is guaranteed to represent a single runtime object within a
its declared method. If based on a (non-strong) LocalMustAliasAnalysis
,
it represents the value of a variable at a single location, which itself can
represent multiple runtime objects, if the location is contained in a loop.
See Sable TR 2007-8 for details.
Field Summary | |
---|---|
protected Local |
assignedLocal
|
protected int |
hashCode
|
protected LocalMustAliasAnalysis |
lmaa
|
protected LocalMustNotAliasAnalysis |
lnma
|
protected SootMethod |
owner
|
protected PointsToSet |
pts
|
protected Stmt |
stmtAfterAssignStmt
|
Constructor Summary | |
---|---|
InstanceKey(Local local,
Stmt stmt,
SootMethod owner,
LocalMustAliasAnalysis lmaa,
LocalMustNotAliasAnalysis lmna)
Creates a new instance key representing the value stored in local, just before stmt. |
Method Summary | |
---|---|
protected int |
computeHashCode()
(Pre)computes the hash code. |
boolean |
equals(Object obj)
|
Local |
getLocal()
|
SootMethod |
getOwner()
|
PointsToSet |
getPointsToSet()
|
Stmt |
getStmt()
|
int |
hashCode()
|
boolean |
haveLocalInformation()
|
boolean |
isOfReferenceType()
|
boolean |
mayNotAlias(InstanceKey otherKey)
|
boolean |
mustAlias(InstanceKey otherKey)
|
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected final Local assignedLocal
protected final LocalMustAliasAnalysis lmaa
protected final LocalMustNotAliasAnalysis lnma
protected final Stmt stmtAfterAssignStmt
protected final SootMethod owner
protected final int hashCode
protected final PointsToSet pts
Constructor Detail |
---|
public InstanceKey(Local local, Stmt stmt, SootMethod owner, LocalMustAliasAnalysis lmaa, LocalMustNotAliasAnalysis lmna)
local
- the local variable whose value this key representsstmt
- the statement at which this key represents the valueowner
- the method containing locallmaa
- a LocalMustAliasAnalysis
lmna
- a LocalMustNotAliasAnalysis
Method Detail |
---|
public boolean mustAlias(InstanceKey otherKey)
public boolean mayNotAlias(InstanceKey otherKey)
public PointsToSet getPointsToSet()
public Local getLocal()
public boolean haveLocalInformation()
public String toString()
toString
in class Object
public int hashCode()
hashCode
in class Object
protected int computeHashCode()
public boolean equals(Object obj)
equals
in class Object
public boolean isOfReferenceType()
public SootMethod getOwner()
public Stmt getStmt()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |