Class VerificationType
- java.lang.Object
-
- proguard.util.SimpleProcessable
-
- proguard.classfile.attribute.preverification.VerificationType
-
- All Implemented Interfaces:
java.io.Serializable
,Processable
- Direct Known Subclasses:
DoubleType
,FloatType
,IntegerType
,LongType
,NullType
,ObjectType
,TopType
,UninitializedThisType
,UninitializedType
public abstract class VerificationType extends SimpleProcessable
This abstract class represents a verification type of a local variable or a stack element. Specific verification types are subclassed from it.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
DOUBLE_TYPE
static int
FLOAT_TYPE
static int
INTEGER_TYPE
static int
LONG_TYPE
static int
NULL_TYPE
static int
OBJECT_TYPE
static int
TOP_TYPE
static int
UNINITIALIZED_THIS_TYPE
static int
UNINITIALIZED_TYPE
-
Fields inherited from class proguard.util.SimpleProcessable
processingFlags, processingInfo
-
-
Constructor Summary
Constructors Constructor Description VerificationType()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
accept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a method's code, either on a stack or as a variable.boolean
equals(java.lang.Object object)
abstract int
getTag()
Returns the tag of the verification type.int
hashCode()
abstract void
stackAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, int stackIndex, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a stack in a method's code .abstract void
variablesAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, int variableIndex, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a variable in a method's code.-
Methods inherited from class proguard.util.SimpleProcessable
addProcessingFlags, getProcessingFlags, getProcessingInfo, hasProcessingFlags, removeProcessingFlags, setProcessingFlags, setProcessingInfo
-
-
-
-
Field Detail
-
TOP_TYPE
public static final int TOP_TYPE
- See Also:
- Constant Field Values
-
INTEGER_TYPE
public static final int INTEGER_TYPE
- See Also:
- Constant Field Values
-
FLOAT_TYPE
public static final int FLOAT_TYPE
- See Also:
- Constant Field Values
-
DOUBLE_TYPE
public static final int DOUBLE_TYPE
- See Also:
- Constant Field Values
-
LONG_TYPE
public static final int LONG_TYPE
- See Also:
- Constant Field Values
-
NULL_TYPE
public static final int NULL_TYPE
- See Also:
- Constant Field Values
-
UNINITIALIZED_THIS_TYPE
public static final int UNINITIALIZED_THIS_TYPE
- See Also:
- Constant Field Values
-
OBJECT_TYPE
public static final int OBJECT_TYPE
- See Also:
- Constant Field Values
-
UNINITIALIZED_TYPE
public static final int UNINITIALIZED_TYPE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getTag
public abstract int getTag()
Returns the tag of the verification type.
-
accept
public abstract void accept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a method's code, either on a stack or as a variable.
-
stackAccept
public abstract void stackAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, int stackIndex, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a stack in a method's code .
-
variablesAccept
public abstract void variablesAccept(Clazz clazz, Method method, CodeAttribute codeAttribute, int instructionOffset, int variableIndex, VerificationTypeVisitor verificationTypeVisitor)
Accepts the given visitor in the context of a variable in a method's code.
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-