From 5029fd041ddf0e3654c7f3d5106cf8cbb90b5243 Mon Sep 17 00:00:00 2001 From: Reinier Zwitserloot Date: Mon, 23 Nov 2015 03:29:27 +0100 Subject: [Fixes #949] accessor prefixes messed up auto-singular generation. --- .../BuilderSingularWithPrefixes.java | 66 ++++++++++++++++++++++ .../after-ecj/BuilderSingularWithPrefixes.java | 51 +++++++++++++++++ .../before/BuilderSingularWithPrefixes.java | 7 +++ 3 files changed, 124 insertions(+) create mode 100644 test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java create mode 100644 test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java create mode 100644 test/transform/resource/before/BuilderSingularWithPrefixes.java (limited to 'test/transform') diff --git a/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java b/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java new file mode 100644 index 00000000..b8ffb7d3 --- /dev/null +++ b/test/transform/resource/after-delombok/BuilderSingularWithPrefixes.java @@ -0,0 +1,66 @@ +class BuilderSingularWithPrefixes { + private java.util.List _elems; + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + BuilderSingularWithPrefixes(final java.util.List elems) { + this._elems = elems; + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public static class BuilderSingularWithPrefixesBuilder { + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + private java.util.ArrayList elems; + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + BuilderSingularWithPrefixesBuilder() { + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public BuilderSingularWithPrefixesBuilder elem(final String elem) { + if (this.elems == null) this.elems = new java.util.ArrayList(); + this.elems.add(elem); + return this; + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public BuilderSingularWithPrefixesBuilder elems(final java.util.Collection elems) { + if (this.elems == null) this.elems = new java.util.ArrayList(); + this.elems.addAll(elems); + return this; + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public BuilderSingularWithPrefixesBuilder clearElems() { + if (this.elems != null) this.elems.clear(); + return this; + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public BuilderSingularWithPrefixes build() { + java.util.List elems; + switch (this.elems == null ? 0 : this.elems.size()) { + case 0: + elems = java.util.Collections.emptyList(); + break; + case 1: + elems = java.util.Collections.singletonList(this.elems.get(0)); + break; + default: + elems = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.elems)); + } + return new BuilderSingularWithPrefixes(elems); + } + @java.lang.Override + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public java.lang.String toString() { + return "BuilderSingularWithPrefixes.BuilderSingularWithPrefixesBuilder(elems=" + this.elems + ")"; + } + } + @java.lang.SuppressWarnings("all") + @javax.annotation.Generated("lombok") + public static BuilderSingularWithPrefixesBuilder builder() { + return new BuilderSingularWithPrefixesBuilder(); + } +} \ No newline at end of file diff --git a/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java b/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java new file mode 100644 index 00000000..c0e4af75 --- /dev/null +++ b/test/transform/resource/after-ecj/BuilderSingularWithPrefixes.java @@ -0,0 +1,51 @@ +import lombok.Singular; +@lombok.Builder @lombok.experimental.Accessors(prefix = "_") class BuilderSingularWithPrefixes { + public static @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") class BuilderSingularWithPrefixesBuilder { + private @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.util.ArrayList elems; + @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder() { + super(); + } + public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder elem(String elem) { + if ((this.elems == null)) + this.elems = new java.util.ArrayList(); + this.elems.add(elem); + return this; + } + public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder elems(java.util.Collection elems) { + if ((this.elems == null)) + this.elems = new java.util.ArrayList(); + this.elems.addAll(elems); + return this; + } + public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder clearElems() { + if ((this.elems != null)) + this.elems.clear(); + return this; + } + public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixes build() { + java.util.List elems; + switch (((this.elems == null) ? 0 : this.elems.size())) { + case 0 : + elems = java.util.Collections.emptyList(); + break; + case 1 : + elems = java.util.Collections.singletonList(this.elems.get(0)); + break; + default : + elems = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.elems)); + } + return new BuilderSingularWithPrefixes(elems); + } + public @java.lang.Override @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.lang.String toString() { + return (("BuilderSingularWithPrefixes.BuilderSingularWithPrefixesBuilder(elems=" + this.elems) + ")"); + } + } + private @Singular java.util.List _elems; + @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixes(final java.util.List elems) { + super(); + this._elems = elems; + } + public static @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder builder() { + return new BuilderSingularWithPrefixesBuilder(); + } +} \ No newline at end of file diff --git a/test/transform/resource/before/BuilderSingularWithPrefixes.java b/test/transform/resource/before/BuilderSingularWithPrefixes.java new file mode 100644 index 00000000..32d3e438 --- /dev/null +++ b/test/transform/resource/before/BuilderSingularWithPrefixes.java @@ -0,0 +1,7 @@ +import lombok.Singular; + +@lombok.Builder +@lombok.experimental.Accessors(prefix = "_") +class BuilderSingularWithPrefixes { + @Singular private java.util.List _elems; +} -- cgit