DataflowAnalysis<Fact>public class ConstantAnalysis extends FrameDataflowAnalysis<Constant,ConstantFrame>
Constant| Constructor | Description |
|---|---|
ConstantAnalysis(org.apache.bcel.generic.MethodGen methodGen,
DepthFirstSearch dfs) |
| Modifier and Type | Method | Description |
|---|---|---|
ConstantFrame |
createFact() |
Create empty (uninitialized) dataflow facts for one program point.
|
void |
initEntryFact(ConstantFrame frame) |
Initialize the "entry" fact for the graph.
|
void |
meetInto(ConstantFrame fact,
Edge edge,
ConstantFrame result) |
Meet a dataflow fact associated with an incoming edge into another fact.
|
protected void |
mergeValues(ConstantFrame otherFrame,
ConstantFrame resultFrame,
int slot) |
Merge the values contained in a given slot of two Frames.
|
void |
transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
ConstantFrame frame) |
Transfer function for a single instruction.
|
getFactAfterLocation, getFactAtLocation, transferedgeTransfer, factToString, finishIteration, getFactOnEdge, getResultFact, getStartFact, resultFactIterator, startIterationgetBlockOrder, getDepthFirstSearch, isForwardscopy, getFactAtPC, getFactBeforeExceptionCheck, getLastUpdateTimestamp, isFactValid, isTop, makeFactTop, mergeInto, modifyFrame, same, setLastUpdateTimestamppublic ConstantAnalysis(org.apache.bcel.generic.MethodGen methodGen,
DepthFirstSearch dfs)
public ConstantFrame createFact()
DataflowAnalysispublic void initEntryFact(ConstantFrame frame)
DataflowAnalysispublic void transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
ConstantFrame frame)
throws DataflowAnalysisException
AbstractDataflowAnalysistransferInstruction in class AbstractDataflowAnalysis<ConstantFrame>handle - the instructionbasicBlock - the BasicBlock containing the instruction; needed to
disambiguate instructions in inlined JSR subroutinesframe - which should be modified based on the instructionDataflowAnalysisExceptionpublic void meetInto(ConstantFrame fact, Edge edge, ConstantFrame result) throws DataflowAnalysisException
DataflowAnalysisfact - the predecessor fact (incoming edge)edge - the edge from the predecessorresult - the result factDataflowAnalysisExceptionprotected void mergeValues(ConstantFrame otherFrame, ConstantFrame resultFrame, int slot) throws DataflowAnalysisException
FrameDataflowAnalysismergeValues in class FrameDataflowAnalysis<Constant,ConstantFrame>otherFrame - a FrameresultFrame - a Frame which will contain the resulting merged valueslot - a slot in both framesDataflowAnalysisExceptionFindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.