diff options
author | Reinier Zwitserloot <reinier@zwitserloot.com> | 2021-02-04 22:17:22 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-04 22:17:22 +0100 |
commit | ed4ced1a3bc694f9a9903b5a15b2641236ff2f92 (patch) | |
tree | b2fc7abd39c121c1965601ea843e849a14d81397 /test/transform/resource/after-delombok | |
parent | 0519cb23b1ab4e572d4c6e8b2d8b9c12c19af4ad (diff) | |
parent | 5ee6271902c05a3cad28b611be60bce94f6904a8 (diff) | |
download | lombok-ed4ced1a3bc694f9a9903b5a15b2641236ff2f92.tar.gz lombok-ed4ced1a3bc694f9a9903b5a15b2641236ff2f92.tar.bz2 lombok-ed4ced1a3bc694f9a9903b5a15b2641236ff2f92.zip |
Merge pull request #2719 from Rawi01/superbuilder-initializer-npe
SuperBuilder now skips initializers while gathering types
Diffstat (limited to 'test/transform/resource/after-delombok')
-rw-r--r-- | test/transform/resource/after-delombok/SuperBuilderInitializer.java | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/test/transform/resource/after-delombok/SuperBuilderInitializer.java b/test/transform/resource/after-delombok/SuperBuilderInitializer.java new file mode 100644 index 00000000..95943aa9 --- /dev/null +++ b/test/transform/resource/after-delombok/SuperBuilderInitializer.java @@ -0,0 +1,74 @@ +class SuperBuilderInitializer { + + public static class One { + private String world; + + { + world = "Hello"; + } + + private static final String world2; + + static { + world2 = "Hello"; + } + + + @java.lang.SuppressWarnings("all") + public static abstract class OneBuilder<C extends SuperBuilderInitializer.One, B extends SuperBuilderInitializer.One.OneBuilder<C, B>> { + @java.lang.SuppressWarnings("all") + private String world; + + @java.lang.SuppressWarnings("all") + protected abstract B self(); + + @java.lang.SuppressWarnings("all") + public abstract C build(); + + /** + * @return {@code this}. + */ + @java.lang.SuppressWarnings("all") + public B world(final String world) { + this.world = world; + return self(); + } + + @java.lang.Override + @java.lang.SuppressWarnings("all") + public java.lang.String toString() { + return "SuperBuilderInitializer.One.OneBuilder(world=" + this.world + ")"; + } + } + + + @java.lang.SuppressWarnings("all") + private static final class OneBuilderImpl extends SuperBuilderInitializer.One.OneBuilder<SuperBuilderInitializer.One, SuperBuilderInitializer.One.OneBuilderImpl> { + @java.lang.SuppressWarnings("all") + private OneBuilderImpl() { + } + + @java.lang.Override + @java.lang.SuppressWarnings("all") + protected SuperBuilderInitializer.One.OneBuilderImpl self() { + return this; + } + + @java.lang.Override + @java.lang.SuppressWarnings("all") + public SuperBuilderInitializer.One build() { + return new SuperBuilderInitializer.One(this); + } + } + + @java.lang.SuppressWarnings("all") + protected One(final SuperBuilderInitializer.One.OneBuilder<?, ?> b) { + this.world = b.world; + } + + @java.lang.SuppressWarnings("all") + public static SuperBuilderInitializer.One.OneBuilder<?, ?> builder() { + return new SuperBuilderInitializer.One.OneBuilderImpl(); + } + } +} |