edu.umd.cs.findbugs.ba.jsr305
Class ForwardTypeQualifierDataflowAnalysis
java.lang.Object
edu.umd.cs.findbugs.ba.BasicAbstractDataflowAnalysis<Fact>
edu.umd.cs.findbugs.ba.AbstractDataflowAnalysis<TypeQualifierValueSet>
edu.umd.cs.findbugs.ba.jsr305.TypeQualifierDataflowAnalysis
edu.umd.cs.findbugs.ba.jsr305.ForwardTypeQualifierDataflowAnalysis
- All Implemented Interfaces:
- DataflowAnalysis<TypeQualifierValueSet>
public class ForwardTypeQualifierDataflowAnalysis
- extends TypeQualifierDataflowAnalysis
Forward type qualifier dataflow analysis.
- Author:
- David Hovemeyer
Methods inherited from class edu.umd.cs.findbugs.ba.jsr305.TypeQualifierDataflowAnalysis |
copy, createFact, edgeTransfer, getSourceSinkInfoSet, initEntryFact, isFactValid, isTop, makeFactTop, meetInto, registerSourceSink, same, transferInstruction |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ForwardTypeQualifierDataflowAnalysis
public ForwardTypeQualifierDataflowAnalysis(DepthFirstSearch dfs,
XMethod xmethod,
CFG cfg,
ValueNumberDataflow vnaDataflow,
org.apache.bcel.generic.ConstantPoolGen cpg,
TypeQualifierValue typeQualifierValue)
- Constructor.
- Parameters:
dfs
- DepthFirstSearch on the analyzed methodxmethod
- XMethod for the analyzed methodcfg
- CFG of the analyzed methodvnaDataflow
- ValueNumberDataflow on the analyzed methodcpg
- ConstantPoolGen of the analyzed methodtypeQualifierValue
- TypeQualifierValue representing type qualifier the analysis should check
getBlockOrder
public BlockOrder getBlockOrder(CFG cfg)
- Description copied from interface:
DataflowAnalysis
- Return the BlockOrder specifying the order in which BasicBlocks
should be visited in the main dataflow loop.
- Parameters:
cfg
- the CFG upon which we're performing dataflow analysis
isForwards
public boolean isForwards()
- Description copied from interface:
DataflowAnalysis
- Returns true if the analysis is forwards, false if backwards.
registerSourceSinkLocations
public void registerSourceSinkLocations()
throws DataflowAnalysisException
- Description copied from class:
TypeQualifierDataflowAnalysis
- This method must be called before the dataflow analysis
is executed.
- Specified by:
registerSourceSinkLocations
in class TypeQualifierDataflowAnalysis
- Throws:
DataflowAnalysisException
propagateAcrossPhiNode
protected void propagateAcrossPhiNode(TypeQualifierValueSet fact,
ValueNumber sourceVN,
ValueNumber targetVN)
- Specified by:
propagateAcrossPhiNode
in class TypeQualifierDataflowAnalysis
FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.