@AutoValue
abstract class Person {
abstract String getName();
abstract int getAge();
static Builder builder() {
return new AutoValue_Person.Builder();
}
@AutoValue.Builder
abstract static class Builder {
abstract Builder setName(String name);
abstract Builder setAge(int age);
abstract Person build();
}
}
@AutoValue
abstract class Person {
abstract String getName();
abstract int getAge();
static Builder builder(String name) {
return new AutoValue_Person.Builder().setName(name);
}
@AutoValue.Builder
abstract static class Builder {
abstract Builder setName(String name);
abstract Builder setAge(int age);
abstract Person build();
}
}
@AutoValueWithPresence
public @interface AutoValueWithPresence {
}
@SupportedAnnotationTypes("com.example.AutoValueWithPresence")
@SupportedSourceVersion(SourceVersion.RELEASE_8)
public class AutoValueWithPresenceProcessor extends AbstractProcessor {
}