org.objectweb.asm.attrs

Class SourceDebugExtensionAttribute

public class SourceDebugExtensionAttribute extends Attribute

The SourceDebugExtension attribute is an optional attribute defined in JSR-045 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.

Author: Eugene Kuleshov

See Also: JSR-045: Debugging Support for Other Languages

Field Summary
StringdebugExtension
Constructor Summary
SourceDebugExtensionAttribute()
SourceDebugExtensionAttribute(String debugExtension)
Method Summary
protected Attributeread(ClassReader cr, int off, int len, char[] buf, int codeOff, Label[] labels)
StringtoString()
protected ByteVectorwrite(ClassWriter cw, byte[] code, int len, int maxStack, int maxLocals)

Field Detail

debugExtension

public String debugExtension

Constructor Detail

SourceDebugExtensionAttribute

public SourceDebugExtensionAttribute()

SourceDebugExtensionAttribute

public SourceDebugExtensionAttribute(String debugExtension)

Method Detail

read

protected Attribute read(ClassReader cr, int off, int len, char[] buf, int codeOff, Label[] labels)

toString

public String toString()

write

protected ByteVector write(ClassWriter cw, byte[] code, int len, int maxStack, int maxLocals)