The SourceDebugExtension attribute is an optional
attribute in the attributes table of the
ClassFile structure. There can be no more than one
SourceDebugExtension attribute in the
attributes table of a given ClassFile
structure.
The SourceDebugExtension attribute has the
following format:
SourceDebugExtension_attribute {
u2 attribute_name_index;
u4 attribute_length;
u1 debug_extension[attribute_length];
}
The items of the SourceDebugExtension_attribute
structure are as follows:
attribute_name_index
- The value of the
attribute_name_index item must be
a valid index into the constant_pool table. The
constant_pool entry at that index must be a
CONSTANT_Utf8_info structure representing the string
"SourceDebugExtension" .
attribute_length
- The value of the
attribute_length item indicates
the length of the attribute, excluding the initial six bytes. The
value of the attribute_length item is thus the number
of bytes in the debug_extension[] item.
debug_extension[]
- The
debug_extension array holds a string, which
must be in UTF-8 format. There is no terminating zero byte.
The string in the debug_extension item will be
interpreted as extended debugging information. The content of this
string has no semantic effect on the Java Virtual Machine.
|