From 4a34ed75b49f259823739df5691f1d81f37c12ca Mon Sep 17 00:00:00 2001 From: Jan Rieke Date: Fri, 13 Dec 2019 23:32:16 +0100 Subject: avoid more name clashes for builder type param; fixes #2297 --- .../after-ecj/SuperBuilderNameClashes.java | 104 +++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 test/transform/resource/after-ecj/SuperBuilderNameClashes.java (limited to 'test/transform/resource/after-ecj/SuperBuilderNameClashes.java') diff --git a/test/transform/resource/after-ecj/SuperBuilderNameClashes.java b/test/transform/resource/after-ecj/SuperBuilderNameClashes.java new file mode 100644 index 00000000..dd238b5d --- /dev/null +++ b/test/transform/resource/after-ecj/SuperBuilderNameClashes.java @@ -0,0 +1,104 @@ +public class SuperBuilderNameClashes { + public static @lombok.experimental.SuperBuilder class GenericsClash { + public static abstract @java.lang.SuppressWarnings("all") class GenericsClashBuilder, B2 extends GenericsClashBuilder> { + public GenericsClashBuilder() { + super(); + } + protected abstract @java.lang.SuppressWarnings("all") B2 self(); + public abstract @java.lang.SuppressWarnings("all") C3 build(); + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return "SuperBuilderNameClashes.GenericsClash.GenericsClashBuilder()"; + } + } + private static final @java.lang.SuppressWarnings("all") class GenericsClashBuilderImpl extends GenericsClashBuilder, GenericsClashBuilderImpl> { + private GenericsClashBuilderImpl() { + super(); + } + protected @java.lang.Override @java.lang.SuppressWarnings("all") GenericsClashBuilderImpl self() { + return this; + } + public @java.lang.Override @java.lang.SuppressWarnings("all") GenericsClash build() { + return new GenericsClash(this); + } + } + protected @java.lang.SuppressWarnings("all") GenericsClash(final GenericsClashBuilder b) { + super(); + } + public static @java.lang.SuppressWarnings("all") GenericsClashBuilder builder() { + return new GenericsClashBuilderImpl(); + } + } + public static @lombok.experimental.SuperBuilder class B { + public static abstract @java.lang.SuppressWarnings("all") class BBuilder> { + public BBuilder() { + super(); + } + protected abstract @java.lang.SuppressWarnings("all") B2 self(); + public abstract @java.lang.SuppressWarnings("all") C build(); + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return "SuperBuilderNameClashes.B.BBuilder()"; + } + } + private static final @java.lang.SuppressWarnings("all") class BBuilderImpl extends BBuilder { + private BBuilderImpl() { + super(); + } + protected @java.lang.Override @java.lang.SuppressWarnings("all") BBuilderImpl self() { + return this; + } + public @java.lang.Override @java.lang.SuppressWarnings("all") B build() { + return new B(this); + } + } + protected @java.lang.SuppressWarnings("all") B(final BBuilder b) { + super(); + } + public static @java.lang.SuppressWarnings("all") BBuilder builder() { + return new BBuilderImpl(); + } + } + public static class C2 { + public C2() { + super(); + } + } + public static @lombok.experimental.SuperBuilder class C { + public static abstract @java.lang.SuppressWarnings("all") class CBuilder> { + private @java.lang.SuppressWarnings("all") C2 c2; + public CBuilder() { + super(); + } + protected abstract @java.lang.SuppressWarnings("all") B self(); + public abstract @java.lang.SuppressWarnings("all") C3 build(); + public @java.lang.SuppressWarnings("all") B c2(final C2 c2) { + this.c2 = c2; + return self(); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() { + return (("SuperBuilderNameClashes.C.CBuilder(c2=" + this.c2) + ")"); + } + } + private static final @java.lang.SuppressWarnings("all") class CBuilderImpl extends CBuilder { + private CBuilderImpl() { + super(); + } + protected @java.lang.Override @java.lang.SuppressWarnings("all") CBuilderImpl self() { + return this; + } + public @java.lang.Override @java.lang.SuppressWarnings("all") C build() { + return new C(this); + } + } + C2 c2; + protected @java.lang.SuppressWarnings("all") C(final CBuilder b) { + super(); + this.c2 = b.c2; + } + public static @java.lang.SuppressWarnings("all") CBuilder builder() { + return new CBuilderImpl(); + } + } + public SuperBuilderNameClashes() { + super(); + } +} \ No newline at end of file -- cgit