Class BranchedRefVarsAnalysis
- java.lang.Object
-
- soot.toolkits.scalar.AbstractFlowAnalysis<N,A>
-
- soot.toolkits.scalar.BranchedFlowAnalysis<Unit,A>
-
- soot.toolkits.scalar.ForwardBranchedFlowAnalysis<FlowSet<RefIntPair>>
-
- soot.jimple.toolkits.annotation.nullcheck.BranchedRefVarsAnalysis
-
@Deprecated public class BranchedRefVarsAnalysis extends ForwardBranchedFlowAnalysis<FlowSet<RefIntPair>>
Deprecated.THIS IS KNOWN TO BE BUGGY. USENullnessAnalysisINSTEAD!
-
-
Field Summary
-
Fields inherited from class soot.toolkits.scalar.BranchedFlowAnalysis
unitToAfterBranchFlow, unitToAfterFallFlow
-
Fields inherited from class soot.toolkits.scalar.AbstractFlowAnalysis
filterUnitToBeforeFlow, graph, unitToBeforeFlow
-
-
Constructor Summary
Constructors Constructor Description BranchedRefVarsAnalysis(UnitGraph g)Deprecated.THIS IS KNOWN TO BE BUGGY.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description intanyRefInfo(Value r, FlowSet<RefIntPair> f)Deprecated.protected voidcopy(FlowSet<RefIntPair> source, FlowSet<RefIntPair> dest)Deprecated.Creates a copy of thesourceflow object indest.protected FlowSet<RefIntPair>entryInitialFlow()Deprecated.Returns the initial flow value for entry/exit graph nodes.protected voidflowThrough(FlowSet<RefIntPair> in, Unit stmt, List<FlowSet<RefIntPair>> outFall, List<FlowSet<RefIntPair>> outBranch)Deprecated.Given the merge of theinsets, compute thefallOutandbranchOutsset fors.EquivalentValuegetEquivalentValue(Value v)Deprecated.RefIntPairgetKRefIntPair(EquivalentValue r, int v)Deprecated.protected voidmerge(FlowSet<RefIntPair> in1, FlowSet<RefIntPair> in2, FlowSet<RefIntPair> out)Deprecated.Compute the merge of thein1andin2sets, putting the result intoout.protected FlowSet<RefIntPair>newInitialFlow()Deprecated.Returns the flow object corresponding to the initial values for each graph node.protected intrefInfo(EquivalentValue r, FlowSet<RefIntPair> fs)Deprecated.booleantreatTrapHandlersAsEntries()Deprecated.Determines whetherentryInitialFlow()is applied to trap handlers.-
Methods inherited from class soot.toolkits.scalar.ForwardBranchedFlowAnalysis
doAnalysis, isForward
-
Methods inherited from class soot.toolkits.scalar.BranchedFlowAnalysis
getBranchFlowAfter, getFallFlowAfter
-
Methods inherited from class soot.toolkits.scalar.AbstractFlowAnalysis
getFlowBefore, merge, mergeInto
-
-
-
-
Field Detail
-
kBottom
public static final int kBottom
Deprecated.- See Also:
- Constant Field Values
-
kNull
public static final int kNull
Deprecated.- See Also:
- Constant Field Values
-
kNonNull
public static final int kNonNull
Deprecated.- See Also:
- Constant Field Values
-
kTop
public static final int kTop
Deprecated.- See Also:
- Constant Field Values
-
emptySet
protected final FlowSet<RefIntPair> emptySet
Deprecated.
-
fullSet
protected final FlowSet<RefIntPair> fullSet
Deprecated.
-
unitToGenerateSet
protected final Map<Unit,FlowSet<RefIntPair>> unitToGenerateSet
Deprecated.
-
unitToPreserveSet
protected final Map<Unit,FlowSet<RefIntPair>> unitToPreserveSet
Deprecated.
-
unitToAnalyzedChecksSet
protected final Map<Unit,HashSet<Value>> unitToAnalyzedChecksSet
Deprecated.
-
unitToArrayRefChecksSet
protected final Map<Unit,HashSet<Value>> unitToArrayRefChecksSet
Deprecated.
-
unitToInstanceFieldRefChecksSet
protected final Map<Unit,HashSet<Value>> unitToInstanceFieldRefChecksSet
Deprecated.
-
unitToInstanceInvokeExprChecksSet
protected final Map<Unit,HashSet<Value>> unitToInstanceInvokeExprChecksSet
Deprecated.
-
unitToLengthExprChecksSet
protected final Map<Unit,HashSet<Value>> unitToLengthExprChecksSet
Deprecated.
-
refTypeLocals
protected final List<EquivalentValue> refTypeLocals
Deprecated.
-
refTypeInstFields
protected final List<EquivalentValue> refTypeInstFields
Deprecated.
-
refTypeInstFieldBases
protected final List<EquivalentValue> refTypeInstFieldBases
Deprecated.
-
refTypeStaticFields
protected final List<EquivalentValue> refTypeStaticFields
Deprecated.
-
refTypeValues
protected final List<EquivalentValue> refTypeValues
Deprecated.
-
tempFlowSet
protected FlowSet<RefIntPair> tempFlowSet
Deprecated.
-
-
Constructor Detail
-
BranchedRefVarsAnalysis
@Deprecated public BranchedRefVarsAnalysis(UnitGraph g)
Deprecated.THIS IS KNOWN TO BE BUGGY. USENullnessAnalysisINSTEAD!
-
-
Method Detail
-
getEquivalentValue
public EquivalentValue getEquivalentValue(Value v)
Deprecated.
-
getKRefIntPair
public RefIntPair getKRefIntPair(EquivalentValue r, int v)
Deprecated.
-
refInfo
protected final int refInfo(EquivalentValue r, FlowSet<RefIntPair> fs)
Deprecated.
-
anyRefInfo
public final int anyRefInfo(Value r, FlowSet<RefIntPair> f)
Deprecated.
-
flowThrough
protected void flowThrough(FlowSet<RefIntPair> in, Unit stmt, List<FlowSet<RefIntPair>> outFall, List<FlowSet<RefIntPair>> outBranch)
Deprecated.Description copied from class:BranchedFlowAnalysisGiven the merge of theinsets, compute thefallOutandbranchOutsset fors.- Specified by:
flowThroughin classBranchedFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
merge
protected void merge(FlowSet<RefIntPair> in1, FlowSet<RefIntPair> in2, FlowSet<RefIntPair> out)
Deprecated.Description copied from class:AbstractFlowAnalysisCompute the merge of thein1andin2sets, putting the result intoout. The behavior of this function depends on the implementation ( it may be necessary to check whetherin1andin2are equal or aliased ). Used by the doAnalysis method.- Specified by:
mergein classAbstractFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
copy
protected void copy(FlowSet<RefIntPair> source, FlowSet<RefIntPair> dest)
Deprecated.Description copied from class:AbstractFlowAnalysisCreates a copy of thesourceflow object indest.- Specified by:
copyin classAbstractFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
newInitialFlow
protected FlowSet<RefIntPair> newInitialFlow()
Deprecated.Description copied from class:AbstractFlowAnalysisReturns the flow object corresponding to the initial values for each graph node.- Specified by:
newInitialFlowin classAbstractFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
entryInitialFlow
protected FlowSet<RefIntPair> entryInitialFlow()
Deprecated.Description copied from class:AbstractFlowAnalysisReturns the initial flow value for entry/exit graph nodes. This is equal toAbstractFlowAnalysis.newInitialFlow()- Overrides:
entryInitialFlowin classAbstractFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
treatTrapHandlersAsEntries
public boolean treatTrapHandlersAsEntries()
Deprecated.Description copied from class:AbstractFlowAnalysisDetermines whetherentryInitialFlow()is applied to trap handlers.- Overrides:
treatTrapHandlersAsEntriesin classAbstractFlowAnalysis<Unit,FlowSet<RefIntPair>>
-
-