Class AbstractReflectionInterpreter
java.lang.Object
com.ibm.wala.analysis.reflection.AbstractReflectionInterpreter
- All Implemented Interfaces:
CHAContextInterpreter
,RTAContextInterpreter
,SSAContextInterpreter
- Direct Known Subclasses:
ClassNewInstanceContextInterpreter
,FactoryBypassInterpreter
,ReflectiveInvocationInterpreter
An abstract superclass of various
SSAContextInterpreter
s that deal with reflection
methods.-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
A warning when we find flow of a factory allocation to a cast toSerializable
protected static class
A warning when we expect excessive pollution from a factory methodprotected static class
A warning when we fail to find subtypes for a factory methodprotected class
-
Field Summary
Modifier and TypeFieldDescriptionprotected IAnalysisCacheView
cache of analysis informationprotected static final int
protected static final boolean
protected int
protected AnalysisOptions
Governing analysis optionsprotected final Map
<TypeReference, Integer> -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected int
protected int
protected int
protected int
protected TypeAbstraction
typeRef2TypeAbstraction
(IClassHierarchy cha, TypeReference type) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.ibm.wala.ipa.callgraph.cha.CHAContextInterpreter
iterateCallSites, understands
Methods inherited from interface com.ibm.wala.ipa.callgraph.propagation.rta.RTAContextInterpreter
iterateFieldsRead, iterateFieldsWritten, iterateNewSites, recordFactoryType
Methods inherited from interface com.ibm.wala.ipa.callgraph.propagation.SSAContextInterpreter
getCFG, getDU, getIR, getIRView, getNumberOfStatements
-
Field Details
-
DEBUG
protected static final boolean DEBUG- See Also:
-
CONE_BOUND
protected static final int CONE_BOUND- See Also:
-
indexLocal
protected int indexLocal -
typeIndexMap
-
options
Governing analysis options -
cache
cache of analysis information
-
-
Constructor Details
-
AbstractReflectionInterpreter
public AbstractReflectionInterpreter()
-
-
Method Details
-
getLocalForType
-
getExceptionsForType
-
getCallSiteForType
-
getNewSiteForType
-
typeRef2TypeAbstraction
- Returns:
- a TypeAbstraction object representing this type. We just use ConeTypes by default, since we don't propagate information allowing us to distinguish between points and cones yet.
-