|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--envgen.analysis.stat.locs.SymLocValue
|
+--envgen.analysis.stat.locs.SymLoc
|
+--envgen.analysis.stat.locs.SymLocPath
Implementation of symbolic location that represents a memory location. There are four different symbolic locations that can be identified by the analysis: unit locations, locations reachable from the unit through a chain of references, locations in the environment, and locations that the analysis can't identify (unknown locations).
| Field Summary | |
(package private) java.util.List |
accessors
Represents the chain of the fields that need to be followed to reach the modified field. |
static int |
CONCRETE_LOC
Used to identify unit locations. |
(package private) int |
debug
|
(package private) int |
length
|
static int |
REACHABLE_LOC
Used to identify locations reachable from a unit location through a chain of references through the unit. |
(package private) Root |
root
Represents the very first base (b) of the symbolic location. |
| Fields inherited from class envgen.analysis.stat.locs.SymLoc |
kind, modifiedAccessor, modifiedType, singular, type |
| Constructor Summary | |
SymLocPath(int kind,
soot.Type type)
Used to create an environment or unknown location. |
|
SymLocPath(Root root,
soot.Type type)
|
|
SymLocPath(SymLocPath loc)
Copy constructor. |
|
| Method Summary | |
void |
addAccessor(Accessor a)
Appends sf to the end of the list of fields. |
void |
addAccessors(java.util.List a)
Appends a list of fields to fields. |
boolean |
equals(SymLocPath second)
|
java.util.List |
getAccessors()
Returns a list of reachable fields for a location. |
java.lang.String |
getAccessorsCode(java.lang.String rootStr)
|
int |
getChainLength()
Returns the length of the fields chain. |
java.lang.String |
getCode()
Generates code representation of symbolic location appropriate for code generation. |
Root |
getRoot()
Returns top level location: either it's a static fields of the unit or a parameter. |
boolean |
isConcreteLoc()
Returns true if this is a concrete unit location. |
boolean |
isReachableLoc()
Returns true if this location is reachable from unit. |
void |
removeLastAccessor()
|
void |
setCastType(soot.Type t)
|
void |
setChainLength(int i)
|
void |
setRoot(Root root)
|
java.lang.String |
toString()
|
| Methods inherited from class envgen.analysis.stat.locs.SymLoc |
apply, clone, equals, equivHashCode, equivTo, getKind, getModifiedAccessor, getModifiedType, getSingular, getType, getUseBoxes, isSingular, setKind, setModifiedAccessor, setModifiedType, setSingular, setType, toString |
| Methods inherited from class envgen.analysis.stat.locs.SymLocValue |
equals |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final int CONCRETE_LOC
public static final int REACHABLE_LOC
Root root
java.util.List accessors
int length
int debug
| Constructor Detail |
public SymLocPath(int kind,
soot.Type type)
public SymLocPath(Root root,
soot.Type type)
public SymLocPath(SymLocPath loc)
| Method Detail |
public boolean isConcreteLoc()
public boolean isReachableLoc()
public void addAccessor(Accessor a)
sf to the end of the list of fields.
public void addAccessors(java.util.List a)
fields. Used when mapping
called method summary into a summary of a callee.
public void removeLastAccessor()
public Root getRoot()
public void setRoot(Root root)
public void setCastType(soot.Type t)
setCastType in class SymLocpublic java.util.List getAccessors()
public int getChainLength()
fields chain.
public void setChainLength(int i)
public boolean equals(SymLocPath second)
public java.lang.String getCode()
getCode in class SymLocpublic java.lang.String toString()
toString in class SymLocpublic java.lang.String getAccessorsCode(java.lang.String rootStr)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||