Interface JAnnotatable

All Known Implementing Classes:
JAnnotationArrayMember, JDefinedClass, JEnumConstant, JFieldVar, JMethod, JPackage, JVar

public interface JAnnotatable
Annotatable program elements.
Author:
Kohsuke Kawaguchi
  • Method Details

    • annotate

      JAnnotationUse annotate(JClass clazz)
      Adds an annotation to this program element.
      Parameters:
      clazz - The annotation class to annotate the program element with
    • annotate

      JAnnotationUse annotate(Class<? extends Annotation> clazz)
      Adds an annotation to this program element.
      Parameters:
      clazz - The annotation class to annotate the program element with
    • removeAnnotation

      boolean removeAnnotation(JAnnotationUse annotation)
      Removes annotation from this program element.
      Parameters:
      annotation - The annotation to be removed from the program element
    • annotate2

      <W extends JAnnotationWriter<? extends Annotation>> W annotate2(Class<W> clazz)
      Adds an annotation to this program element and returns a type-safe writer to fill in the values of such annotations.
    • annotations

      Collection<JAnnotationUse> annotations()
      Read-only live view of all annotations on this
      Returns:
      Can be empty but never null.