RuntimeVisibleAnnotationspublic class RuntimeVisibleAnnotations extends Attribute The RuntimeVisibleAnnotations attribute is a variable length attribute in the
attributes table of the ClassFile, field_info, and method_info structures. The
RuntimeVisibleAnnotations attribute records runtime-visible Java programming
language annotations on the corresponding class, method, or field. Each
ClassFile, field_info, and method_info structure may contain at most one
RuntimeVisibleAnnotations attribute, which records all the runtime-visible Java
programming language annotations on the corresponding program element. The JVM
must make these annotations available so they can be returned by the
appropriate reflective APIs.
The RuntimeVisibleAnnotations attribute has the following format:
RuntimeVisibleAnnotations_attribute {
u2 attribute_name_index;
u4 attribute_length;
u2 num_annotations;
annotation annotations[num_annotations];
}
The items of the RuntimeVisibleAnnotations 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
"RuntimeVisibleAnnotations".
- 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 dependent on the number of runtime-visible annotations represented by
the structure, and their values.
- num_annotations
- The value of the num_annotations item gives the number of runtime-visible
annotations represented by the structure. Note that a maximum of 65535
runtime-visible Java programming language annotations may be directly
attached to a program element.
- annotations
- Each value of the annotations table represents a single runtime-visible
{@link Annotation annotation} on a program element.
|
Fields Summary |
---|
public List | annotationsList of Annotation . |
Constructors Summary |
---|
public RuntimeVisibleAnnotations()
super("RuntimeVisibleAnnotations");
|
Methods Summary |
---|
protected oracle.toplink.libraries.asm.Attribute | read(oracle.toplink.libraries.asm.ClassReader cr, int off, int len, char[] buf, int codeOff, oracle.toplink.libraries.asm.Label[] labels)
RuntimeVisibleAnnotations atr = new RuntimeVisibleAnnotations();
Annotation.readAnnotations(atr.annotations, cr, off, buf);
return atr;
| public java.lang.String | toString()Returns value in the format described in JSR-175 for Java source code.
return Annotation.stringAnnotations(annotations);
| protected oracle.toplink.libraries.asm.ByteVector | write(oracle.toplink.libraries.asm.ClassWriter cw, byte[] code, int len, int maxStack, int maxLocals)
return Annotation.writeAnnotations(new ByteVector(), annotations, cw);
|
|