Package | Description |
---|---|
edu.umd.cs.findbugs.ba |
A bytecode analysis framework for BCEL, providing CFG construction,
generic dataflow analysis, and a variety of specific dataflow analyses.
|
edu.umd.cs.findbugs.ba.deref | |
edu.umd.cs.findbugs.ba.jsr305 |
Support for analyzing code containing JSR-305 type qualifier annotations.
|
edu.umd.cs.findbugs.ba.npe | |
edu.umd.cs.findbugs.ba.type | |
edu.umd.cs.findbugs.classfile.engine.bcel |
Support for analyses based on the BCEL bytecode framework.
|
edu.umd.cs.findbugs.detect |
Modifier and Type | Method and Description |
---|---|
ValueNumberDataflow |
ClassContext.getValueNumberDataflow(org.apache.bcel.classfile.Method method)
Get a ValueNumberDataflow for given method.
|
Modifier and Type | Method and Description |
---|---|
static void |
ClassContext.dumpDataflowInformation(org.apache.bcel.classfile.Method method,
CFG cfg,
ValueNumberDataflow vnd,
IsNullValueDataflow inv,
UnconditionalValueDerefDataflow dataflow,
TypeDataflow typeDataflow) |
Constructor and Description |
---|
LockAnalysis(org.apache.bcel.generic.MethodGen methodGen,
ValueNumberDataflow vnaDataflow,
DepthFirstSearch dfs) |
Constructor and Description |
---|
UnconditionalValueDerefAnalysis(ReverseDepthFirstSearch rdfs,
DepthFirstSearch dfs,
CFG cfg,
org.apache.bcel.classfile.Method method,
org.apache.bcel.generic.MethodGen methodGen,
ValueNumberDataflow vnaDataflow,
AssertionMethods assertionMethods)
Constructor.
|
Modifier and Type | Field and Description |
---|---|
protected ValueNumberDataflow |
TypeQualifierDataflowAnalysis.vnaDataflow |
Modifier and Type | Method and Description |
---|---|
protected abstract DataflowType |
TypeQualifierDataflowFactory.getDataflow(DepthFirstSearch dfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
IAnalysisCache analysisCache,
MethodDescriptor methodDescriptor1,
TypeQualifierValue<?> typeQualifierValue) |
protected ForwardTypeQualifierDataflow |
ForwardTypeQualifierDataflowFactory.getDataflow(DepthFirstSearch dfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
IAnalysisCache analysisCache,
MethodDescriptor methodDescriptor,
TypeQualifierValue<?> typeQualifierValue) |
protected BackwardTypeQualifierDataflow |
BackwardTypeQualifierDataflowFactory.getDataflow(DepthFirstSearch dfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
IAnalysisCache analysisCache,
MethodDescriptor methodDescriptor,
TypeQualifierValue<?> typeQualifierValue) |
protected void |
BackwardTypeQualifierDataflowFactory.populateDatabase(BackwardTypeQualifierDataflow dataflow,
ValueNumberDataflow vnaDataflow,
XMethod xmethod,
TypeQualifierValue<?> tqv) |
protected abstract void |
TypeQualifierDataflowFactory.populateDatabase(DataflowType dataflow,
ValueNumberDataflow vnaDataflow,
XMethod xmethod,
TypeQualifierValue<?> tqv) |
protected void |
ForwardTypeQualifierDataflowFactory.populateDatabase(ForwardTypeQualifierDataflow dataflow,
ValueNumberDataflow vnaDataflow,
XMethod xmethod,
TypeQualifierValue<?> tqv) |
Constructor and Description |
---|
BackwardTypeQualifierDataflowAnalysis(DepthFirstSearch dfs,
ReverseDepthFirstSearch rdfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
TypeQualifierValue<?> typeQualifierValue)
Constructor.
|
ForwardTypeQualifierDataflowAnalysis(DepthFirstSearch dfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
TypeQualifierValue<?> typeQualifierValue)
Constructor.
|
TypeQualifierDataflowAnalysis(XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
TypeQualifierValue<?> typeQualifierValue)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
NullDerefAndRedundantComparisonCollector.foundGuaranteedNullDeref(java.util.Set<Location> assignedNullLocationSet,
java.util.Set<Location> derefLocationSet,
java.util.SortedSet<Location> doomedLocations,
ValueNumberDataflow vna,
ValueNumber refValue,
BugAnnotation variableAnnotation,
NullValueUnconditionalDeref deref,
boolean npeIfStatementCovered)
Subclasses should override this method to capture values assigned null
(or that become null through a comparison and branch) that are guaranteed
to reach a dereference (ignoring implicit exception paths).
|
PointerUsageRequiringNonNullValue |
UsagesRequiringNonNullValues.get(Location loc,
ValueNumber vn,
ValueNumberDataflow vnaDataflow) |
static IsNullValueAnalysis.PointerEqualityCheck |
IsNullValueAnalysis.getForPointerEqualityCheck(CFG cfg,
ValueNumberDataflow vna) |
Constructor and Description |
---|
IsNullValueAnalysis(MethodDescriptor descriptor,
org.apache.bcel.generic.MethodGen methodGen,
CFG cfg,
ValueNumberDataflow vnaDataflow,
TypeDataflow typeDataflow,
DepthFirstSearch dfs,
AssertionMethods assertionMethods) |
IsNullValueFrameModelingVisitor(org.apache.bcel.generic.ConstantPoolGen cpg,
AssertionMethods assertionMethods,
ValueNumberDataflow vnaDataflow,
TypeDataflow typeDataflow,
boolean trackValueNumbers) |
Modifier and Type | Method and Description |
---|---|
void |
TypeFrameModelingVisitor.setValueNumberDataflow(ValueNumberDataflow valueNumberDataflow)
Set ValueNumberDataflow for the method being analyzed.
|
void |
TypeAnalysis.setValueNumberDataflow(ValueNumberDataflow valueNumberDataflow)
Set the ValueNumberDataflow for the method being analyzed.
|
Modifier and Type | Method and Description |
---|---|
ValueNumberDataflow |
ValueNumberDataflowFactory.analyze(IAnalysisCache analysisCache,
MethodDescriptor descriptor) |
protected ValueNumberDataflow |
AnalysisFactory.getValueNumberDataflow(IAnalysisCache analysisCache,
MethodDescriptor methodDescriptor) |
Modifier and Type | Method and Description |
---|---|
void |
NoiseNullDeref.foundGuaranteedNullDeref(java.util.Set<Location> assignedNullLocationSet,
java.util.Set<Location> derefLocationSet,
java.util.SortedSet<Location> doomedLocations,
ValueNumberDataflow vna,
ValueNumber refValue,
BugAnnotation variableAnnotation,
NullValueUnconditionalDeref deref,
boolean npeIfStatementCovered) |
void |
FindNullDeref.foundGuaranteedNullDeref(java.util.Set<Location> assignedNullLocationSet,
java.util.Set<Location> derefLocationSet,
java.util.SortedSet<Location> doomedLocations,
ValueNumberDataflow vna,
ValueNumber refValue,
BugAnnotation variableAnnotation,
NullValueUnconditionalDeref deref,
boolean npeIfStatementCovered) |
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.