Provides an implementation for various optional class, field, method and bytecode attributes.
See: Description
Class Summary | |
---|---|
Annotation | Annotation data contains an annotated type and its array of the element-value pairs. |
AnnotationDefaultAttribute | The AnnotationDefault attribute is a variable length attribute in the attributes table of certain method_info structures, namely those representing elements of annotation types. |
Annotation.EnumConstValue | Container class used to store enum_const_value structure. |
Attributes | Provides static utility methods for attributes. |
EnclosingMethodAttribute | The EnclosingMethod attribute is an optional fixed-length attribute in the attributes table of the ClassFile structure. |
LocalVariableType | Container type info used by {@link LocalVariableTypeTableAttribute}. |
LocalVariableTypeTableAttribute | The LocalVariableTypeTable attribute is an optional variable-length attribute of a Code attribute. |
RuntimeInvisibleAnnotations | The RuntimeInvisibleAnnotations attribute is similar to the RuntimeVisibleAnnotations attribute, except that the annotations represented by a RuntimeInvisibleAnnotations attribute must not be made available for return by reflective APIs, unless the JVM has been instructed to retain these annotations via some implementation-specific mechanism such as a command line flag. |
RuntimeInvisibleParameterAnnotations | The RuntimeInvisibleParameterAnnotations attribute is similar to the RuntimeVisibleParameterAnnotations attribute, except that the annotations represented by a RuntimeInvisibleParameterAnnotations attribute must not be made available for return by reflective APIs, unless the JVM has specifically been instructed to retain these annotations via some implementation-specific mechanism such as a command line flag. |
RuntimeVisibleAnnotations | The RuntimeVisibleAnnotations attribute is a variable length attribute in the attributes table of the ClassFile, field_info, and method_info structures. |
RuntimeVisibleParameterAnnotations | The RuntimeVisibleParameterAnnotations attribute is a variable length attribute in the attributes table of the method_info structure. |
SignatureAttribute | The Signature Attribute introduced in JSR-14 (Adding Generics to the Java Programming Language) and also defined in the Java Virtual Machine Specification, 3rd edition draft. |
SourceDebugExtensionAttribute | The SourceDebugExtension attribute is an optional attribute defined in JSR-045 in the attributes table of the ClassFile structure. |
StackMapAttribute | StackMapAttribute is used by CDLC preverifier and also by javac compiller starting from J2SE 1.5. |
StackMapFrame | StackMapFrame is used by {@link StackMapAttribute} to hold state of the stack and local variables for a single execution branch. |
StackMapType | Verification type info used by {@link StackMapAttribute}. |
By default ASM strips optional attributes, in order to keep them in the bytecode that is being readed should pass an array of required attribute instances to {@link org.objectweb.asm.ClassReader#accept(org.objectweb.asm.ClassVisitor, org.objectweb.asm.Attribute[], boolean) ClassReader.accept()} method. In order to add custom attributes to the manually constructed bytecode concrete subclasses of the {@link org.objectweb.asm.Attribute Attribute} can be passed to the correspond visit methods of the {@link org.objectweb.asm.ClassVisitor ClassVisitor} and {@link org.objectweb.asm.CodeVisitor CodeVisitor}.
Since: ASM 1.4.1