Class EncElementMirror

java.lang.Object
org.immutables.value.processor.encode.EncElementMirror
All Implemented Interfaces:
Annotation

public class EncElementMirror extends Object implements Mirrors.EncElement
EncElementMirror used to parse data of AnnotationMirror for original annotation org.immutables.encode.EncodingMetadata.Element during annotation processing. Interface is being described using Mirrors.EncElement annotation, which should be structurally compatible to the annotation being modelled.
See Also:
  • Field Details

    • QUALIFIED_NAME

      public static final String QUALIFIED_NAME
      See Also:
    • MIRROR_QUALIFIED_NAME

      public static final String MIRROR_QUALIFIED_NAME
      See Also:
    • annotationMirror

      private final AnnotationMirror annotationMirror
    • name

      private final String name
    • type

      private final String type
    • naming

      private final String naming
    • stdNaming

      private final String stdNaming
    • tags

      private final String[] tags
    • typeParams

      private final String[] typeParams
    • params

      private final String[] params
    • thrown

      private final String[] thrown
    • annotations

      private final String[] annotations
    • doc

      private final String[] doc
    • code

      private final String code
  • Constructor Details

    • EncElementMirror

      private EncElementMirror(TypeElement defaultAnnotationElement)
    • EncElementMirror

      private EncElementMirror(AnnotationMirror annotationMirror)
  • Method Details

    • mirrorQualifiedName

      public static String mirrorQualifiedName()
    • qualifiedName

      public static String qualifiedName()
    • simpleName

      public static String simpleName()
    • isPresent

      public static boolean isPresent(Element annotatedElement)
    • find

      public static com.google.common.base.Optional<EncElementMirror> find(Element element)
      Finds first annotation of this type on the element.
      Parameters:
      element - annotated element
      Returns:
      optional EncElementMirror, present if this annotation found
    • find

      public static com.google.common.base.Optional<EncElementMirror> find(Iterable<? extends AnnotationMirror> mirrors)
      Finds first annotation of this type in an iterable of annotation mirrors.
      Parameters:
      mirrors - annotation mirrors
      Returns:
      optional EncElementMirror, present if this annotation found
    • fromAll

      public static com.google.common.collect.ImmutableList<EncElementMirror> fromAll(Iterable<? extends AnnotationMirror> mirrors)
      Converts iterable of annotation mirrors where all annotation are of this type. Otherwise it fails
      Parameters:
      mirrors - of this annotation type.
      Returns:
      list of converted EncElementMirrors
    • from

      public static EncElementMirror from(TypeElement element)
      Creates mirror with default values using annotation element (i.e. declaration, not usage).
      Parameters:
      element - annotation type element
      Returns:
      EncElementMirror
    • from

      public static com.google.common.base.Optional<EncElementMirror> from(AnnotationMirror mirror)
      Tries to convert annotation mirror to this annotation type.
      Parameters:
      mirror - annotation mirror
      Returns:
      optional EncElementMirror, present if mirror matched this annotation type
    • name

      public String name()
      Returns:
      value of attribute name
    • type

      public String type()
      Returns:
      value of attribute type
    • naming

      public String naming()
      Returns:
      value of attribute naming
    • stdNaming

      public String stdNaming()
      Returns:
      value of attribute stdNaming
    • tags

      public String[] tags()
      Returns:
      value of attribute tags
    • typeParams

      public String[] typeParams()
      Returns:
      value of attribute typeParams
    • params

      public String[] params()
      Returns:
      value of attribute params
    • thrown

      public String[] thrown()
      Returns:
      value of attribute thrown
    • annotations

      public String[] annotations()
      Returns:
      value of attribute annotations
    • doc

      public String[] doc()
      Returns:
      value of attribute doc
    • code

      public String code()
      Returns:
      value of attribute code
    • getAnnotationMirror

      public AnnotationMirror getAnnotationMirror()
      Returns:
      underlying annotation mirror
    • annotationType

      public Class<? extends Annotation> annotationType()
      Specified by:
      annotationType in interface Annotation
      Returns:
      EncElement.class
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface Annotation
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object other)
      Specified by:
      equals in interface Annotation
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Specified by:
      toString in interface Annotation
      Overrides:
      toString in class Object