Class TracedVariables

java.lang.Object
proguard.evaluation.Variables
proguard.evaluation.TracedVariables

public class TracedVariables extends Variables
This Variables 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.

  • Field Details

  • Constructor Details

    • 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 Details

    • 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.
      Overrides:
      reset in class Variables
    • 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.
      Overrides:
      store in class Variables
    • equals

      public boolean equals(Object object)
      Overrides:
      equals in class Variables
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Variables
    • toString

      public String toString()
      Overrides:
      toString in class Variables