Class BuilderSpec.PropertyGetter

java.lang.Object
com.google.auto.value.processor.BuilderSpec.PropertyGetter
Enclosing class:
BuilderSpec

public static class BuilderSpec.PropertyGetter extends Object
Information about a builder property getter, referenced from the autovalue.vm template. A property called foo (defined by a method T foo() or T getFoo()) can have a getter method in the builder with the same name (foo() or getFoo()) and a return type of either T or Optional<T>. The Optional<T> form can be used to tell whether the property has been set. Here, Optional<T> can be either java.util.Optional or com.google.common.base.Optional. If T is int, long, or double, then instead of Optional<T> we can have OptionalInt etc. If T is a primitive type (including these ones but also the other five) then Optional<T> can be the corresponding boxed type.
  • Field Details

    • access

      private final String access
    • type

      private final String type
    • optional

      private final Optionalish optional
  • Constructor Details

    • PropertyGetter

      PropertyGetter(ExecutableElement method, String type, Optionalish optional)
      Makes a new PropertyGetter instance.
      Parameters:
      method - the source method which this getter is implementing.
      type - the type that the getter returns. This is written to take imports into account, so it might be List<String> for example. It is either identical to the type of the corresponding getter in the @AutoValue class, or it is an optional wrapper, like Optional<List<String>>.
      optional - a representation of the Optional type that the getter returns, if this is an optional getter, or null otherwise. An optional getter is one that returns Optional<T> rather than T, as explained above.
  • Method Details

    • getAccess

      public String getAccess()
    • getType

      public String getType()
    • getOptional

      public Optionalish getOptional()