Uses of Class
edu.umd.cs.findbugs.ba.DataflowAnalysisException
Packages that use DataflowAnalysisException
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.
Support for analyses based on the BCEL bytecode framework.
-
Uses of DataflowAnalysisException in edu.umd.cs.findbugs
Methods in edu.umd.cs.findbugs that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidResourceTrackingDetector.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method, ResourceTrackerType resourceTracker, ResourceCollection<Resource> resourceCollection) private ResourceCollection<Resource> ResourceTrackingDetector.buildResourceCollection(ClassContext classContext, org.apache.bcel.classfile.Method method, ResourceTrackerType resourceTracker) abstract ResourceTrackerTypeResourceTrackingDetector.getResourceTracker(ClassContext classContext, org.apache.bcel.classfile.Method method) private booleanResourceTrackingDetector.mightCloseResource(ClassContext classContext, org.apache.bcel.classfile.Method method, ResourceTrackerType resourceTracker) abstract voidByteCodePatternDetector.reportMatch(ClassContext classContext, org.apache.bcel.classfile.Method method, ByteCodePatternMatch match) Called to report an instance of the ByteCodePattern. -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba
Subclasses of DataflowAnalysisException in edu.umd.cs.findbugs.baModifier and TypeClassDescriptionclassDataflowAnalysisException variant to report a class lookup failure that caused dataflow analysis to abort.Methods in edu.umd.cs.findbugs.ba that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidAbstractFrameModelingVisitor.analyzeInstruction(org.apache.bcel.generic.Instruction ins) Analyze the given Instruction.static voidClassContext.dumpDataflowInformation(org.apache.bcel.classfile.Method method, CFG cfg, ValueNumberDataflow vnd, IsNullValueDataflow inv, UnconditionalValueDerefDataflow dataflow, TypeDataflow typeDataflow) static voidClassContext.dumpLiveLocalStoreDataflow(MethodDescriptor method, CFG cfg, LiveLocalStoreDataflow dataflow) static voidClassContext.dumpTypeDataflow(org.apache.bcel.classfile.Method method, CFG cfg, TypeDataflow typeDataflow) voidBasicAbstractDataflowAnalysis.edgeTransfer(Edge edge, Fact fact) voidDataflowAnalysis.edgeTransfer(Edge edge, Fact fact) Edge transfer function.voidDataflow.execute()Run the algorithm.voidPruneUnconditionalExceptionThrowerEdges.execute()Frame.getArgument(org.apache.bcel.generic.InvokeInstruction ins, org.apache.bcel.generic.ConstantPoolGen cpg, int i, int numArguments) Deprecated.Frame.getArgument(org.apache.bcel.generic.InvokeInstruction ins, org.apache.bcel.generic.ConstantPoolGen cpg, int i, SignatureParser sigParser) Get the ith argument passed to given method invocation.Frame.getArgumentSet(org.apache.bcel.generic.InvokeInstruction invokeInstruction, org.apache.bcel.generic.ConstantPoolGen cpg, DataflowValueChooser<ValueType> chooser) Get set of arguments passed to a method invocation which match given predicate.ClassContext.getBlockTypeDataflow(org.apache.bcel.classfile.Method method) Get BlockType dataflow for given method.ClassContext.getCallListDataflow(org.apache.bcel.classfile.Method method) Get CallListDataflow for method.ClassContext.getConstantDataflow(org.apache.bcel.classfile.Method method) Get ConstantDataflow for method.AbstractDataflowAnalysis.getFactAfterLocation(Location location) Get the dataflow fact representing the point just after given Location.BasicAbstractDataflowAnalysis.getFactAfterLocation(Location location) Get the dataflow fact representing the point just after given Location.Dataflow.getFactAfterLocation(Location location) Get the dataflow fact representing the point just after given Location.DataflowAnalysis.getFactAfterLocation(Location location) Get the dataflow fact representing the point just after given Location.AbstractDataflowAnalysis.getFactAtLocation(Location location) Get the dataflow fact representing the point just before given Location.BasicAbstractDataflowAnalysis.getFactAtLocation(Location location) Get dataflow fact at (just before) given Location.Dataflow.getFactAtLocation(Location location) Get dataflow fact at (just before) given Location.DataflowAnalysis.getFactAtLocation(Location location) Get dataflow fact at (just before) given Location.LockChecker.getFactAtLocation(Location location) Get LockSet at given Location.FrameDataflowAnalysis.getFactAtPC(CFG cfg, int pc) Get the dataflow fact representing the point just before given Location.FrameDataflowAnalysis.getFactBeforeExceptionCheck(CFG cfg, int pc) Get the dataflow fact representing the point just before given Location.AbstractDataflow.getFactOnEdge(Edge edge) Get the fact that is true on the given control edge.BasicAbstractDataflowAnalysis.getFactOnEdge(Edge edge) Get the fact that is true on the given control edge, after applying the edge transfer function (if any).Dataflow.getFactOnEdge(Edge edge) Get the fact that is true on the given control edge.DataflowAnalysis.getFactOnEdge(Edge edge) Get the fact that is true on the given control edge.Frame.getInstance(org.apache.bcel.generic.Instruction ins, org.apache.bcel.generic.ConstantPoolGen cpg) Get the value corresponding to the object instance used in the given instruction.intFrame.getInstanceSlot(org.apache.bcel.generic.Instruction ins, org.apache.bcel.generic.ConstantPoolGen cpg) Get the slot the object instance referred to by given instruction is located in.intFrame.getInstanceStackLocation(org.apache.bcel.generic.Instruction ins, org.apache.bcel.generic.ConstantPoolGen cpg) Get the stack location (counting down from top of stack, starting at 0) containing the object instance referred to by given instruction.ClassContext.getIsNullValueDataflow(org.apache.bcel.classfile.Method method) Get an IsNullValueDataflow for given method.ClassContext.getLiveLocalStoreDataflow(org.apache.bcel.classfile.Method method) Get LiveLocalStoreAnalysis dataflow for given method.ClassContext.getLoadDataflow(org.apache.bcel.classfile.Method method) Get load dataflow.ClassContext.getLockChecker(org.apache.bcel.classfile.Method method) Get LockChecker for method.ClassContext.getLockDataflow(org.apache.bcel.classfile.Method method) Get dataflow for LockAnalysis for given method.private <Analysis> AnalysisClassContext.getMethodAnalysis(Class<Analysis> analysisClass, org.apache.bcel.classfile.Method method) ClassContext.getNonExceptionDominatorsAnalysis(org.apache.bcel.classfile.Method method) Get DominatorsAnalysis for given method, where exception edges are ignored.ClassContext.getNonExceptionPostDominatorsAnalysis(org.apache.bcel.classfile.Method method) Get PostDominatorsAnalysis for given method, where exception edges are ignored.ClassContext.getNonImplicitExceptionDominatorsAnalysis(org.apache.bcel.classfile.Method method) Get DominatorsAnalysis for given method, where implicit exception edges are ignored.ClassContext.getNonImplicitExceptionPostDominatorsAnalysis(org.apache.bcel.classfile.Method method) Get PostDominatorsAnalysis for given method, where implicit exception edges are ignored.intFrame.getNumArgumentsIncludingObjectInstance(org.apache.bcel.generic.InvokeInstruction ins, org.apache.bcel.generic.ConstantPoolGen cpg) Get the number of arguments passed to given method invocation, including the object instance if the call is to an instance method.Frame.getOperand(org.apache.bcel.generic.StackConsumer ins, org.apache.bcel.generic.ConstantPoolGen cpg, int i) Get the ith operand used by given instruction.ClassContext.getReturnPathDataflow(org.apache.bcel.classfile.Method method) Get ReturnPathDataflow for method.ClassContext.getReturnPathTypeDataflow(org.apache.bcel.classfile.Method method) Get ReturnPathTypeDataflow for a method.intFrame.getStackLocation(int loc) Get a the location in the frame of a value on the operand stack.Frame.getStackValue(int loc) Get a value on the operand stack.ClassContext.getStoreDataflow(org.apache.bcel.classfile.Method method) Get store dataflow.voidFrame.getTopStackWords(ValueType[] valueList) Get the values on the top of the Java operand stack.Frame.getTopValue()Get the value on the top of the Java operand stack.ClassContext.getTypeDataflow(org.apache.bcel.classfile.Method method) Get a TypeDataflow for given method.ClassContext.getUnconditionalValueDerefDataflow(org.apache.bcel.classfile.Method method) Get the UnconditionalValueDerefDataflow for a method.ClassContext.getUsagesRequiringNonNullValues(org.apache.bcel.classfile.Method method) Get a UsagesRequiringNonNullValues for given method.ClassContext.getValueNumberDataflow(org.apache.bcel.classfile.Method method) Get a ValueNumberDataflow for given method.voidBlockTypeAnalysis.initEntryFact(BlockType result) voidDataflowAnalysis.initEntryFact(Fact result) Initialize the "entry" fact for the graph.voidLiveLocalStoreAnalysis.initEntryFact(BitSet result) booleanResourceTracker.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.voidvoidvoidMeet a dataflow fact associated with an incoming edge into another fact.voidvoidvoidResourceValueAnalysis.meetInto(ResourceValueFrame fact, Edge edge, ResourceValueFrame result) voidReturnPathAnalysis.meetInto(ReturnPath fact, Edge edge, ReturnPath result) protected voidMerge one frame into another.protected voidResourceValueAnalysis.mergeInto(ResourceValueFrame frame, ResourceValueFrame result) protected abstract voidFrameDataflowAnalysis.mergeValues(FrameType otherFrame, FrameType resultFrame, int slot) Merge the values contained in a given slot of two Frames.booleanResourceTracker.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.private voidLockAnalysis.modifyLock(ValueNumberFrame frame, LockSet fact, int delta) Frame.popValue()Pop a value off of the Java operand stack.static Set<JavaClassAndMethod> Hierarchy.resolveMethodCallTargets(org.apache.bcel.generic.InvokeInstruction invokeInstruction, TypeFrame typeFrame, org.apache.bcel.generic.ConstantPoolGen cpg) Resolve possible method call targets.Hierarchy2.resolveMethodCallTargets(org.apache.bcel.generic.InvokeInstruction invokeInstruction, TypeFrame typeFrame, org.apache.bcel.generic.ConstantPoolGen cpg) Resolve possible method call targets.voidAbstractDataflowAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, Fact start, Fact result) voidAbstractDominatorsAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, BitSet start, BitSet result) voidBlockTypeAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, BlockType start, BlockType result) voidDataflowAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, Fact start, Fact result) Transfer function for the analysis.abstract voidAbstractDataflowAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, Fact fact) Transfer function for a single instruction.voidLiveLocalStoreAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, BitSet fact) voidLockAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, LockSet fact) voidResourceValueAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ResourceValueFrame fact) abstract voidResourceValueFrameModelingVisitor.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.voidReturnPathAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ReturnPath fact) voidStackDepthAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, StackDepth fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.bcp
Methods in edu.umd.cs.findbugs.ba.bcp that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionprivate voidPatternMatcher.attemptMatch(BasicBlock basicBlock, BasicBlock.InstructionIterator instructionIterator) Attempt to begin a match.PatternMatcher.State.dominatedInstructionStateIterable()Return Iterator over states representing dominated instructions that continue the match.PatternMatcher.execute()Search for examples of the ByteCodePattern.IfNull.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Invoke.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Load.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) MatchAny.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Monitorenter.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) New.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Opcode.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) abstract MatchResultPatternElement.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Return whether or not this element matches the given instruction with the given Bindings in effect.Store.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) Wild.match(org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame before, ValueNumberFrame after, BindingSet bindingSet) private MatchResultPatternMatcher.State.matchLocation(Location location) PatternMatcher.State.matchNextInBasicBlock()Match current pattern element with next instruction in basic block.protected static VariableFieldAccess.snarfFieldValue(org.apache.bcel.generic.FieldInstruction fieldIns, org.apache.bcel.generic.ConstantPoolGen cpg, ValueNumberFrame frame) Get a Variable representing the stack value which will either be stored into or loaded from a field.private voidPatternMatcher.work(PatternMatcher.State state) Constructors in edu.umd.cs.findbugs.ba.bcp that throw DataflowAnalysisExceptionModifierConstructorDescriptionPatternMatcher(ByteCodePattern pattern, ClassContext classContext, org.apache.bcel.classfile.Method method) Constructor. -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.ca
Methods in edu.umd.cs.findbugs.ba.ca that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidvoidCallListAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, CallList fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.constant
Methods in edu.umd.cs.findbugs.ba.constant that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidConstantAnalysis.meetInto(ConstantFrame fact, Edge edge, ConstantFrame result) protected voidConstantAnalysis.mergeValues(ConstantFrame otherFrame, ConstantFrame resultFrame, int slot) voidConstantAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ConstantFrame frame) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.deref
Methods in edu.umd.cs.findbugs.ba.deref that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionstatic Set<ValueNumber> UnconditionalValueDerefAnalysis.checkAllNonNullParams(Location location, ValueNumberFrame vnaFrame, org.apache.bcel.generic.ConstantPoolGen constantPool, org.apache.bcel.classfile.Method method, IsNullValueDataflow invDataflow, TypeDataflow typeDataflow) private voidUnconditionalValueDerefAnalysis.checkInstance(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) Check to see if the instruction has a null check associated with it, and if so, add a dereference.private voidUnconditionalValueDerefAnalysis.checkNonNullParams(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) If this is a method call instruction, check to see if any of the parameters are @NonNull, and treat them as dereferences.static Set<ValueNumber> UnconditionalValueDerefAnalysis.checkNonNullParams(Location location, ValueNumberFrame vnaFrame, org.apache.bcel.generic.ConstantPoolGen constantPool, org.apache.bcel.classfile.Method method, IsNullValueFrame invFrame) private voidUnconditionalValueDerefAnalysis.checkNonNullPutField(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) If this is a putfield or putstatic instruction, check to see if the field is @NonNull, and treat it as dereferences.private voidUnconditionalValueDerefAnalysis.checkNonNullReturnValue(XMethod thisMethod, Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) If this is a method call instruction, check to see if any of the parameters are @NonNull, and treat them as dereferences.private voidUnconditionalValueDerefAnalysis.checkUnconditionalDerefDatabase(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) Check method call at given location to see if it unconditionally dereferences a parameter.static Set<ValueNumber> UnconditionalValueDerefAnalysis.checkUnconditionalDerefDatabase(Location location, ValueNumberFrame vnaFrame, org.apache.bcel.generic.ConstantPoolGen constantPool, IsNullValueFrame invFrame, TypeDataflow typeDataflow) private voidUnconditionalValueDerefAnalysis.handleNullCheck(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact) voidUnconditionalValueDerefAnalysis.initEntryFact(UnconditionalValueDerefSet result) voidUnconditionalValueDerefAnalysis.meetInto(UnconditionalValueDerefSet fact, Edge edge, UnconditionalValueDerefSet result) static booleanUnconditionalValueDerefAnalysis.reportPotentialDereference(Location location, IsNullValueFrame invFrame) voidUnconditionalValueDerefAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, UnconditionalValueDerefSet fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.heap
Methods in edu.umd.cs.findbugs.ba.heap that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidFieldSetAnalysis.initEntryFact(FieldSet result) voidvoidFieldSetAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, FieldSet fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.jsr305
Methods in edu.umd.cs.findbugs.ba.jsr305 that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidBackwardTypeQualifierDataflowAnalysis.edgeTransfer(Edge edge, TypeQualifierValueSet fact) voidTypeQualifierDataflowAnalysis.edgeTransfer(Edge edge, TypeQualifierValueSet fact) protected ForwardTypeQualifierDataflowForwardTypeQualifierDataflowFactory.getDataflow(DepthFirstSearch dfs, XMethod xmethod, CFG cfg, ValueNumberDataflow vnaDataflow, org.apache.bcel.generic.ConstantPoolGen cpg, IAnalysisCache analysisCache, MethodDescriptor methodDescriptor, TypeQualifierValue<?> typeQualifierValue) voidTypeQualifierDataflowAnalysis.initEntryFact(TypeQualifierValueSet result) voidTypeQualifierDataflowAnalysis.meetInto(TypeQualifierValueSet fact, Edge edge, TypeQualifierValueSet result) voidTypeQualifierValueSet.mergeWith(TypeQualifierValueSet fact) private voidBackwardTypeQualifierDataflowAnalysis.modelArguments(Location location) private voidBackwardTypeQualifierDataflowAnalysis.modelFieldStore(Location location) private voidBackwardTypeQualifierDataflowAnalysis.modelReturn(TypeQualifierAnnotation returnValueAnnotation, Location location) private voidForwardTypeQualifierDataflowAnalysis.registerConstantPushSource(Location location) private voidForwardTypeQualifierDataflowAnalysis.registerConstantSource(Location location, Object constantValue) private voidForwardTypeQualifierDataflowAnalysis.registerFieldLoadSource(Location location) private voidBackwardTypeQualifierDataflowAnalysis.registerInstructionSinks()private voidForwardTypeQualifierDataflowAnalysis.registerInstructionSources()private voidForwardTypeQualifierDataflowAnalysis.registerLDC2ValueSource(Location location) private voidForwardTypeQualifierDataflowAnalysis.registerLDCValueSource(Location location) private voidForwardTypeQualifierDataflowAnalysis.registerOtherSource(Location location) private voidForwardTypeQualifierDataflowAnalysis.registerPushNullSource(Location location) private voidForwardTypeQualifierDataflowAnalysis.registerReturnValueSource(Location location) voidBackwardTypeQualifierDataflowAnalysis.registerSourceSinkLocations()voidForwardTypeQualifierDataflowAnalysis.registerSourceSinkLocations()abstract voidTypeQualifierDataflowAnalysis.registerSourceSinkLocations()This method must be called before the dataflow analysis is executed.private voidForwardTypeQualifierDataflowAnalysis.registerTopOfStackSource(SourceSinkType sourceSinkType, Location location, javax.annotation.meta.When when, boolean interproc, Object constantValue) voidBackwardTypeQualifierDataflowAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeQualifierValueSet fact) voidTypeQualifierDataflowAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeQualifierValueSet fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.npe
Methods in edu.umd.cs.findbugs.ba.npe that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionprivate voidNullDerefAndRedundantComparisonFinder.analyzeIfNullBranch(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle lastHandle) This is called for both IFNULL and IFNONNULL instructions.voidIsNullValueFrameModelingVisitor.analyzeInstruction(org.apache.bcel.generic.Instruction ins) private voidNullDerefAndRedundantComparisonFinder.analyzeNullCheck(IsNullValueDataflow invDataflow, BasicBlock basicBlock) private voidNullDerefAndRedundantComparisonFinder.analyzeRefComparisonBranch(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle lastHandle) booleanReturnPathType.canReturnNormally()voidNullDerefAndRedundantComparisonFinder.checkEdges(CFG cfg, Map<ValueNumber, NullValueUnconditionalDeref> nullValueGuaranteedDerefMap, Map<ValueNumber, SortedSet<Location>> bugEdgeLocationMap) voidIsNullValueAnalysis.endTransfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, IsNullValueFrame result) private voidNullDerefAndRedundantComparisonFinder.examineBasicBlocks()Examine basic blocks for null checks and potentially-redundant null comparisons.private voidNullDerefAndRedundantComparisonFinder.examineNullValues()Examine null values.private IsNullConditionDecisionIsNullValueAnalysis.getDecision(BasicBlock basicBlock, IsNullValueFrame lastFrame) Determine if the given basic block ends in a redundant null comparison.IsNullValueAnalysis.getFactAtMidEdge(Edge edge) IsNullValueDataflow.getFactAtMidEdge(Edge edge) voidReturnPathTypeAnalysis.initEntryFact(ReturnPathType result) voidIsNullValueAnalysis.meetInto(IsNullValueFrame fact, Edge edge, IsNullValueFrame result) voidIsNullValueAnalysis.meetInto(IsNullValueFrame fact, Edge edge, IsNullValueFrame result, boolean propagatePhiNodeInformation) voidReturnPathTypeAnalysis.meetInto(ReturnPathType fact, Edge edge, ReturnPathType result) protected voidIsNullValueAnalysis.mergeInto(IsNullValueFrame other, IsNullValueFrame result) protected voidIsNullValueAnalysis.mergeValues(IsNullValueFrame otherFrame, IsNullValueFrame resultFrame, int slot) voidNullDerefAndRedundantComparisonFinder.reportBugs(Map<ValueNumber, NullValueUnconditionalDeref> nullValueGuaranteedDerefMap, HashSet<ValueNumber> npeIfStatementCovered, Map<ValueNumber, SortedSet<Location>> bugLocationMap, Map<ValueNumber, Set<Location>> nullValueAssignmentMap) voidIsNullValueAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, IsNullValueFrame start, IsNullValueFrame result) voidReturnPathTypeAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, ReturnPathType start, ReturnPathType result) voidIsNullValueAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, IsNullValueFrame fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.obl
Subclasses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.oblModifier and TypeClassDescriptionclassException to indicate that ObligationAnalysis has detected a situation in which an obligation is either acquired or released inside a loop.Methods in edu.umd.cs.findbugs.ba.obl that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionprivate org.apache.bcel.generic.TypeObligationAnalysis.acmpNullCheck(short opcode, Edge edge, org.apache.bcel.generic.InstructionHandle last, BasicBlock sourceBlock) private ObligationObligationAnalysis.comparesObligationTypeToNull(Edge edge) voidObligationAnalysis.edgeTransfer(Edge edge, StateSet fact) voidObligationAnalysis.initEntryFact(StateSet fact) voidprivate org.apache.bcel.generic.TypeObligationAnalysis.nullCheck(short opcode, Edge edge, org.apache.bcel.generic.InstructionHandle last, BasicBlock sourceBlock) voidObligationAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, StateSet start, StateSet result) voidObligationAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, StateSet fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.type
Methods in edu.umd.cs.findbugs.ba.type that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionvoidTypeFrameModelingVisitor.analyzeInstruction(org.apache.bcel.generic.Instruction ins) private TypeAnalysis.CachedExceptionSetTypeAnalysis.computeBlockExceptionSet(BasicBlock basicBlock, TypeFrame result) Compute the set of exceptions that can be thrown from the given basic block.private ExceptionSetTypeAnalysis.computeThrownExceptionTypes(BasicBlock basicBlock) Compute the set of exception types that can be thrown by given basic block.private voidTypeAnalysis.computeThrownExceptionTypes(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, TypeFrame result) voidprivate org.apache.bcel.generic.TypeTypeFrameModelingVisitor.merge(org.apache.bcel.generic.Type prevType, org.apache.bcel.generic.Type newType) protected org.apache.bcel.generic.ReferenceTypeStandardTypeMerger.mergeReferenceTypes(org.apache.bcel.generic.ReferenceType aRef, org.apache.bcel.generic.ReferenceType bRef) Default implementation of merging reference types.org.apache.bcel.generic.TypeStandardTypeMerger.mergeTypes(org.apache.bcel.generic.Type a, org.apache.bcel.generic.Type b) org.apache.bcel.generic.TypeTypeMerger.mergeTypes(org.apache.bcel.generic.Type a, org.apache.bcel.generic.Type b) Merge type Types.protected voidTypeAnalysis.mergeValues(TypeFrame otherFrame, TypeFrame resultFrame, int slot) org.apache.bcel.generic.TypeTypeFrame.popValue()Pop a value off of the Java operand stack.voidTypeAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, TypeFrame start, TypeFrame result) voidTypeAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, TypeFrame fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.ba.vna
Methods in edu.umd.cs.findbugs.ba.vna that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionstatic BugAnnotationValueNumberSourceInfo.getFromValueNumber(ClassContext classContext, org.apache.bcel.classfile.Method method, Location location, int stackPos) voidValueNumberAnalysis.meetInto(ValueNumberFrame fact, Edge edge, ValueNumberFrame result) protected voidValueNumberAnalysis.mergeInto(ValueNumberFrame frame, ValueNumberFrame result) protected voidValueNumberAnalysis.mergeValues(ValueNumberFrame otherFrame, ValueNumberFrame resultFrame, int slot) voidValueNumberAnalysis.transfer(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle end, ValueNumberFrame start, ValueNumberFrame result) voidValueNumberAnalysis.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock, ValueNumberFrame fact) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.classfile.engine.bcel
Methods in edu.umd.cs.findbugs.classfile.engine.bcel that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionValueRangeAnalysisFactory.Context.extractCondition(ValueRangeAnalysisFactory.BackIterator iterator) ValueRangeAnalysisFactory.Context.extractTwoArgCondition(ValueRangeAnalysisFactory.BackIterator iterator, short cmpOpcode, String signature) private ObjectValueRangeAnalysisFactory.Context.extractValue(ValueRangeAnalysisFactory.BackIterator iterator, String defSignature) -
Uses of DataflowAnalysisException in edu.umd.cs.findbugs.detect
Methods in edu.umd.cs.findbugs.detect that throw DataflowAnalysisExceptionModifier and TypeMethodDescriptionprivate voidCallToUnconditionalThrower.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidCallToUnsupportedMethod.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidCheckCalls.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidDontIgnoreResultOfPutIfAbsent.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidDumbMethodInvocations.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindBadCast2.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindDeadLocalStores.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindInconsistentSync2.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method, Set<org.apache.bcel.classfile.Method> lockedMethodSet) private voidFindMismatchedWaitOrNotify.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindNonSerializableStoreIntoSession.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindNonSerializableValuePassedToWriteObject.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindNullDeref.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) voidFindOpenStream.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method, StreamResourceTracker resourceTracker, ResourceCollection<Stream> resourceCollection) private voidFindRefComparison.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindSelfComparison2.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindSleepWithLockHeld.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindSqlInjection.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindTwoLockWait.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindUnrelatedTypesInGenericContainer.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindUseOfNonSerializableValue.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidLoadOfKnownNullValue.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidNoiseNullDeref.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidTrainFieldStoreTypes.analyzeMethod(ClassContext classContext, org.apache.bcel.classfile.Method method) private voidFindRefComparison.checkEqualsComparison(Location location, org.apache.bcel.classfile.JavaClass jclass, org.apache.bcel.classfile.Method method, org.apache.bcel.generic.MethodGen methodGen, org.apache.bcel.generic.ConstantPoolGen cpg, TypeDataflow typeDataflow) private voidCheckTypeQualifiers.checkForEqualityTest(XMethod xmethod, CFG cfg, TypeQualifierValue<?> typeQualifierValue, TypeQualifierValueSet forwardsFact, Location loc, ValueNumberFrame factAtLocation) private voidFindSelfComparison2.checkForSelfOperation(ClassContext classContext, Location location, ValueNumberDataflow valueNumberDataflow, String op, org.apache.bcel.classfile.Method method, org.apache.bcel.generic.MethodGen methodGen, String sourceFile) private voidFindRefComparison.checkRefComparison(Location location, org.apache.bcel.classfile.JavaClass jclass, org.apache.bcel.classfile.Method method, org.apache.bcel.generic.MethodGen methodGen, FindRefComparison.RefComparisonTypeFrameModelingVisitor visitor, TypeDataflow typeDataflow, List<FindRefComparison.WarningWithProperties> stringComparisonList, List<FindRefComparison.WarningWithProperties> refComparisonList) private voidFindNullDeref.checkUnconditionallyDereferencedParam(Location location, org.apache.bcel.generic.ConstantPoolGen cpg, TypeDataflow typeDataflow, org.apache.bcel.generic.InvokeInstruction invokeInstruction, BitSet nullArgSet, BitSet definitelyNullArgSet) private voidFindNullDeref.examineCallSite(Location location, org.apache.bcel.generic.ConstantPoolGen cpg, TypeDataflow typeDataflow) private voidFindNullDeref.examinePutfieldInstruction(Location location, org.apache.bcel.generic.PUTFIELD ins, org.apache.bcel.generic.ConstantPoolGen cpg) private voidFindNullDeref.examineReturnInstruction(Location location) FindInconsistentSync2.findObviouslyLockedCallSites(ClassContext classContext, SelfCalls selfCalls) Find all self-call sites that are obviously locked.private BitSetFindNullDeref.findPreviouslyDeadBlocks()Find set of blocks which were known to be dead before doing the null pointer analysis.private BitSetNoiseNullDeref.findPreviouslyDeadBlocks()Find set of blocks which were known to be dead before doing the null pointer analysis.private Set<ValueNumber> FindBadCast2.getParameterValueNumbers(ClassContext classContext, org.apache.bcel.classfile.Method method, CFG cfg) FindUnreleasedLock.getResourceTracker(ClassContext classContext, org.apache.bcel.classfile.Method method) (package private) voidFindUselessObjects.UselessValuesContext.initObservedValues()private voidFindRefComparison.inspectLocation(org.apache.bcel.classfile.JavaClass jclass, org.apache.bcel.generic.ConstantPoolGen cpg, org.apache.bcel.classfile.Method method, org.apache.bcel.generic.MethodGen methodGen, LinkedList<FindRefComparison.WarningWithProperties> refComparisonList, LinkedList<FindRefComparison.WarningWithProperties> stringComparisonList, FindRefComparison.RefComparisonTypeFrameModelingVisitor visitor, TypeDataflow typeDataflow, Location location) booleanFindUnreleasedLock.LockResourceTracker.isResourceClose(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg, Lock resource, ResourceValueFrame frame) FindUnreleasedLock.LockResourceTracker.isResourceCreation(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) protected org.apache.bcel.generic.ReferenceTypeFindRefComparison.RefComparisonTypeMerger.mergeReferenceTypes(org.apache.bcel.generic.ReferenceType aRef, org.apache.bcel.generic.ReferenceType bRef) booleanStreamResourceTracker.mightCloseResource(BasicBlock basicBlock, org.apache.bcel.generic.InstructionHandle handle, org.apache.bcel.generic.ConstantPoolGen cpg) (package private) booleanFindUselessObjects.UselessValuesContext.propagateToReturnValue(Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn, FindUselessObjects.GenLocation location, MethodDescriptor m) voidLazyInit.reportMatch(ClassContext classContext, org.apache.bcel.classfile.Method method, ByteCodePatternMatch match) voidFindUnreleasedLock.LockFrameModelingVisitor.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock) voidStreamFrameModelingVisitor.transferInstruction(org.apache.bcel.generic.InstructionHandle handle, BasicBlock basicBlock) FindUselessObjects.GenLocation.typeFrameBefore()FindUselessObjects.RegularLocation.typeFrameBefore()voidFindTwoLockWait.visitLocation(ClassContext classContext, Location location, org.apache.bcel.generic.MethodGen methodGen, LockDataflow dataflow)