import java.util.List; import lombok.Builder; class BuilderWithToBuilderWithSetterPrefix { private String mOne; private String mTwo; private T foo; private List bars; public static K rrr(BuilderWithToBuilderWithSetterPrefix x) { return x.foo; } @java.lang.SuppressWarnings("all") BuilderWithToBuilderWithSetterPrefix(final String one, final String two, final T foo, final List bars) { this.mOne = one; this.mTwo = two; this.foo = foo; this.bars = bars; } @java.lang.SuppressWarnings("all") public static class BuilderWithToBuilderWithSetterPrefixBuilder { @java.lang.SuppressWarnings("all") private String one; @java.lang.SuppressWarnings("all") private String two; @java.lang.SuppressWarnings("all") private T foo; @java.lang.SuppressWarnings("all") private java.util.ArrayList bars; @java.lang.SuppressWarnings("all") BuilderWithToBuilderWithSetterPrefixBuilder() { } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder withOne(final String one) { this.one = one; return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder withTwo(final String two) { this.two = two; return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder withFoo(final T foo) { this.foo = foo; return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder withBar(final T bar) { if (this.bars == null) this.bars = new java.util.ArrayList(); this.bars.add(bar); return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder withBars(final java.util.Collection bars) { if (this.bars == null) this.bars = new java.util.ArrayList(); this.bars.addAll(bars); return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder clearBars() { if (this.bars != null) this.bars.clear(); return this; } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefix build() { java.util.List bars; switch (this.bars == null ? 0 : this.bars.size()) { case 0: bars = java.util.Collections.emptyList(); break; case 1: bars = java.util.Collections.singletonList(this.bars.get(0)); break; default: bars = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.bars)); } return new BuilderWithToBuilderWithSetterPrefix(one, two, foo, bars); } @java.lang.Override @java.lang.SuppressWarnings("all") public java.lang.String toString() { return "BuilderWithToBuilderWithSetterPrefix.BuilderWithToBuilderWithSetterPrefixBuilder(one=" + this.one + ", two=" + this.two + ", foo=" + this.foo + ", bars=" + this.bars + ")"; } } @java.lang.SuppressWarnings("all") public static BuilderWithToBuilderWithSetterPrefixBuilder builder() { return new BuilderWithToBuilderWithSetterPrefixBuilder(); } @java.lang.SuppressWarnings("all") public BuilderWithToBuilderWithSetterPrefixBuilder toBuilder() { final BuilderWithToBuilderWithSetterPrefixBuilder builder = new BuilderWithToBuilderWithSetterPrefixBuilder().withOne(this.mOne).withTwo(this.mTwo).withFoo(BuilderWithToBuilderWithSetterPrefix.rrr(this)); if (this.bars != null) builder.withBars(this.bars); return builder; } } class ConstructorWithToBuilderWithSetterPrefix { private String mOne; private String mTwo; private T foo; @lombok.Singular private com.google.common.collect.ImmutableList bars; public ConstructorWithToBuilderWithSetterPrefix(String mOne, T baz, com.google.common.collect.ImmutableList bars) { } @java.lang.SuppressWarnings("all") public static class ConstructorWithToBuilderWithSetterPrefixBuilder { @java.lang.SuppressWarnings("all") private String mOne; @java.lang.SuppressWarnings("all") private T baz; @java.lang.SuppressWarnings("all") private com.google.common.collect.ImmutableList bars; @java.lang.SuppressWarnings("all") ConstructorWithToBuilderWithSetterPrefixBuilder() { } @java.lang.SuppressWarnings("all") public ConstructorWithToBuilderWithSetterPrefixBuilder withMOne(final String mOne) { this.mOne = mOne; return this; } @java.lang.SuppressWarnings("all") public ConstructorWithToBuilderWithSetterPrefixBuilder withBaz(final T baz) { this.baz = baz; return this; } @java.lang.SuppressWarnings("all") public ConstructorWithToBuilderWithSetterPrefixBuilder withBars(final com.google.common.collect.ImmutableList bars) { this.bars = bars; return this; } @java.lang.SuppressWarnings("all") public ConstructorWithToBuilderWithSetterPrefix build() { return new ConstructorWithToBuilderWithSetterPrefix(mOne, baz, bars); } @java.lang.Override @java.lang.SuppressWarnings("all") public java.lang.String toString() { return "ConstructorWithToBuilderWithSetterPrefix.ConstructorWithToBuilderWithSetterPrefixBuilder(mOne=" + this.mOne + ", baz=" + this.baz + ", bars=" + this.bars + ")"; } } @java.lang.SuppressWarnings("all") public static ConstructorWithToBuilderWithSetterPrefixBuilder builder() { return new ConstructorWithToBuilderWithSetterPrefixBuilder(); } @java.lang.SuppressWarnings("all") public ConstructorWithToBuilderWithSetterPrefixBuilder toBuilder() { return new ConstructorWithToBuilderWithSetterPrefixBuilder().withMOne(this.mOne).withBaz(this.foo).withBars(this.bars); } }