Class RuntimeVisibleAnnotationsAttribute

  • Direct Known Subclasses:
    RuntimeInvisibleAnnotationsAttribute

    public class RuntimeVisibleAnnotationsAttribute
    extends Attribute
    The RuntimeVisibleAnnotations or RuntimeInvisibleAnnotations attribute, distinguished by a visibility flag.
    • Constructor Detail

      • RuntimeVisibleAnnotationsAttribute

        public RuntimeVisibleAnnotationsAttribute​(String name,
                                                  MemberEntry parent,
                                                  boolean visible,
                                                  int nameIndex,
                                                  int length)
        Creates the attribute shell for parsing, attached to a member.
        Parameters:
        name - the attribute name
        parent - the member the attribute belongs to
        visible - true for RuntimeVisibleAnnotations, false for RuntimeInvisibleAnnotations
        nameIndex - constant-pool index of the name Utf8
        length - the attribute length in bytes
      • RuntimeVisibleAnnotationsAttribute

        public RuntimeVisibleAnnotationsAttribute​(String name,
                                                  ClassFile parent,
                                                  boolean visible,
                                                  int nameIndex,
                                                  int length)
        Creates the attribute shell for parsing, attached to a class.
        Parameters:
        name - the attribute name
        parent - the class the attribute belongs to
        visible - true for RuntimeVisibleAnnotations, false for RuntimeInvisibleAnnotations
        nameIndex - constant-pool index of the name Utf8
        length - the attribute length in bytes
    • Method Detail

      • getAnnotations

        public List<Annotation> getAnnotations()
        Returns:
        the annotations
      • isVisible

        public boolean isVisible()
        Returns:
        whether visible
      • setAnnotations

        public void setAnnotations​(List<Annotation> annotations)
        Parameters:
        annotations - the annotation list
      • read

        public void read​(ClassFile classFile,
                         int length)
        Description copied from class: Attribute
        Reads the attribute data from the class file.
        Specified by:
        read in class Attribute
        Parameters:
        classFile - The ClassFile utility to read data.
        length - The length of the attribute.
      • updateLength

        public void updateLength()
        Description copied from class: Attribute
        Recomputes the attribute length field from the current in-memory content.
        Specified by:
        updateLength in class Attribute