Uses of Class
edu.umd.cs.findbugs.ba.BasicBlock
Packages that use BasicBlock
Package
Description
Main package for the FindBugs application - contains the engine class
(
FindBugs
), the object model classes for bug
instances (BugInstance
,
BugAnnotation
), and other miscellany.A bytecode analysis framework for BCEL, providing CFG construction, generic
dataflow analysis, and a variety of specific dataflow analyses.
Support for analyzing code containing JSR-305 type qualifier annotations.
Implementation of dataflow analysis for checking whether obligations to close streams and other resources
(e.g., database objects) are satisfied.
-
Uses of BasicBlock in edu.umd.cs.findbugs
Methods in edu.umd.cs.findbugs that return BasicBlockModifier and TypeMethodDescriptionCallSite.getBasicBlock()
Get the basic block where the call site is located.Constructors in edu.umd.cs.findbugs with parameters of type BasicBlockModifierConstructorDescriptionCallSite
(org.apache.bcel.classfile.Method method, BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle) Constructor. -
Uses of BasicBlock in edu.umd.cs.findbugs.ba
Methods in edu.umd.cs.findbugs.ba that return BasicBlockModifier and TypeMethodDescriptionCFG.allocate()
Allocate a new BasicBlock.Location.getBasicBlock()
Get the basic block.CFG.getEntry()
Get the entry node.CFG.getExit()
Get the exit node.protected BasicBlock
DepthFirstSearch.getNextSearchTreeRoot()
protected BasicBlock
ReverseDepthFirstSearch.getNextSearchTreeRoot()
CFG.getPredecessorWithEdgeType
(BasicBlock target, int edgeType) Get the first predecessor reachable from given edge type.CFG.getSuccessorWithEdgeType
(BasicBlock source, int edgeType) Get the first successor reachable from given edge type.CFG.lookupBlockByLabel
(int blockLabel) Look up a BasicBlock by its unique label.Methods in edu.umd.cs.findbugs.ba that return types with arguments of type BasicBlockModifier and TypeMethodDescriptionAbstractBlockOrder.blockIterator()
BlockOrder.blockIterator()
Return an Iterator which visits the basic blocks in order.CFG.blockIterator()
Get an Iterator over the nodes (BasicBlocks) of the control flow graph.CFG.blocks()
Get Collection of basic blocks whose IDs are specified by given BitSet.CFG.getBlocksContainingInstructionWithOffset
(int offset) Get a Collection of basic blocks which contain the bytecode instruction with given offset.Methods in edu.umd.cs.findbugs.ba with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
Path.acceptVisitorStartingFromLocation
(CFG cfg, PathVisitor visitor, BasicBlock startBlock, org.apache.bcel.generic.InstructionHandle startHandle) Accept a PathVisitor, starting from a given BasicBlock and InstructionHandle.protected Edge
CFG.allocateEdge
(BasicBlock source, BasicBlock target) CFGPrinter.blockAnnotate
(BasicBlock block) DataflowCFGPrinter.blockAnnotate
(BasicBlock bb) CFGPrinter.blockStartAnnotate
(BasicBlock block) DataflowCFGPrinter.blockStartAnnotate
(BasicBlock bb) int
AbstractBlockOrder.compare
(BasicBlock b1, BasicBlock b2) int
BlockOrder.compare
(BasicBlock b1, BasicBlock b2) Return relative order of blocks.CFG.createEdge
(BasicBlock source, BasicBlock dest, int type) Add a unique edge to the graph.AbstractDominatorsAnalysis.getAllDominatedBy
(BasicBlock dominator) Get a bitset containing the unique IDs of all blocks in CFG dominated (or postdominated, depending on how the analysis was done) by given block.AbstractDominatorsAnalysis.getAllDominatorsOf
(BasicBlock block) Get a bitset containing the unique IDs of all blocks which dominate (or postdominate) the given block.static Location
Location.getFirstLocation
(BasicBlock basicBlock) CFG.getIncomingEdgeWithType
(BasicBlock basicBlock, int edgeType) Get the first incoming edge in basic block with given type.static Location
Location.getLastLocation
(BasicBlock basicBlock) int
CFG.getNumNonExceptionSucessors
(BasicBlock block) Get number of non-exception control successors of given basic block.CFG.getOutgoingEdgeWithType
(BasicBlock basicBlock, int edgeType) Get the first outgoing edge in basic block with given type.CFG.getPredecessorWithEdgeType
(BasicBlock target, int edgeType) Get the first predecessor reachable from given edge type.BasicAbstractDataflowAnalysis.getResultFact
(BasicBlock block) Dataflow.getResultFact
(BasicBlock block) Get dataflow facts for end of given block.DataflowAnalysis.getResultFact
(BasicBlock block) Get the result fact for given basic block.BasicAbstractDataflowAnalysis.getStartFact
(BasicBlock block) Dataflow.getStartFact
(BasicBlock block) Get dataflow facts for start of given block.DataflowAnalysis.getStartFact
(BasicBlock block) Get the start fact for given basic block.CFG.getSuccessorWithEdgeType
(BasicBlock source, int edgeType) Get the first successor reachable from given edge type.CFGPrinter.instructionAnnotate
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock bb) DataflowCFGPrinter.instructionAnnotate
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock bb) protected Iterator<org.apache.bcel.generic.InstructionHandle>
CFGPrinter.instructionIterator
(BasicBlock bb) boolean
ResourceTracker.isResourceClose
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, Resource resource, ResourceValueFrame frame) Determine if the given instruction is the site where a resource is closed.ResourceTracker.isResourceCreation
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) Determine if the given instruction is the site where a resource is created.boolean
ResourceTracker.mightCloseResource
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) Determine if the given instruction is the site where a resource is closed.void
AbstractDataflowAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, Fact start, Fact result) void
AbstractDominatorsAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, BitSet start, BitSet result) void
BlockTypeAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, BlockType start, BlockType result) void
DataflowAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, Fact start, Fact result) Transfer function for the analysis.abstract void
AbstractDataflowAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, Fact fact) Transfer function for a single instruction.void
LiveLocalStoreAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, BitSet fact) void
LockAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, LockSet fact) void
ResourceValueAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ResourceValueFrame fact) abstract void
ResourceValueFrameModelingVisitor.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock) Subclasses must override this to model the effect of the given instruction on the current frame.void
ReturnPathAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ReturnPath fact) void
StackDepthAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, StackDepth fact) void
PathVisitor.visitBasicBlock
(BasicBlock basicBlock) Start to visit the given BasicBlock.Constructors in edu.umd.cs.findbugs.ba with parameters of type BasicBlockModifierConstructorDescriptionEdge
(BasicBlock source, BasicBlock dest) Constructor.Location
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock) Constructor.Constructor parameters in edu.umd.cs.findbugs.ba with type arguments of type BasicBlock -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.bcp
Methods in edu.umd.cs.findbugs.ba.bcp that return BasicBlockModifier and TypeMethodDescriptionPatternElementMatch.getBasicBlock()
Get the basic block containing the matched instruction.Constructors in edu.umd.cs.findbugs.ba.bcp with parameters of type BasicBlockModifierConstructorDescriptionPatternElementMatch
(PatternElement patternElement, org.apache.bcel.generic.InstructionHandle matchedInstruction, BasicBlock basicBlock, int matchCount, PatternElementMatch prev) Constructor. -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.ca
Methods in edu.umd.cs.findbugs.ba.ca with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
CallListAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, CallList fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.constant
Methods in edu.umd.cs.findbugs.ba.constant with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
ConstantAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ConstantFrame frame) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.deref
Methods in edu.umd.cs.findbugs.ba.deref with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
UnconditionalValueDerefAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, UnconditionalValueDerefSet fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.heap
Methods in edu.umd.cs.findbugs.ba.heap with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
FieldSetAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, FieldSet fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.jsr305
Methods in edu.umd.cs.findbugs.ba.jsr305 with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
BackwardTypeQualifierDataflowAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeQualifierValueSet fact) void
TypeQualifierDataflowAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeQualifierValueSet fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.npe
Methods in edu.umd.cs.findbugs.ba.npe with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
IsNullValueAnalysis.endTransfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, IsNullValueFrame result) void
IsNullValueAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, IsNullValueFrame start, IsNullValueFrame result) void
ReturnPathTypeAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, ReturnPathType start, ReturnPathType result) void
IsNullValueAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, IsNullValueFrame fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.obl
Methods in edu.umd.cs.findbugs.ba.obl with parameters of type BasicBlockModifier and TypeMethodDescriptionboolean
InstructionActionCache.addsObligation
(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) boolean
InstructionActionCache.deletesObligation
(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle, Obligation obligation) InstructionActionCache.getActions
(BasicBlock block, org.apache.bcel.generic.InstructionHandle handle) void
ObligationAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, StateSet start, StateSet result) void
ObligationAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, StateSet fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.type
Methods in edu.umd.cs.findbugs.ba.type with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
TypeAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, TypeFrame start, TypeFrame result) void
TypeAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeFrame fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.ba.vna
Methods in edu.umd.cs.findbugs.ba.vna with parameters of type BasicBlockModifier and TypeMethodDescriptionvoid
ValueNumberAnalysis.transfer
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, ValueNumberFrame start, ValueNumberFrame result) void
ValueNumberAnalysis.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ValueNumberFrame fact) -
Uses of BasicBlock in edu.umd.cs.findbugs.detect
Methods in edu.umd.cs.findbugs.detect with parameters of type BasicBlockModifier and TypeMethodDescriptionboolean
StreamResourceTracker.isResourceClose
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, Stream resource, ResourceValueFrame frame) StreamResourceTracker.isResourceCreation
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) boolean
StreamResourceTracker.isResourceOpen
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, Stream resource, ResourceValueFrame frame) boolean
Stream.isStreamClose
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ResourceValueFrame frame, RepositoryLookupFailureCallback lookupFailureCallback) boolean
Stream.isStreamOpen
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ResourceValueFrame frame) static boolean
FindNullDeref.isThrower
(BasicBlock target) static boolean
NoiseNullDeref.isThrower
(BasicBlock target) boolean
StreamResourceTracker.mightCloseResource
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) static boolean
Stream.mightCloseStream
(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) void
StreamFrameModelingVisitor.transferInstruction
(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock)