aboutsummaryrefslogtreecommitdiff
path: root/test/transform/resource
diff options
context:
space:
mode:
authorReinier Zwitserloot <reinier@zwitserloot.com>2021-03-21 05:09:13 +0100
committerGitHub <noreply@github.com>2021-03-21 05:09:13 +0100
commit38faf6d350d0e4749039538bdc201624cd2f1ecb (patch)
tree2f7eec57dc70ccd30ad90afdabc2498e97aeee1f /test/transform/resource
parent5ef5c77198acd9fc8d265f0e2fa0b0c199330868 (diff)
parent26cc8af4d8b0bc7944b5a7137e9e1c77f2f3cf43 (diff)
downloadlombok-38faf6d350d0e4749039538bdc201624cd2f1ecb.tar.gz
lombok-38faf6d350d0e4749039538bdc201624cd2f1ecb.tar.bz2
lombok-38faf6d350d0e4749039538bdc201624cd2f1ecb.zip
Merge pull request #2770 from janrieke/superBuilderNPEinConstructorExists
[fixes #2704] SuperBuilder: avoid NPE on existing constructors
Diffstat (limited to 'test/transform/resource')
-rw-r--r--test/transform/resource/after-delombok/SuperBuilderWithExistingConstuctor.java39
-rw-r--r--test/transform/resource/after-ecj/SuperBuilderWithExistingConstuctor.java32
-rw-r--r--test/transform/resource/before/SuperBuilderWithExistingConstuctor.java5
3 files changed, 76 insertions, 0 deletions
diff --git a/test/transform/resource/after-delombok/SuperBuilderWithExistingConstuctor.java b/test/transform/resource/after-delombok/SuperBuilderWithExistingConstuctor.java
new file mode 100644
index 00000000..c23c24db
--- /dev/null
+++ b/test/transform/resource/after-delombok/SuperBuilderWithExistingConstuctor.java
@@ -0,0 +1,39 @@
+public class SuperBuilderWithExistingConstuctor {
+ public SuperBuilderWithExistingConstuctor() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static abstract class SuperBuilderWithExistingConstuctorBuilder<C extends SuperBuilderWithExistingConstuctor, B extends SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<C, B>> {
+ @java.lang.SuppressWarnings("all")
+ protected abstract B self();
+ @java.lang.SuppressWarnings("all")
+ public abstract C build();
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder()";
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ private static final class SuperBuilderWithExistingConstuctorBuilderImpl extends SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<SuperBuilderWithExistingConstuctor, SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl> {
+ @java.lang.SuppressWarnings("all")
+ private SuperBuilderWithExistingConstuctorBuilderImpl() {
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ protected SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl self() {
+ return this;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public SuperBuilderWithExistingConstuctor build() {
+ return new SuperBuilderWithExistingConstuctor(this);
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ protected SuperBuilderWithExistingConstuctor(final SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<?, ?> b) {
+ }
+ @java.lang.SuppressWarnings("all")
+ public static SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<?, ?> builder() {
+ return new SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/SuperBuilderWithExistingConstuctor.java b/test/transform/resource/after-ecj/SuperBuilderWithExistingConstuctor.java
new file mode 100644
index 00000000..676e184b
--- /dev/null
+++ b/test/transform/resource/after-ecj/SuperBuilderWithExistingConstuctor.java
@@ -0,0 +1,32 @@
+public @lombok.experimental.SuperBuilder class SuperBuilderWithExistingConstuctor {
+ public static abstract @java.lang.SuppressWarnings("all") class SuperBuilderWithExistingConstuctorBuilder<C extends SuperBuilderWithExistingConstuctor, B extends SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<C, B>> {
+ public SuperBuilderWithExistingConstuctorBuilder() {
+ super();
+ }
+ protected abstract @java.lang.SuppressWarnings("all") B self();
+ public abstract @java.lang.SuppressWarnings("all") C build();
+ public @java.lang.Override @java.lang.SuppressWarnings("all") java.lang.String toString() {
+ return "SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder()";
+ }
+ }
+ private static final @java.lang.SuppressWarnings("all") class SuperBuilderWithExistingConstuctorBuilderImpl extends SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<SuperBuilderWithExistingConstuctor, SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl> {
+ private SuperBuilderWithExistingConstuctorBuilderImpl() {
+ super();
+ }
+ protected @java.lang.Override @java.lang.SuppressWarnings("all") SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl self() {
+ return this;
+ }
+ public @java.lang.Override @java.lang.SuppressWarnings("all") SuperBuilderWithExistingConstuctor build() {
+ return new SuperBuilderWithExistingConstuctor(this);
+ }
+ }
+ public SuperBuilderWithExistingConstuctor() {
+ super();
+ }
+ protected @java.lang.SuppressWarnings("all") SuperBuilderWithExistingConstuctor(final SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<?, ?> b) {
+ super();
+ }
+ public static @java.lang.SuppressWarnings("all") SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilder<?, ?> builder() {
+ return new SuperBuilderWithExistingConstuctor.SuperBuilderWithExistingConstuctorBuilderImpl();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SuperBuilderWithExistingConstuctor.java b/test/transform/resource/before/SuperBuilderWithExistingConstuctor.java
new file mode 100644
index 00000000..13f97632
--- /dev/null
+++ b/test/transform/resource/before/SuperBuilderWithExistingConstuctor.java
@@ -0,0 +1,5 @@
+@lombok.experimental.SuperBuilder
+public class SuperBuilderWithExistingConstuctor {
+ public SuperBuilderWithExistingConstuctor() {
+ }
+}