Class AnalysisFactory<Analysis>
- java.lang.Object
-
- edu.umd.cs.findbugs.classfile.engine.bcel.AnalysisFactory<Analysis>
-
- All Implemented Interfaces:
IAnalysisEngine<MethodDescriptor,Analysis>
,IMethodAnalysisEngine<Analysis>
- Direct Known Subclasses:
BackwardTypeQualifierDataflowFactoryFactory
,BlockTypeAnalysisFactory
,CallListDataflowFactory
,CFGFactory
,CompactLocationNumberingFactory
,ConstantDataflowFactory
,DepthFirstSearchFactory
,DominatorsAnalysisFactory
,ExceptionSetFactoryFactory
,ForwardTypeQualifierDataflowFactoryFactory
,IsNullValueDataflowFactory
,LiveLocalStoreDataflowFactory
,LoadDataflowFactory
,LoadedFieldSetFactory
,LockCheckerFactory
,LockDataflowFactory
,MethodBytecodeSetFactory
,MethodFactory
,MethodGenFactory
,NonExceptionPostdominatorsAnalysisFactory
,NonImplicitExceptionPostDominatorsAnalysisFactory
,ObligationDataflowFactory
,OpcodeStack.JumpInfoFactory
,ParameterSignatureListFactory
,ReturnPathDataflowFactory
,ReturnPathTypeDataflowFactory
,ReverseDepthFirstSearchFactory
,StackMapAnalyzer.StackMapAnalysisFactory
,StoreDataflowFactory
,TypeDataflowFactory
,UnconditionalValueDerefDataflowFactory
,UnpackedCodeFactory
,UsagesRequiringNonNullValuesFactory
,ValueNumberDataflowFactory
public abstract class AnalysisFactory<Analysis> extends java.lang.Object implements IMethodAnalysisEngine<Analysis>
Abstract factory class for creating analysis objects.
-
-
Constructor Summary
Constructors Constructor Description AnalysisFactory(java.lang.String analysisName, java.lang.Class<Analysis> analysisClass)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected AssertionMethods
getAssertionMethods(IAnalysisCache analysisCache, ClassDescriptor classDescriptor)
protected CFG
getCFG(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected CompactLocationNumbering
getCompactLocationNumbering(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected org.apache.bcel.generic.ConstantPoolGen
getConstantPoolGen(IAnalysisCache analysisCache, ClassDescriptor classDescriptor)
protected DepthFirstSearch
getDepthFirstSearch(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected ExceptionSetFactory
getExceptionSetFactory(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected IsNullValueDataflow
getIsNullValueDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected org.apache.bcel.classfile.JavaClass
getJavaClass(IAnalysisCache analysisCache, ClassDescriptor classDescriptor)
protected LoadedFieldSet
getLoadedFieldSet(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected org.apache.bcel.classfile.Method
getMethod(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected org.apache.bcel.generic.MethodGen
getMethodGen(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected ReverseDepthFirstSearch
getReverseDepthFirstSearch(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected TypeDataflow
getTypeDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
protected ValueNumberDataflow
getValueNumberDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor)
void
registerWith(IAnalysisCache analysisCache)
Register the analysis engine with given analysis cache.java.lang.String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface edu.umd.cs.findbugs.classfile.IAnalysisEngine
analyze
-
-
-
-
Constructor Detail
-
AnalysisFactory
public AnalysisFactory(java.lang.String analysisName, java.lang.Class<Analysis> analysisClass)
Constructor.- Parameters:
analysisName
- name of the analysis factory: for diagnostics/debugging
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
registerWith
public void registerWith(IAnalysisCache analysisCache)
Description copied from interface:IAnalysisEngine
Register the analysis engine with given analysis cache.- Specified by:
registerWith
in interfaceIAnalysisEngine<MethodDescriptor,Analysis>
- Parameters:
analysisCache
- the analysis cache
-
getCFG
protected CFG getCFG(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getDepthFirstSearch
protected DepthFirstSearch getDepthFirstSearch(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getConstantPoolGen
protected org.apache.bcel.generic.ConstantPoolGen getConstantPoolGen(IAnalysisCache analysisCache, ClassDescriptor classDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getMethodGen
protected org.apache.bcel.generic.MethodGen getMethodGen(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getCompactLocationNumbering
protected CompactLocationNumbering getCompactLocationNumbering(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getValueNumberDataflow
protected ValueNumberDataflow getValueNumberDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getAssertionMethods
protected AssertionMethods getAssertionMethods(IAnalysisCache analysisCache, ClassDescriptor classDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getJavaClass
protected org.apache.bcel.classfile.JavaClass getJavaClass(IAnalysisCache analysisCache, ClassDescriptor classDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getMethod
protected org.apache.bcel.classfile.Method getMethod(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getReverseDepthFirstSearch
protected ReverseDepthFirstSearch getReverseDepthFirstSearch(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getExceptionSetFactory
protected ExceptionSetFactory getExceptionSetFactory(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getIsNullValueDataflow
protected IsNullValueDataflow getIsNullValueDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getTypeDataflow
protected TypeDataflow getTypeDataflow(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
getLoadedFieldSet
protected LoadedFieldSet getLoadedFieldSet(IAnalysisCache analysisCache, MethodDescriptor methodDescriptor) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
-