FindBugs™ 1.3.9

@ParametersAreNonnullByDefault @DefaultAnnotationForParameters(value=NonNull.class)

Package edu.umd.cs.findbugs.ba

A bytecode analysis framework for BCEL, providing CFG construction, generic dataflow analysis, and a variety of specific dataflow analyses.

See:
          Description

Interface Summary
AccessibleEntity Common superinterface for code entities having access flags: classes, fields, and methods.
AnalysisFeatures Boolean analysis properties for use in the AnalysisContext.
BlockOrder Specify an order for visiting basic blocks.
BytecodeScanner.Callback Callback interface to report scanned instructions.
CFGBuilder Abstract interface for CFG builder classes.
ClassMember Common super-interface for class members (fields and methods).
DataflowAnalysis<Fact> A dataflow analysis to be used with the Dataflow class.
DataflowValueChooser<Value> Predicate for dataflow values.
Debug  
DFSEdgeTypes Interface defining depth first search edge type constants.
EdgeChooser Interface for choosing CFG Edges.
EdgeTypes Constants defining the type of control flow edges, as well as flags defining additional information about the edges.
INullnessAnnotationDatabase Interface for querying nullness annotations on methods, fields, and parameters.
JavaClassAndMethodChooser Deprecated.
MethodChooser Interface for choosing methods.
PathVisitor Visit the BasicBlocks, InstructionHandles, and Edges along a Path.
RepositoryLookupFailureCallback An interface which Repository class lookup failures are reported to.
ResourceTracker<Resource> A ResourceTracker is used with ResourceValueAnalysis to determine where in a method a certain kind of resource is created, and to model the effect of instructions on the state of that resource.
SourceFileDataSource A data source which can produce a stream for a source file.
XClass Interface for object representing information about a class.
XField Abstract representation of a field.
XMethod An XMethod represents symbolic information about a particular method.
 

Class Summary
AbstractBlockOrder Abstract base class for BlockOrder variants.
AbstractClassMember  
AbstractDataflow<Fact,AnalysisType extends BasicAbstractDataflowAnalysis<Fact>> Convenience class for defining Dataflow classes which use a BasicAbstractDataflowAnalysis subtype.
AbstractDataflowAnalysis<Fact> Abstract base class providing functionality that will be useful for most dataflow analysis implementations that model instructions within basic blocks.
AbstractDataflowTestDriver Abstract base class for dataflow test driver classes.
AbstractDataflowTestDriver.Knob  
AbstractDominatorsAnalysis A dataflow analysis to compute dominator relationships between basic blocks.
AbstractField  
AbstractFrameModelingVisitor<Value,FrameType extends Frame<Value>> A common base class for frame modeling visitors.
AbstractMethod  
AnalysisCacheToAnalysisContextAdapter An AnalysisContext implementation that uses the IAnalysisCache.
AnalysisContext A context for analysis of a complete project.
AnnotationDatabase<AnnotationEnum extends AnnotationEnumeration<AnnotationEnum>> Database to keep track of annotated fields/methods/classes/etc.
AnnotationEnumeration<E extends AnnotationEnumeration<E>>  
AnnotationRetentionDatabase  
AssertionMethods Mark methodref constant pool entries of methods that are likely to implement assertions.
AssignedFieldMap  
BackwardDataflowAnalysis<Fact> Abstract base class for backward dataflow analyses.
BasicAbstractDataflowAnalysis<Fact> A useful starting point for defining a dataflow analysis.
BasicBlock Simple basic block abstraction for BCEL.
BetterCFGBuilder2 A CFGBuilder that really tries to construct accurate control flow graphs.
BlockType Dataflow value representing the current nesting of catch and finally blocks.
BlockTypeAnalysis Dataflow analysis to determine the nesting of catch and finally blocks within a method.
BlockTypeDataflow  
BytecodeScanner Scan the raw bytecodes of a method.
CFG Simple control flow graph abstraction for BCEL.
CFGBuilderFactory Factory object to create CFGBuilders for methods.
CFGPrinter Print out a representation of a control-flow graph.
CheckReturnAnnotationDatabase  
CheckReturnValueAnnotation  
ClassContext A ClassContext caches all of the auxiliary objects used to analyze the methods of a class.
ClassHash Compute a hash of method names and signatures.
ClassNotFoundExceptionParser Parse the detail message in a ClassNotFoundException to extract the name of the missing class.
ClassSummary  
CompactLocationNumbering Compute a compact numbering of Locations in a CFG.
CompoundMethodChooser Deprecated.
Dataflow<Fact,AnalysisType extends DataflowAnalysis<Fact>> Perform dataflow analysis on a method using a control flow graph.
DataflowCFGPrinter<Fact,AnalysisType extends DataflowAnalysis<Fact>> CFGPrinter class which prints dataflow values at each basic block and instruction.
DebugRepositoryLookupFailureCallback DebugRepositoryLookupFailureCallback implementation for debugging.
DefaultNullnessAnnotations  
DepthFirstSearch Algorithm to perform a depth first search on a CFG.
DFSCFGPrinter  
DominatorsAnalysis Dataflow analysis to compute dominator sets for a CFG.
Edge An edge of a control flow graph.
EqualsKindSummary  
ExceptionHandlerMap This class provides a convenient way of determining the exception handlers for instructions in a method.
FieldSummary Interprocedural analysis summary
FileSourceFileDataSource Data source for source files which are stored in the filesystem.
ForwardDataflowAnalysis<Fact> Abstract base class for forward dataflow analyses.
Frame<ValueType> Generic class for representing a Java stack frame as a dataflow value.
FrameDataflowAnalysis<ValueType,FrameType extends Frame<ValueType>> A convenient base class for dataflow analysis classes which use Frames as values.
Hierarchy Facade for class hierarchy queries.
Hierarchy2 Facade for class hierarchy queries.
IncompatibleTypes  
InnerClassAccess  
InnerClassAccessMap Determine which methods are accessors used by inner classes to access fields in their enclosing classes.
InstructionHandleMap<ValueType> Map BCEL InstructionHandles to some kind of value type.
JavaClassAndMethod A JavaClass and a Method belonging to the class.
JCIPAnnotationDatabase  
LineNumberMap Summarize line numbers (and other source information) for a method.
LiveLocalStoreAnalysis Dataflow analysis to find live stores of locals.
LiveLocalStoreDataflow Dataflow class for LiveLocalStoreAnalysis.
Location A class representing a location in the CFG for a method.
LockAnalysis Analysis to determine where particular values are locked in a method.
LockChecker Front-end for LockDataflow that can avoid doing unnecessary work (e.g., actually performing the lock dataflow) if the method analyzed does not contain explicit monitorenter/monitorexit instructions.
LockDataflow Dataflow class for LockAnalysis.
LockSet Lock counts for values (as produced by ValueNumberAnalysis).
MethodBytecodeSet Class representing the set of opcodes used in a method.
MethodHash Compute a hash of the bytecode for given method.
NullnessAnnotation  
NullnessAnnotation.Parser  
NullnessAnnotationDatabase  
ObjectTypeFactory  
OpcodeStackScanner  
Path A Path is a sequence of basic blocks.
PostDominatorsAnalysis Dataflow analysis to compute postdominator sets for a CFG.
PruneInfeasibleExceptionEdges Prune a CFG to remove infeasible exception edges.
PruneUnconditionalExceptionThrowerEdges  
PutfieldScanner  
RepositoryClassParser A special version of ClassParser that automatically enters parsed classes into the Repository.
ResourceValue  
ResourceValueAnalysis<Resource>  
ResourceValueFrame  
ResourceValueFrameModelingVisitor  
ReturnPath  
ReturnPathAnalysis  
ReturnPathDataflow  
ReverseDepthFirstSearch Algorithm to perform a reverse depth first search on a CFG.
ReverseDFSOrder A BlockOrder for visiting the blocks of a CFG in the order they would be visited in a depth first search of the reversed CFG.
ReversePostOrder A BlockOrder for visiting the blocks of a CFG in the reverse of the order in which they are finished in a depth first search.
SignatureConverter Convert part or all of a Java type signature into something closer to what types look like in the source code.
SignatureParser A simple class to parse method signatures.
SimplePathEnumerator Object to enumerate (some subset of) the simple paths in a CFG.
SourceFile Cached data for a source file.
SourceFinder Class to open input streams on source files.
SourceInfoMap Global information about the source code for an application.
SourceInfoMap.SourceLineRange A range of source lines.
StackDepth Dataflow fact to represent the depth of the Java operand stack.
StackDepthAnalysis A really simple forward dataflow analysis to find the depth of the Java operand stack.
Target The target of a branch instruction.
TargetEnumeratingVisitor Visitor to find all of the targets of an instruction whose InstructionHandle is given.
TestCaseDetector  
UnresolvedXField  
URLClassPath A work-alike class to use instead of BCEL's ClassPath class.
URLClassPathRepository BCEL Repository implementation that uses an URLClassPath to find classes.
XFactory Factory methods for creating XMethod objects.
XMethodParameter  
ZipSourceFileDataSource A source file data source for source files residing in Zip or Jar archives.
 

Enum Summary
AnnotationDatabase.Target  
EqualsKindSummary.KindOfEquals  
 

Exception Summary
AnalysisException A kind of runtime exception that can be thrown to indicate a fatal error in an analysis.
CFGBuilderException  
DataflowAnalysisException Exception type to indicate a dataflow analysis failure.
InvalidBytecodeException An exception that may be thrown by frame modeling visitor classes to indicate that the method being analyzed contains invalid bytecode.
MethodUnprofitableException Used to signal a method not analyzed because it seemed unprofitable to do so
MissingClassException DataflowAnalysisException variant to report a class lookup failure that caused dataflow analysis to abort.
 

Annotation Types Summary
AnalysisFeatures.AnalysisFeature  
 

Package edu.umd.cs.findbugs.ba Description

A bytecode analysis framework for BCEL, providing CFG construction, generic dataflow analysis, and a variety of specific dataflow analyses.


FindBugs™ 1.3.9

FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.