Class FindUnsatisfiedObligation.MethodChecker.PostProcessingPathVisitor
java.lang.Object
edu.umd.cs.findbugs.detect.FindUnsatisfiedObligation.MethodChecker.PostProcessingPathVisitor
- All Implemented Interfaces:
PathVisitor
- Enclosing class:
FindUnsatisfiedObligation.MethodChecker
private class FindUnsatisfiedObligation.MethodChecker.PostProcessingPathVisitor
extends Object
implements PathVisitor
Helper class to apply the false-positive suppression heuristics along
a Path where an obligation leak might have occurred.
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) int(package private) boolean(package private) BasicBlock(package private) Obligation(package private) State(package private) List<FindUnsatisfiedObligation.PossibleObligationTransfer> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidprivate voidcheckForPossibleObligationTransfer(org.apache.bcel.generic.InvokeInstruction inv, org.apache.bcel.generic.InstructionHandle handle) booleanintprivate StategetTransferState(org.apache.bcel.generic.InstructionHandle handle) voidvisitBasicBlock(BasicBlock basicBlock) Start to visit the given BasicBlock.voidVisit an Edge connecting two BasicBlocks in the Path being visited.voidvisitInstructionHandle(org.apache.bcel.generic.InstructionHandle handle) Visit an InstructionHandle within the BasicBlock currently being visited.
-
Field Details
-
possiblyLeakedObligation
Obligation possiblyLeakedObligation -
state
State state -
adjustedLeakCount
int adjustedLeakCount -
curBlock
BasicBlock curBlock -
couldNotAnalyze
boolean couldNotAnalyze -
transferList
List<FindUnsatisfiedObligation.PossibleObligationTransfer> transferList
-
-
Constructor Details
-
PostProcessingPathVisitor
-
-
Method Details
-
getAdjustedLeakCount
public int getAdjustedLeakCount() -
couldNotAnalyze
public boolean couldNotAnalyze() -
visitBasicBlock
Description copied from interface:PathVisitorStart to visit the given BasicBlock.- Specified by:
visitBasicBlockin interfacePathVisitor- Parameters:
basicBlock- a BasicBlock in the Path being visited
-
visitInstructionHandle
public void visitInstructionHandle(org.apache.bcel.generic.InstructionHandle handle) Description copied from interface:PathVisitorVisit an InstructionHandle within the BasicBlock currently being visited.- Specified by:
visitInstructionHandlein interfacePathVisitor- Parameters:
handle- an InstructionHandle within the current BasicBlock
-
applyPossibleObligationTransfers
private void applyPossibleObligationTransfers() -
checkForPossibleObligationTransfer
private void checkForPossibleObligationTransfer(org.apache.bcel.generic.InvokeInstruction inv, org.apache.bcel.generic.InstructionHandle handle) throws ClassNotFoundException - Throws:
ClassNotFoundException
-
visitEdge
Description copied from interface:PathVisitorVisit an Edge connecting two BasicBlocks in the Path being visited.- Specified by:
visitEdgein interfacePathVisitor- Parameters:
edge- an Edge connecting two BasicBlocks in the Path being visited
-
getTransferState
-