Package proguard.evaluation
Class TracedVariables
- java.lang.Object
-
- proguard.evaluation.Variables
-
- proguard.evaluation.TracedVariables
-
public class TracedVariables extends Variables
ThisVariables
saves 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 boolean
equals(java.lang.Object object)
boolean
generalize(TracedVariables other, boolean clearConflictingOtherVariables)
Value
getProducerValue(int index)
Gets the producer Value for the specified variable, without disturbing it.int
hashCode()
void
initialize(TracedVariables other)
void
reset(int size)
Resets this Variables object, so that it can be reused.void
setProducerValue(int index, Value value)
Sets the given producer Value for the specified variable, without disturbing it.void
setProducerValue(Value producerValue)
Sets the Value that will be stored along with all store instructions.void
store(int index, Value value)
Stores the given Value at the given variable index.java.lang.String
toString()
-
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:Variables
Resets 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:Variables
Stores the given Value at the given variable index.
-
-