Interface AutoValueExtension.Context

  • All Known Implementing Classes:
    ExtensionContext
    Enclosing class:
    AutoValueExtension

    public static interface AutoValueExtension.Context
    The context of the generation cycle.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Set<javax.lang.model.element.ExecutableElement> abstractMethods()
      Returns the complete set of abstract methods defined in or inherited by the @AutoValue class.
      javax.lang.model.element.TypeElement autoValueClass()
      Returns the annotated class that this generation cycle is based on.
      java.lang.String packageName()
      Returns the package name of the classes to be generated.
      javax.annotation.processing.ProcessingEnvironment processingEnvironment()
      Returns the processing environment of this generation cycle.
      java.util.Map<java.lang.String,​javax.lang.model.element.ExecutableElement> properties()
      Returns the ordered collection of properties to be generated by AutoValue.
    • Method Detail

      • processingEnvironment

        javax.annotation.processing.ProcessingEnvironment processingEnvironment()
        Returns the processing environment of this generation cycle. This can be used, among other things, to produce compilation warnings or errors, using ProcessingEnvironment.getMessager().
      • packageName

        java.lang.String packageName()
        Returns the package name of the classes to be generated.
      • autoValueClass

        javax.lang.model.element.TypeElement autoValueClass()
        Returns the annotated class that this generation cycle is based on.

        Given @AutoValue public class Foo {...}, this will be Foo.

      • properties

        java.util.Map<java.lang.String,​javax.lang.model.element.ExecutableElement> properties()
        Returns the ordered collection of properties to be generated by AutoValue. Each key is a property name, and the corresponding value is the getter method for that property. For example, if property bar is defined by abstract String getBar() then this map will have an entry mapping "bar" to the ExecutableElement for getBar().
      • abstractMethods

        java.util.Set<javax.lang.model.element.ExecutableElement> abstractMethods()
        Returns the complete set of abstract methods defined in or inherited by the @AutoValue class. This includes all methods that define properties (like abstract String getBar()), any abstract toBuilder() method, and any other abstract method even if it has been consumed by this or another Extension.