|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.ibm.wala.ipa.callgraph.propagation.cfa.ZeroXInstanceKeys
public class ZeroXInstanceKeys
| Field Summary | |
|---|---|
static int |
ALLOCATIONS
An ALLOCATIONS - based policy distinguishes instances by allocation site. |
static TypeReference |
JavaLangStringBuffer
|
static int |
NONE
The NONE policy is not allocation-site based |
static int |
SMUSH_MANY
This variant counts the N, number of allocation sites of a particular type T in each method. |
static int |
SMUSH_PRIMITIVE_HOLDERS
A policy variant where if a type T has only primitive instance fields, then instances of type T are NOT disambiguated by allocation site. |
static int |
SMUSH_STRINGS
A policy variant where String and StringBuffers are NOT disambiguated according to allocation site. |
static int |
SMUSH_THROWABLES
A policy variant where Throwable instances are NOT disambiguated according to allocation site. |
| Constructor Summary | |
|---|---|
ZeroXInstanceKeys(AnalysisOptions options,
ClassHierarchy cha,
RTAContextInterpreter contextInterpreter,
WarningSet warnings,
int policy)
|
|
| Method Summary | |
|---|---|
protected ClassHierarchy |
getClassHierarchy()
|
InstanceKey |
getInstanceKeyForAllocation(CGNode node,
NewSiteReference allocation)
|
InstanceKey |
getInstanceKeyForClassObject(TypeReference type)
|
InstanceKey |
getInstanceKeyForConstant(java.lang.Object S)
|
InstanceKey |
getInstanceKeyForMultiNewArray(CGNode node,
NewSiteReference allocation,
int dim)
|
InstanceKey |
getInstanceKeyForPEI(CGNode node,
ProgramCounter pei,
TypeReference type)
|
java.lang.String |
getStringConstantForInstanceKey(InstanceKey I)
|
boolean |
isInteresting(IClass C)
A class is "interesting" iff we distinguish instances of the class |
boolean |
isStackTraceElement(IClass C)
|
static boolean |
isStringish(IClass C)
|
boolean |
isThrowable(IClass C)
|
boolean |
smushThrowables()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final TypeReference JavaLangStringBuffer
public static final int NONE
public static final int ALLOCATIONS
public static final int SMUSH_STRINGS
public static final int SMUSH_THROWABLES
public static final int SMUSH_PRIMITIVE_HOLDERS
public static final int SMUSH_MANY
| Constructor Detail |
|---|
public ZeroXInstanceKeys(AnalysisOptions options,
ClassHierarchy cha,
RTAContextInterpreter contextInterpreter,
WarningSet warnings,
int policy)
options - cha - warnings - policy - | Method Detail |
|---|
public boolean smushThrowables()
public InstanceKey getInstanceKeyForAllocation(CGNode node,
NewSiteReference allocation)
getInstanceKeyForAllocation in interface InstanceKeyFactory
public InstanceKey getInstanceKeyForMultiNewArray(CGNode node,
NewSiteReference allocation,
int dim)
getInstanceKeyForMultiNewArray in interface InstanceKeyFactorypublic InstanceKey getInstanceKeyForConstant(java.lang.Object S)
getInstanceKeyForConstant in interface InstanceKeyFactorypublic java.lang.String getStringConstantForInstanceKey(InstanceKey I)
getStringConstantForInstanceKey in interface InstanceKeyFactory
public InstanceKey getInstanceKeyForPEI(CGNode node,
ProgramCounter pei,
TypeReference type)
getInstanceKeyForPEI in interface InstanceKeyFactorypublic InstanceKey getInstanceKeyForClassObject(TypeReference type)
getInstanceKeyForClassObject in interface InstanceKeyFactorypublic boolean isInteresting(IClass C)
public static boolean isStringish(IClass C)
public boolean isThrowable(IClass C)
public boolean isStackTraceElement(IClass C)
protected ClassHierarchy getClassHierarchy()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||