public final class AnnotationMirrors
extends java.lang.Object
AnnotationMirror instances.| Modifier and Type | Field and Description |
|---|---|
private static com.google.common.base.Equivalence<javax.lang.model.element.AnnotationMirror> |
ANNOTATION_MIRROR_EQUIVALENCE |
| Modifier | Constructor and Description |
|---|---|
private |
AnnotationMirrors() |
| Modifier and Type | Method and Description |
|---|---|
static com.google.common.base.Equivalence<javax.lang.model.element.AnnotationMirror> |
equivalence()
Returns an
Equivalence for AnnotationMirror as some implementations
delegate equality tests to Object.equals(java.lang.Object) whereas the documentation explicitly
states that instance/reference equality is not the proper test. |
static com.google.common.collect.ImmutableSet<? extends javax.lang.model.element.AnnotationMirror> |
getAnnotatedAnnotations(javax.lang.model.element.Element element,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Returns all annotations that are present on the given
Element which are themselves annotated with annotationType. |
static java.util.Map.Entry<javax.lang.model.element.ExecutableElement,javax.lang.model.element.AnnotationValue> |
getAnnotationElementAndValue(javax.lang.model.element.AnnotationMirror annotationMirror,
java.lang.String elementName)
Returns a
ExecutableElement and its associated AnnotationValue if such
an element was either declared in the usage represented by the provided
AnnotationMirror, or if such an element was defined with a default. |
static javax.lang.model.element.AnnotationValue |
getAnnotationValue(javax.lang.model.element.AnnotationMirror annotationMirror,
java.lang.String elementName)
Returns an
AnnotationValue for the named element if such an element was
either declared in the usage represented by the provided AnnotationMirror, or if
such an element was defined with a default. |
static java.util.Map<javax.lang.model.element.ExecutableElement,javax.lang.model.element.AnnotationValue> |
getAnnotationValuesWithDefaults(javax.lang.model.element.AnnotationMirror annotation)
Returns the
AnnotationMirror's map of AnnotationValue indexed by
ExecutableElement, supplying default values from the annotation if the
annotation property has not been set. |
private static final com.google.common.base.Equivalence<javax.lang.model.element.AnnotationMirror> ANNOTATION_MIRROR_EQUIVALENCE
public static com.google.common.base.Equivalence<javax.lang.model.element.AnnotationMirror> equivalence()
Equivalence for AnnotationMirror as some implementations
delegate equality tests to Object.equals(java.lang.Object) whereas the documentation explicitly
states that instance/reference equality is not the proper test.public static java.util.Map<javax.lang.model.element.ExecutableElement,javax.lang.model.element.AnnotationValue> getAnnotationValuesWithDefaults(javax.lang.model.element.AnnotationMirror annotation)
AnnotationMirror's map of AnnotationValue indexed by
ExecutableElement, supplying default values from the annotation if the
annotation property has not been set. This is equivalent to
Elements.getElementValuesWithDefaults(AnnotationMirror) but can be called
statically without an Elements instance.public static javax.lang.model.element.AnnotationValue getAnnotationValue(javax.lang.model.element.AnnotationMirror annotationMirror,
java.lang.String elementName)
AnnotationValue for the named element if such an element was
either declared in the usage represented by the provided AnnotationMirror, or if
such an element was defined with a default.java.lang.IllegalArgumentException - if no element is defined with the given elementName.public static java.util.Map.Entry<javax.lang.model.element.ExecutableElement,javax.lang.model.element.AnnotationValue> getAnnotationElementAndValue(javax.lang.model.element.AnnotationMirror annotationMirror,
java.lang.String elementName)
ExecutableElement and its associated AnnotationValue if such
an element was either declared in the usage represented by the provided
AnnotationMirror, or if such an element was defined with a default.java.lang.IllegalArgumentException - if no element is defined with the given elementName.public static com.google.common.collect.ImmutableSet<? extends javax.lang.model.element.AnnotationMirror> getAnnotatedAnnotations(javax.lang.model.element.Element element,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Element which are themselves annotated with annotationType.