public abstract class AbstractReflectionInterpreter extends java.lang.Object implements SSAContextInterpreter
SSAContextInterpreters that deal with reflection
methods.| Modifier and Type | Class and Description |
|---|---|
protected static class |
AbstractReflectionInterpreter.IgnoreSerializableWarning
A warning when we find flow of a factory allocation to a cast to
Serializable |
protected static class |
AbstractReflectionInterpreter.ManySubtypesWarning
A warning when we expect excessive pollution from a factory method
|
protected static class |
AbstractReflectionInterpreter.NoSubtypesWarning
A warning when we fail to find subtypes for a factory method
|
protected class |
AbstractReflectionInterpreter.SpecializedMethod |
| Modifier and Type | Field and Description |
|---|---|
protected IAnalysisCacheView |
cache
cache of analysis information
|
protected static int |
CONE_BOUND |
protected static boolean |
DEBUG |
protected int |
indexLocal |
protected AnalysisOptions |
options
Governing analysis options
|
protected java.util.Map<TypeReference,java.lang.Integer> |
typeIndexMap |
| Constructor and Description |
|---|
AbstractReflectionInterpreter() |
| Modifier and Type | Method and Description |
|---|---|
protected int |
getCallSiteForType(TypeReference T) |
protected int |
getExceptionsForType(TypeReference T) |
protected int |
getLocalForType(TypeReference T) |
protected int |
getNewSiteForType(TypeReference T) |
protected TypeAbstraction |
typeRef2TypeAbstraction(IClassHierarchy cha,
TypeReference type) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetCFG, getDU, getIR, getIRView, getNumberOfStatementsiterateFieldsRead, iterateFieldsWritten, iterateNewSites, recordFactoryTypeiterateCallSites, understandsprotected static final boolean DEBUG
protected static final int CONE_BOUND
protected int indexLocal
protected final java.util.Map<TypeReference,java.lang.Integer> typeIndexMap
protected AnalysisOptions options
protected IAnalysisCacheView cache
protected int getLocalForType(TypeReference T)
protected int getExceptionsForType(TypeReference T)
protected int getCallSiteForType(TypeReference T)
protected int getNewSiteForType(TypeReference T)
protected TypeAbstraction typeRef2TypeAbstraction(IClassHierarchy cha, TypeReference type)