Package serp.bytecode

Class Annotated

All Implemented Interfaces:
BCEntity
Direct Known Subclasses:
BCClass, BCMember

public abstract class Annotated extends Attributes
An annotated entity.
  • Constructor Details

    • Annotated

      public Annotated()
  • Method Details

    • getDeclaredAnnotations

      public Annotations getDeclaredAnnotations(boolean add)
      Return runtime invisible annotation information for the entity. Acts internally through the Attributes interface.
      Parameters:
      add - if true, a new annotations attribute will be added if not already present
      Returns:
      the annotation information, or null if none and the add param is set to false
    • removeDeclaredAnnotations

      public boolean removeDeclaredAnnotations()
      Remove the runtime invisible annotations attribute for the entity. Acts internally through the Attributes interface.
      Returns:
      true if there was an attribute to remove
    • getDeclaredRuntimeAnnotations

      public Annotations getDeclaredRuntimeAnnotations(boolean add)
      Return runtime visible annotation information for the entity. Acts internally through the Attributes interface.
      Parameters:
      add - if true, a new runtime annotations attribute will be added if not already present
      Returns:
      the annotation information, or null if none and the add param is set to false
    • removeDeclaredRuntimeAnnotations

      public boolean removeDeclaredRuntimeAnnotations()
      Remove the runtime visible annotations attribute for the entity. Acts internally through the Attributes interface.
      Returns:
      true if there was an attribute to remove
    • ensureBytecodeVersion

      private void ensureBytecodeVersion()
      When adding annotations, make sure the bytecode spec supports them.
    • getBCClass

      abstract BCClass getBCClass()
      Internal access to the owning class.