abstract class Symbol
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
(package private) static int |
BOOTSTRAP_METHOD_TAG
The tag value of the BootstrapMethods attribute entries.
|
(package private) static int |
CONSTANT_CLASS_TAG
The tag value of CONSTANT_Class_info JVMS structures.
|
(package private) static int |
CONSTANT_DOUBLE_TAG
The tag value of CONSTANT_Double_info JVMS structures.
|
(package private) static int |
CONSTANT_DYNAMIC_TAG
The tag value of CONSTANT_Dynamic_info JVMS structures.
|
(package private) static int |
CONSTANT_FIELDREF_TAG
The tag value of CONSTANT_Fieldref_info JVMS structures.
|
(package private) static int |
CONSTANT_FLOAT_TAG
The tag value of CONSTANT_Float_info JVMS structures.
|
(package private) static int |
CONSTANT_INTEGER_TAG
The tag value of CONSTANT_Integer_info JVMS structures.
|
(package private) static int |
CONSTANT_INTERFACE_METHODREF_TAG
The tag value of CONSTANT_InterfaceMethodref_info JVMS structures.
|
(package private) static int |
CONSTANT_INVOKE_DYNAMIC_TAG
The tag value of CONSTANT_InvokeDynamic_info JVMS structures.
|
(package private) static int |
CONSTANT_LONG_TAG
The tag value of CONSTANT_Long_info JVMS structures.
|
(package private) static int |
CONSTANT_METHOD_HANDLE_TAG
The tag value of CONSTANT_MethodHandle_info JVMS structures.
|
(package private) static int |
CONSTANT_METHOD_TYPE_TAG
The tag value of CONSTANT_MethodType_info JVMS structures.
|
(package private) static int |
CONSTANT_METHODREF_TAG
The tag value of CONSTANT_Methodref_info JVMS structures.
|
(package private) static int |
CONSTANT_MODULE_TAG
The tag value of CONSTANT_Module_info JVMS structures.
|
(package private) static int |
CONSTANT_NAME_AND_TYPE_TAG
The tag value of CONSTANT_NameAndType_info JVMS structures.
|
(package private) static int |
CONSTANT_PACKAGE_TAG
The tag value of CONSTANT_Package_info JVMS structures.
|
(package private) static int |
CONSTANT_STRING_TAG
The tag value of CONSTANT_String_info JVMS structures.
|
(package private) static int |
CONSTANT_UTF8_TAG
The tag value of CONSTANT_Utf8_info JVMS structures.
|
(package private) long |
data
The numeric value of this symbol.
|
(package private) int |
index
The index of this symbol in the constant pool, in the BootstrapMethods attribute, or in the
(ASM specific) type table of a class (depending on the
tag value). |
(package private) int |
info
Additional information about this symbol, generally computed lazily.
|
(package private) static int |
MERGED_TYPE_TAG
The tag value of a merged type entry in the (ASM specific) type table of a class.
|
(package private) java.lang.String |
name
The name of the class field or method corresponding to this symbol.
|
(package private) java.lang.String |
owner
The internal name of the owner class of this symbol.
|
(package private) int |
tag
A tag indicating the type of this symbol.
|
(package private) static int |
TYPE_TAG
The tag value of a normal type entry in the (ASM specific) type table of a class.
|
(package private) static int |
UNINITIALIZED_TYPE_TAG
The tag value of an
Frame.ITEM_UNINITIALIZED type entry in the type table of a class. |
(package private) java.lang.String |
value
The string value of this symbol.
|
| Constructor and Description |
|---|
Symbol(int index,
int tag,
java.lang.String owner,
java.lang.String name,
java.lang.String value,
long data)
Constructs a new Symbol.
|
| Modifier and Type | Method and Description |
|---|---|
(package private) int |
getArgumentsAndReturnSizes()
Returns the result
Type.getArgumentsAndReturnSizes() on value. |
static final int CONSTANT_CLASS_TAG
static final int CONSTANT_FIELDREF_TAG
static final int CONSTANT_METHODREF_TAG
static final int CONSTANT_INTERFACE_METHODREF_TAG
static final int CONSTANT_STRING_TAG
static final int CONSTANT_INTEGER_TAG
static final int CONSTANT_FLOAT_TAG
static final int CONSTANT_LONG_TAG
static final int CONSTANT_DOUBLE_TAG
static final int CONSTANT_NAME_AND_TYPE_TAG
static final int CONSTANT_UTF8_TAG
static final int CONSTANT_METHOD_HANDLE_TAG
static final int CONSTANT_METHOD_TYPE_TAG
static final int CONSTANT_DYNAMIC_TAG
static final int CONSTANT_INVOKE_DYNAMIC_TAG
static final int CONSTANT_MODULE_TAG
static final int CONSTANT_PACKAGE_TAG
static final int BOOTSTRAP_METHOD_TAG
static final int TYPE_TAG
static final int UNINITIALIZED_TYPE_TAG
Frame.ITEM_UNINITIALIZED type entry in the type table of a class.static final int MERGED_TYPE_TAG
final int index
tag value).final int tag
final java.lang.String owner
CONSTANT_FIELDREF_TAG, CONSTANT_METHODREF_TAG, CONSTANT_INTERFACE_METHODREF_TAG, and CONSTANT_METHOD_HANDLE_TAG symbols.final java.lang.String name
CONSTANT_FIELDREF_TAG, CONSTANT_METHODREF_TAG, CONSTANT_INTERFACE_METHODREF_TAG, CONSTANT_NAME_AND_TYPE_TAG, CONSTANT_METHOD_HANDLE_TAG, CONSTANT_DYNAMIC_TAG and CONSTANT_INVOKE_DYNAMIC_TAG symbols.final java.lang.String value
CONSTANT_FIELDREF_TAG, CONSTANT_METHODREF_TAG, CONSTANT_INTERFACE_METHODREF_TAG, CONSTANT_NAME_AND_TYPE_TAG, CONSTANT_METHOD_HANDLE_TAG, CONSTANT_METHOD_TYPE_TAG, CONSTANT_DYNAMIC_TAG and CONSTANT_INVOKE_DYNAMIC_TAG symbols,
CONSTANT_UTF8_TAG and CONSTANT_STRING_TAG
symbols,
CONSTANT_CLASS_TAG, TYPE_TAG and UNINITIALIZED_TYPE_TAG symbols,
final long data
CONSTANT_INTEGER_TAG,CONSTANT_FLOAT_TAG, CONSTANT_LONG_TAG, CONSTANT_DOUBLE_TAG,
CONSTANT_METHOD_HANDLE_TAG symbols,
CONSTANT_INVOKE_DYNAMIC_TAG symbols,
CONSTANT_DYNAMIC_TAG or BOOTSTRAP_METHOD_TAG symbols,
Frame.ITEM_UNINITIALIZED type for UNINITIALIZED_TYPE_TAG symbols,
TYPE_TAG source types for MERGED_TYPE_TAG symbols,
int info
Type.getArgumentsAndReturnSizes() of the symbol's method descriptor for CONSTANT_METHODREF_TAG, CONSTANT_INTERFACE_METHODREF_TAG and CONSTANT_INVOKE_DYNAMIC_TAG symbols,
CONSTANT_CLASS_TAG symbols,
MERGED_TYPE_TAG symbols,
Symbol(int index,
int tag,
java.lang.String owner,
java.lang.String name,
java.lang.String value,
long data)
SymbolTable class.index - the symbol index in the constant pool, in the BootstrapMethods attribute, or in
the (ASM specific) type table of a class (depending on 'tag').tag - the symbol type. Must be one of the static tag values defined in this class.owner - The internal name of the symbol's owner class. Maybe null.name - The name of the symbol's corresponding class field or method. Maybe null.value - The string value of this symbol. Maybe null.data - The numeric value of this symbol.int getArgumentsAndReturnSizes()
Type.getArgumentsAndReturnSizes() on value.Type.getArgumentsAndReturnSizes() on value (memoized in
info for efficiency). This should only be used for CONSTANT_METHODREF_TAG, CONSTANT_INTERFACE_METHODREF_TAG and CONSTANT_INVOKE_DYNAMIC_TAG symbols.