Package com.google.auto.common
Class BasicAnnotationProcessor.ElementName
- java.lang.Object
-
- com.google.auto.common.BasicAnnotationProcessor.ElementName
-
- Enclosing class:
- BasicAnnotationProcessor
private static final class BasicAnnotationProcessor.ElementName extends java.lang.ObjectA package or type name.It's unfortunate that we have to track types and packages separately, but since there are two different methods to look them up in
Elements, we end up with a lot of parallel logic. :(Packages declared (and annotated) in
package-info.javaare tracked as deferred packages, type elements are tracked directly, and all other elements are tracked via their nearest enclosing type.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classBasicAnnotationProcessor.ElementName.Kind
-
Field Summary
Fields Modifier and Type Field Description private BasicAnnotationProcessor.ElementName.Kindkindprivate java.lang.Stringname
-
Constructor Summary
Constructors Modifier Constructor Description privateElementName(BasicAnnotationProcessor.ElementName.Kind kind, javax.lang.model.element.Name name)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object object)(package private) static BasicAnnotationProcessor.ElementNameforAnnotatedElement(javax.lang.model.element.Element element)AnBasicAnnotationProcessor.ElementNamefor an annotated element.(package private) com.google.common.base.Optional<? extends javax.lang.model.element.Element>getElement(javax.lang.model.util.Elements elements)TheElementwhose fully-qualified name isname().inthashCode()(package private) java.lang.Stringname()The fully-qualified name of the element.
-
-
-
Field Detail
-
kind
private final BasicAnnotationProcessor.ElementName.Kind kind
-
name
private final java.lang.String name
-
-
Constructor Detail
-
ElementName
private ElementName(BasicAnnotationProcessor.ElementName.Kind kind, javax.lang.model.element.Name name)
-
-
Method Detail
-
forAnnotatedElement
static BasicAnnotationProcessor.ElementName forAnnotatedElement(javax.lang.model.element.Element element)
AnBasicAnnotationProcessor.ElementNamefor an annotated element. Ifelementis a package, uses the fully qualified name of the package. If it's a type, uses its fully qualified name. Otherwise, uses the fully-qualified name of the nearest enclosing type.
-
name
java.lang.String name()
The fully-qualified name of the element.
-
getElement
com.google.common.base.Optional<? extends javax.lang.model.element.Element> getElement(javax.lang.model.util.Elements elements)
TheElementwhose fully-qualified name isname(). Absent if the relevant method onElementsreturnsnull.
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-