public abstract class FieldSetAnalysis extends ForwardDataflowAnalysis<FieldSet>
| Constructor and Description |
|---|
FieldSetAnalysis(DepthFirstSearch dfs,
org.apache.bcel.generic.ConstantPoolGen cpg) |
| Modifier and Type | Method and Description |
|---|---|
void |
copy(FieldSet source,
FieldSet dest)
Copy dataflow facts.
|
FieldSet |
createFact()
Create empty (uninitialized) dataflow facts for one program point.
|
org.apache.bcel.generic.ConstantPoolGen |
getCPG() |
void |
initEntryFact(FieldSet result)
Initialize the "entry" fact for the graph.
|
boolean |
isFactValid(FieldSet fact)
Determine whether the given fact is valid (neither top nor
bottom).
|
boolean |
isTop(FieldSet fact)
Is the given fact the top value.
|
void |
makeFactTop(FieldSet fact)
Make given fact the top value.
|
void |
meetInto(FieldSet fact,
Edge edge,
FieldSet result)
Meet a dataflow fact associated with an incoming edge into another fact.
|
boolean |
same(FieldSet fact1,
FieldSet fact2)
Are given dataflow facts the same?
|
protected abstract void |
sawLoad(FieldSet fact,
XField field) |
protected abstract void |
sawStore(FieldSet fact,
XField field) |
void |
transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
FieldSet fact)
Transfer function for a single instruction.
|
getBlockOrder, getDepthFirstSearch, isForwardsgetFactAfterLocation, getFactAtLocation, transferedgeTransfer, factToString, finishIteration, getFactOnEdge, getLastUpdateTimestamp, getResultFact, getStartFact, resultFactIterator, setLastUpdateTimestamp, startIterationpublic FieldSetAnalysis(DepthFirstSearch dfs, org.apache.bcel.generic.ConstantPoolGen cpg)
public org.apache.bcel.generic.ConstantPoolGen getCPG()
public void makeFactTop(FieldSet fact)
DataflowAnalysispublic boolean isTop(FieldSet fact)
DataflowAnalysispublic void initEntryFact(FieldSet result) throws DataflowAnalysisException
DataflowAnalysisDataflowAnalysisExceptionpublic void meetInto(FieldSet fact, Edge edge, FieldSet result) throws DataflowAnalysisException
DataflowAnalysisfact - the predecessor fact (incoming edge)edge - the edge from the predecessorresult - the result factDataflowAnalysisExceptionpublic boolean same(FieldSet fact1, FieldSet fact2)
DataflowAnalysispublic FieldSet createFact()
DataflowAnalysispublic boolean isFactValid(FieldSet fact)
AbstractDataflowAnalysisisFactValid in class AbstractDataflowAnalysis<FieldSet>public void copy(FieldSet source, FieldSet dest)
DataflowAnalysispublic void transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
FieldSet fact)
throws DataflowAnalysisException
AbstractDataflowAnalysistransferInstruction in class AbstractDataflowAnalysis<FieldSet>handle - the instructionbasicBlock - the BasicBlock containing the instruction; needed to
disambiguate instructions in inlined JSR subroutinesfact - which should be modified based on the instructionDataflowAnalysisExceptionFindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.