ProGuard

proguard.optimize.evaluation.value
Class InstructionOffsetValue

java.lang.Object
  extended byproguard.optimize.evaluation.value.Value
      extended byproguard.optimize.evaluation.value.Category1Value
          extended byproguard.optimize.evaluation.value.InstructionOffsetValue

public class InstructionOffsetValue
extends proguard.optimize.evaluation.value.Category1Value

This class represents a partially evaluated instruction offset. It can contain 0 or more specific instruction offsets.


Field Summary
 
Fields inherited from class proguard.optimize.evaluation.value.Value
ALWAYS, MAYBE, NEVER, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INSTRUCTION_OFFSET, TYPE_INTEGER, TYPE_LONG, TYPE_REFERENCE
 
Constructor Summary
InstructionOffsetValue()
           
InstructionOffsetValue(int value)
           
InstructionOffsetValue(int[] values)
           
 
Method Summary
 proguard.optimize.evaluation.value.Category1Value category1Value()
          Returns this Value as a Category1Value.
 int computationalType()
          Returns the computational type of this Value.
 boolean contains(int value)
          Returns whether the given value is present in this list of instruction offsets.
 boolean equals(Object object)
           
 Value generalize(InstructionOffsetValue other)
          Returns the generalization of this InstructionOffsetValue and the given other InstructionOffsetValue.
 Value generalize(Value other)
          Returns the generalization of this Value and the given other Value.
 int hashCode()
           
 int instructionOffset(int index)
           
 int instructionOffsetCount()
           
 InstructionOffsetValue instructionOffsetValue()
          Returns this Value as a InstructionOffsetValue.
 boolean isCategory2()
          Returns whether the computational type of this Value is a category 2 type.
 String toString()
           
 
Methods inherited from class proguard.optimize.evaluation.value.Value
category2Value, doubleValue, floatValue, integerValue, isSpecific, longValue, referenceValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

InstructionOffsetValue

public InstructionOffsetValue()

InstructionOffsetValue

public InstructionOffsetValue(int value)

InstructionOffsetValue

public InstructionOffsetValue(int[] values)
Method Detail

instructionOffsetCount

public int instructionOffsetCount()

instructionOffset

public int instructionOffset(int index)

contains

public boolean contains(int value)
Returns whether the given value is present in this list of instruction offsets.


generalize

public final Value generalize(InstructionOffsetValue other)
Returns the generalization of this InstructionOffsetValue and the given other InstructionOffsetValue.


instructionOffsetValue

public final InstructionOffsetValue instructionOffsetValue()
Description copied from class: Value
Returns this Value as a InstructionOffsetValue.

Overrides:
instructionOffsetValue in class Value

generalize

public final Value generalize(Value other)
Description copied from class: Value
Returns the generalization of this Value and the given other Value.

Specified by:
generalize in class Value

computationalType

public final int computationalType()
Description copied from class: Value
Returns the computational type of this Value. The type is one of

Specified by:
computationalType in class Value

equals

public boolean equals(Object object)

hashCode

public int hashCode()

toString

public String toString()

category1Value

public final proguard.optimize.evaluation.value.Category1Value category1Value()
Description copied from class: Value
Returns this Value as a Category1Value.

Overrides:
category1Value in class Value

isCategory2

public final boolean isCategory2()
Description copied from class: Value
Returns whether the computational type of this Value is a category 2 type. This means that it takes up the space of two category 1 types on the stack, for instance.

Specified by:
isCategory2 in class Value

ProGuard