Package edu.umd.cs.findbugs.detect
Class FindUselessObjects.UselessValuesContext
- java.lang.Object
-
- edu.umd.cs.findbugs.detect.FindUselessObjects.UselessValuesContext
-
- Enclosing class:
- FindUselessObjects
private class FindUselessObjects.UselessValuesContext extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description (package private) CFGcfg(package private) ClassContextclassContext(package private) intcount(package private) org.apache.bcel.generic.ConstantPoolGencpg(package private) org.apache.bcel.classfile.Methodmethod(package private) java.util.Map<java.lang.Integer,FindUselessObjects.ValueInfo>observedValues(package private) TypeAnalysista(package private) ValueNumberthisValue(package private) java.util.Map<java.lang.Integer,java.util.Set<FindUselessObjects.ValueInfo>>values(package private) ValueNumberAnalysisvna
-
Constructor Summary
Constructors Constructor Description UselessValuesContext(ClassContext classContext, org.apache.bcel.classfile.Method method)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidenhanceViaMergeTree()(package private) booleanescaped(ValueNumber vn)(package private) java.util.Iterator<FindUselessObjects.GenLocation>genIterator()(package private) java.util.Set<FindUselessObjects.ValueInfo>getLiveVals(ValueNumber vn)(package private) voidinitObservedValues()(package private) booleanisEmpty()(package private) booleanpropagateToReturnValue(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn, FindUselessObjects.GenLocation location, MethodDescriptor m)(package private) booleanpropagateValues(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber origNumber, ValueNumber vn)(package private) voidreport()(package private) booleansetDerivedEscape(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn)(package private) booleansetEscape(java.util.Set<FindUselessObjects.ValueInfo> vals)(package private) booleansetObjectOnly(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn)(package private) booleansetUsed(java.util.Set<FindUselessObjects.ValueInfo> vals)
-
-
-
Field Detail
-
vna
ValueNumberAnalysis vna
-
ta
TypeAnalysis ta
-
cfg
CFG cfg
-
count
int count
-
observedValues
java.util.Map<java.lang.Integer,FindUselessObjects.ValueInfo> observedValues
-
cpg
org.apache.bcel.generic.ConstantPoolGen cpg
-
values
java.util.Map<java.lang.Integer,java.util.Set<FindUselessObjects.ValueInfo>> values
-
thisValue
ValueNumber thisValue
-
classContext
ClassContext classContext
-
method
org.apache.bcel.classfile.Method method
-
-
Constructor Detail
-
UselessValuesContext
UselessValuesContext(ClassContext classContext, org.apache.bcel.classfile.Method method) throws CheckedAnalysisException
- Throws:
CheckedAnalysisException
-
-
Method Detail
-
initObservedValues
void initObservedValues() throws DataflowAnalysisException- Throws:
DataflowAnalysisException
-
enhanceViaMergeTree
void enhanceViaMergeTree()
-
setEscape
boolean setEscape(java.util.Set<FindUselessObjects.ValueInfo> vals)
-
setDerivedEscape
boolean setDerivedEscape(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn)
-
setUsed
boolean setUsed(java.util.Set<FindUselessObjects.ValueInfo> vals)
-
setObjectOnly
boolean setObjectOnly(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn)
-
propagateValues
boolean propagateValues(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber origNumber, ValueNumber vn)
-
propagateToReturnValue
boolean propagateToReturnValue(java.util.Set<FindUselessObjects.ValueInfo> vals, ValueNumber vn, FindUselessObjects.GenLocation location, MethodDescriptor m) throws DataflowAnalysisException
- Throws:
DataflowAnalysisException
-
isEmpty
boolean isEmpty()
-
genIterator
java.util.Iterator<FindUselessObjects.GenLocation> genIterator()
-
escaped
boolean escaped(ValueNumber vn)
-
getLiveVals
java.util.Set<FindUselessObjects.ValueInfo> getLiveVals(ValueNumber vn)
-
report
void report()
-
-