| The SourceDebugExtensionattribute is an optional
attribute in theattributestable of theClassFilestructure. There can be no more than oneSourceDebugExtensionattribute in theattributestable of a givenClassFilestructure.The SourceDebugExtensionattribute has the
following format: 
The items of the
 SourceDebugExtension_attribute {
   u2 attribute_name_index;
   u4 attribute_length;
   u1 debug_extension[attribute_length];
}
 SourceDebugExtension_attributestructure are as follows:
attribute_name_indexThe value of the attribute_name_indexitem must be
a valid index into theconstant_pooltable. Theconstant_poolentry at that index must be aCONSTANT_Utf8_infostructure representing the string"SourceDebugExtension".attribute_lengthThe value of the attribute_lengthitem indicates
the length of the attribute, excluding the initial six bytes. The
value of theattribute_lengthitem is thus the number
of bytes in thedebug_extension[]item.debug_extension[]The debug_extensionarray holds a string, which
must be in UTF-8 format. There is no terminating zero byte.The string in the debug_extensionitem will be
interpreted as extended debugging information. The content of this
string has no semantic effect on the Java Virtual Machine. |