Package proguard.evaluation
Class TracedVariables
- java.lang.Object
-
- proguard.evaluation.Variables
-
- proguard.evaluation.TracedVariables
-
public class TracedVariables extends Variables
ThisVariablessaves additional information with variables, to keep track of their origins.The class stores a given producer Value along with each Value it stores. It then generalizes a given collected Value with the producer Value of each Value it loads. The producer Value and the initial collected Value can be set; the generalized collected Value can be retrieved.
-
-
Constructor Summary
Constructors Constructor Description TracedVariables(int size)Creates a new TracedVariables with a given size.TracedVariables(TracedVariables tracedVariables)Creates a new TracedVariables that is a copy of the given TracedVariables.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object object)booleangeneralize(TracedVariables other, boolean clearConflictingOtherVariables)ValuegetProducerValue(int index)Gets the producer Value for the specified variable, without disturbing it.inthashCode()voidinitialize(TracedVariables other)voidreset(int size)Resets this Variables object, so that it can be reused.voidsetProducerValue(int index, Value value)Sets the given producer Value for the specified variable, without disturbing it.voidsetProducerValue(Value producerValue)Sets the Value that will be stored along with all store instructions.voidstore(int index, Value value)Stores the given Value at the given variable index.java.lang.StringtoString()-
Methods inherited from class proguard.evaluation.Variables
aload, dload, fload, generalize, getValue, getValues, iload, initialize, lload, load, oload, replaceReferences, size
-
-
-
-
Field Detail
-
NONE
public static final int NONE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TracedVariables
public TracedVariables(int size)
Creates a new TracedVariables with a given size.
-
TracedVariables
public TracedVariables(TracedVariables tracedVariables)
Creates a new TracedVariables that is a copy of the given TracedVariables.
-
-
Method Detail
-
setProducerValue
public void setProducerValue(Value producerValue)
Sets the Value that will be stored along with all store instructions.
-
getProducerValue
public Value getProducerValue(int index)
Gets the producer Value for the specified variable, without disturbing it.- Parameters:
index- the variable index.- Returns:
- the producer value of the given variable.
-
setProducerValue
public void setProducerValue(int index, Value value)Sets the given producer Value for the specified variable, without disturbing it.- Parameters:
index- the variable index.value- the producer value to set.
-
reset
public void reset(int size)
Description copied from class:VariablesResets this Variables object, so that it can be reused.
-
initialize
public void initialize(TracedVariables other)
-
generalize
public boolean generalize(TracedVariables other, boolean clearConflictingOtherVariables)
-
store
public void store(int index, Value value)Description copied from class:VariablesStores the given Value at the given variable index.
-
-