Package | Description |
---|---|
edu.umd.cs.findbugs |
Main package for the FindBugs application - contains the
engine class (FindBugs), the object model classes for bug instances
(BugInstance, BugAnnotation), and other miscellany.
|
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.bcp | |
edu.umd.cs.findbugs.ba.ca | |
edu.umd.cs.findbugs.ba.constant | |
edu.umd.cs.findbugs.ba.deref | |
edu.umd.cs.findbugs.ba.heap | |
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.obl |
Implementation of dataflow analysis for checking whether
obligations to close streams and other resources (e.g.
|
edu.umd.cs.findbugs.ba.type | |
edu.umd.cs.findbugs.ba.vna | |
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 |
---|---|
void |
InstructionScanner.traverseEdge(Edge edge)
Traverse an edge.
|
Constructor and Description |
---|
InstructionScannerDriver(java.util.Iterator<Edge> edgeIter)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected Edge |
CFG.allocateEdge(BasicBlock source,
BasicBlock target) |
Edge |
CFG.createEdge(BasicBlock source,
BasicBlock dest,
int type)
Add a unique edge to the graph.
|
Edge |
CFG.getIncomingEdgeWithType(BasicBlock basicBlock,
int edgeType)
Get the first incoming edge in basic block with given type.
|
Edge |
CFG.getOutgoingEdgeWithType(BasicBlock basicBlock,
int edgeType)
Get the first outgoing edge in basic block with given type.
|
Edge |
CFG.lookupEdgeById(int id)
Look up an Edge by its id.
|
Modifier and Type | Method and Description |
---|---|
java.util.Iterator<java.util.List<Edge>> |
SimplePathEnumerator.iterator()
Iterate over simple paths.
|
java.util.Iterator<Edge> |
CFG.removedEdgeIterator()
Get an Iterator over Edges removed from this CFG.
|
Modifier and Type | Method and Description |
---|---|
boolean |
EdgeChooser.choose(Edge edge)
Return whether or not given Edge should be chosen.
|
int |
Edge.compareTo(Edge other)
Compare with other edge.
|
java.lang.String |
DataflowCFGPrinter.edgeAnnotate(Edge edge) |
java.lang.String |
DFSCFGPrinter.edgeAnnotate(Edge edge) |
java.lang.String |
CFGPrinter.edgeAnnotate(Edge edge) |
void |
DataflowAnalysis.edgeTransfer(Edge edge,
Fact fact)
Edge transfer function.
|
void |
BasicAbstractDataflowAnalysis.edgeTransfer(Edge edge,
Fact fact) |
Location |
CFG.getExceptionThrowerLocation(Edge exceptionEdge)
Get the Location where exception(s) thrown on given exception edge are
thrown.
|
Fact |
DataflowAnalysis.getFactOnEdge(Edge edge)
Get the fact that is true on the given control edge.
|
Fact |
Dataflow.getFactOnEdge(Edge edge)
Get the fact that is true on the given control edge.
|
Fact |
BasicAbstractDataflowAnalysis.getFactOnEdge(Edge edge)
Get the fact that is true on the given control edge,
after applying the edge transfer function (if any).
|
Fact |
AbstractDataflow.getFactOnEdge(Edge edge)
Get the fact that is true on the given control edge.
|
boolean |
ResourceTracker.ignoreExceptionEdge(Edge edge,
Resource resource,
org.apache.bcel.generic.ConstantPoolGen cpg)
Determine whether the analysis should ignore given exception edge.
|
void |
LiveLocalStoreAnalysis.meetInto(java.util.BitSet fact,
Edge edge,
java.util.BitSet result) |
void |
AbstractDominatorsAnalysis.meetInto(java.util.BitSet fact,
Edge edge,
java.util.BitSet result) |
void |
BlockTypeAnalysis.meetInto(BlockType fact,
Edge edge,
BlockType result) |
void |
DataflowAnalysis.meetInto(Fact fact,
Edge edge,
Fact result)
Meet a dataflow fact associated with an incoming edge into another fact.
|
void |
LockAnalysis.meetInto(LockSet fact,
Edge edge,
LockSet result) |
void |
ResourceValueAnalysis.meetInto(ResourceValueFrame fact,
Edge edge,
ResourceValueFrame result) |
void |
ReturnPathAnalysis.meetInto(ReturnPath fact,
Edge edge,
ReturnPath result) |
void |
StackDepthAnalysis.meetInto(StackDepth fact,
Edge edge,
StackDepth result) |
void |
CFG.removeEdge(Edge edge) |
void |
PathVisitor.visitEdge(Edge edge)
Visit an Edge connecting two BasicBlocks in the Path being visited.
|
Modifier and Type | Method and Description |
---|---|
boolean |
Wild.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
boolean |
SingleInstruction.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
abstract boolean |
PatternElement.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source)
Return whether or not it is acceptable to take the given branch.
|
boolean |
Opcode.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
boolean |
MatchAny.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
boolean |
Invoke.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
boolean |
IfNull.acceptBranch(Edge edge,
org.apache.bcel.generic.InstructionHandle source) |
Modifier and Type | Method and Description |
---|---|
void |
CallListAnalysis.meetInto(CallList start,
Edge edge,
CallList result) |
Modifier and Type | Method and Description |
---|---|
void |
ConstantAnalysis.meetInto(ConstantFrame fact,
Edge edge,
ConstantFrame result) |
Modifier and Type | Method and Description |
---|---|
void |
UnconditionalValueDerefAnalysis.meetInto(UnconditionalValueDerefSet fact,
Edge edge,
UnconditionalValueDerefSet result) |
void |
UnconditionalValueDerefAnalysis.meetInto(UnconditionalValueDerefSet fact,
Edge edge,
UnconditionalValueDerefSet result,
boolean onlyEdge) |
Modifier and Type | Method and Description |
---|---|
void |
FieldSetAnalysis.meetInto(FieldSet fact,
Edge edge,
FieldSet result) |
Modifier and Type | Method and Description |
---|---|
void |
TypeQualifierDataflowAnalysis.edgeTransfer(Edge edge,
TypeQualifierValueSet fact) |
void |
BackwardTypeQualifierDataflowAnalysis.edgeTransfer(Edge edge,
TypeQualifierValueSet fact) |
void |
TypeQualifierDataflowAnalysis.meetInto(TypeQualifierValueSet fact,
Edge edge,
TypeQualifierValueSet result) |
Modifier and Type | Field and Description |
---|---|
Edge |
RedundantBranch.infeasibleEdge |
Modifier and Type | Method and Description |
---|---|
void |
ReturnPathTypeAnalysis.edgeTransfer(Edge edge,
ReturnPathType fact) |
IsNullValueFrame |
IsNullValueDataflow.getFactAtMidEdge(Edge edge) |
IsNullValueFrame |
IsNullValueAnalysis.getFactAtMidEdge(Edge edge) |
void |
IsNullValueAnalysis.meetInto(IsNullValueFrame fact,
Edge edge,
IsNullValueFrame result) |
void |
IsNullValueAnalysis.meetInto(IsNullValueFrame fact,
Edge edge,
IsNullValueFrame result,
boolean propagatePhiNodeInformation) |
void |
ReturnPathTypeAnalysis.meetInto(ReturnPathType fact,
Edge edge,
ReturnPathType result) |
void |
RedundantBranch.setInfeasibleEdge(Edge infeasibleEdge)
Set the edge which has been determined to be infeasible.
|
Modifier and Type | Method and Description |
---|---|
void |
ObligationAnalysis.edgeTransfer(Edge edge,
StateSet fact) |
void |
ObligationAnalysis.meetInto(StateSet fact,
Edge edge,
StateSet result) |
Modifier and Type | Method and Description |
---|---|
ExceptionSet |
TypeDataflow.getEdgeExceptionSet(Edge edge) |
ExceptionSet |
TypeAnalysis.getEdgeExceptionSet(Edge edge)
Get the set of exceptions that can be thrown on given edge.
|
void |
TypeAnalysis.meetInto(TypeFrame fact,
Edge edge,
TypeFrame result) |
Modifier and Type | Method and Description |
---|---|
void |
ValueNumberAnalysis.meetInto(ValueNumberFrame fact,
Edge edge,
ValueNumberFrame result) |
Modifier and Type | Method and Description |
---|---|
java.util.List<Edge> |
FinallyDuplicatesInfoFactory.FinallyDuplicatesInfo.getDuplicates(CFG cfg,
Edge edge) |
Modifier and Type | Method and Description |
---|---|
java.util.List<Edge> |
FinallyDuplicatesInfoFactory.FinallyDuplicatesInfo.getDuplicates(CFG cfg,
Edge edge) |
Modifier and Type | Method and Description |
---|---|
boolean |
StreamResourceTracker.ignoreExceptionEdge(Edge edge,
Stream resource,
org.apache.bcel.generic.ConstantPoolGen cpg) |
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.