Class EncElementMirror
- java.lang.Object
-
- org.immutables.value.processor.encode.EncElementMirror
-
- All Implemented Interfaces:
java.lang.annotation.Annotation
public class EncElementMirror extends java.lang.Object implements Mirrors.EncElement
EncElementMirror used to parse data of AnnotationMirror for original annotationorg.immutables.encode.EncodingMetadata.Elementduring annotation processing. Interface is being described usingMirrors.EncElementannotation, which should be structurally compatible to the annotation being modelled.- See Also:
find(Iterable),from(AnnotationMirror)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classEncElementMirror.AnnotationsExtractorprivate static classEncElementMirror.CodeExtractorprivate static classEncElementMirror.DocExtractorprivate static classEncElementMirror.NameExtractorprivate static classEncElementMirror.NamingExtractorprivate static classEncElementMirror.ParamsExtractorprivate static classEncElementMirror.StdNamingExtractorprivate static classEncElementMirror.TagsExtractorprivate static classEncElementMirror.ThrownExtractorprivate static classEncElementMirror.TypeExtractorprivate static classEncElementMirror.TypeParamsExtractor
-
Field Summary
Fields Modifier and Type Field Description private javax.lang.model.element.AnnotationMirrorannotationMirrorprivate java.lang.String[]annotationsprivate java.lang.Stringcodeprivate java.lang.String[]docstatic java.lang.StringMIRROR_QUALIFIED_NAMEprivate java.lang.Stringnameprivate java.lang.Stringnamingprivate java.lang.String[]paramsstatic java.lang.StringQUALIFIED_NAMEprivate java.lang.StringstdNamingprivate java.lang.String[]tagsprivate java.lang.String[]thrownprivate java.lang.Stringtypeprivate java.lang.String[]typeParams
-
Constructor Summary
Constructors Modifier Constructor Description privateEncElementMirror(javax.lang.model.element.AnnotationMirror annotationMirror)privateEncElementMirror(javax.lang.model.element.TypeElement defaultAnnotationElement)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]annotations()java.lang.Class<? extends java.lang.annotation.Annotation>annotationType()java.lang.Stringcode()java.lang.String[]doc()booleanequals(java.lang.Object other)static com.google.common.base.Optional<EncElementMirror>find(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)Finds first annotation of this type in an iterable of annotation mirrors.static com.google.common.base.Optional<EncElementMirror>find(javax.lang.model.element.Element element)Finds first annotation of this type on the element.static com.google.common.base.Optional<EncElementMirror>from(javax.lang.model.element.AnnotationMirror mirror)Tries to convert annotation mirror to this annotation type.static EncElementMirrorfrom(javax.lang.model.element.TypeElement element)Creates mirror with default values using annotation element (i.e.static com.google.common.collect.ImmutableList<EncElementMirror>fromAll(java.lang.Iterable<? extends javax.lang.model.element.AnnotationMirror> mirrors)Converts iterable of annotation mirrors where all annotation are of this type.javax.lang.model.element.AnnotationMirrorgetAnnotationMirror()inthashCode()static booleanisPresent(javax.lang.model.element.Element annotatedElement)static java.lang.StringmirrorQualifiedName()java.lang.Stringname()java.lang.Stringnaming()java.lang.String[]params()static java.lang.StringqualifiedName()static java.lang.StringsimpleName()java.lang.StringstdNaming()java.lang.String[]tags()java.lang.String[]thrown()java.lang.StringtoString()java.lang.Stringtype()java.lang.String[]typeParams()
-
-
-
Field Detail
-
QUALIFIED_NAME
public static final java.lang.String QUALIFIED_NAME
- See Also:
- Constant Field Values
-
MIRROR_QUALIFIED_NAME
public static final java.lang.String MIRROR_QUALIFIED_NAME
- See Also:
- Constant Field Values
-
annotationMirror
private final javax.lang.model.element.AnnotationMirror annotationMirror
-
name
private final java.lang.String name
-
type
private final java.lang.String type
-
naming
private final java.lang.String naming
-
stdNaming
private final java.lang.String stdNaming
-
tags
private final java.lang.String[] tags
-
typeParams
private final java.lang.String[] typeParams
-
params
private final java.lang.String[] params
-
thrown
private final java.lang.String[] thrown
-
annotations
private final java.lang.String[] annotations
-
doc
private final java.lang.String[] doc
-
code
private final java.lang.String code
-
-
Method Detail
-
mirrorQualifiedName
public static java.lang.String mirrorQualifiedName()
-
qualifiedName
public static java.lang.String qualifiedName()
-
simpleName
public static java.lang.String simpleName()
-
isPresent
public static boolean isPresent(javax.lang.model.element.Element annotatedElement)
-
find
public static com.google.common.base.Optional<EncElementMirror> find(javax.lang.model.element.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(java.lang.Iterable<? extends javax.lang.model.element.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(java.lang.Iterable<? extends javax.lang.model.element.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(javax.lang.model.element.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(javax.lang.model.element.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 java.lang.String name()
- Returns:
- value of attribute
name
-
type
public java.lang.String type()
- Returns:
- value of attribute
type
-
naming
public java.lang.String naming()
- Returns:
- value of attribute
naming
-
stdNaming
public java.lang.String stdNaming()
- Returns:
- value of attribute
stdNaming
-
tags
public java.lang.String[] tags()
- Returns:
- value of attribute
tags
-
typeParams
public java.lang.String[] typeParams()
- Returns:
- value of attribute
typeParams
-
params
public java.lang.String[] params()
- Returns:
- value of attribute
params
-
thrown
public java.lang.String[] thrown()
- Returns:
- value of attribute
thrown
-
annotations
public java.lang.String[] annotations()
- Returns:
- value of attribute
annotations
-
doc
public java.lang.String[] doc()
- Returns:
- value of attribute
doc
-
code
public java.lang.String code()
- Returns:
- value of attribute
code
-
getAnnotationMirror
public javax.lang.model.element.AnnotationMirror getAnnotationMirror()
- Returns:
- underlying annotation mirror
-
annotationType
public java.lang.Class<? extends java.lang.annotation.Annotation> annotationType()
- Specified by:
annotationTypein interfacejava.lang.annotation.Annotation- Returns:
EncElement.class
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.lang.annotation.Annotation- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Specified by:
equalsin interfacejava.lang.annotation.Annotation- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Specified by:
toStringin interfacejava.lang.annotation.Annotation- Overrides:
toStringin classjava.lang.Object
-
-