[Fixes #949] accessor prefixes messed up auto-singular generation.

This commit is contained in:
Reinier Zwitserloot committed 2015-11-23 03:29:27 +01:00
1 parent 728ae6421d
commit 5029fd041d
5 files changed
+126 -2

No files matched your search

@@ -711,7 +711,7 @@ public class HandleBuilder extends EclipseAnnotationHandler<Builder> {
node.addError("The singular must be specified explicitly (e.g. @Singular(\"task\")) because auto singularization is disabled.");
explicitSingular = new String(pluralName);
} else {
explicitSingular = autoSingularize(node.getName());
explicitSingular = autoSingularize(new String(pluralName));
if (explicitSingular == null) {
node.addError("Can't singularize this name; please specify the singular explicitly (i.e. @Singular(\"sheep\"))");
explicitSingular = new String(pluralName);
@@ -666,7 +666,7 @@ public class HandleBuilder extends JavacAnnotationHandler<Builder> {
node.addError("The singular must be specified explicitly (e.g. @Singular(\"task\")) because auto singularization is disabled.");
explicitSingular = pluralName.toString();
} else {
explicitSingular = autoSingularize(node.getName());
explicitSingular = autoSingularize(pluralName.toString());
if (explicitSingular == null) {
node.addError("Can't singularize this name; please specify the singular explicitly (i.e. @Singular(\"sheep\"))");
explicitSingular = pluralName.toString();
@@ -0,0 +1,66 @@
class BuilderSingularWithPrefixes {
private java.util.List<String> _elems;
@java.lang.SuppressWarnings("all")
@javax.annotation.Generated("lombok")
BuilderSingularWithPrefixes(final java.util.List<String> 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<String> 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<String>();
this.elems.add(elem);
return this;
}
@java.lang.SuppressWarnings("all")
@javax.annotation.Generated("lombok")
public BuilderSingularWithPrefixesBuilder elems(final java.util.Collection<? extends String> elems) {
if (this.elems == null) this.elems = new java.util.ArrayList<String>();
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<String> 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<String>(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();
}
}
@@ -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<String> 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<String>();
this.elems.add(elem);
return this;
}
public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder elems(java.util.Collection<? extends String> elems) {
if ((this.elems == null))
this.elems = new java.util.ArrayList<String>();
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<String> 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<String>(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<String> _elems;
@java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixes(final java.util.List<String> elems) {
super();
this._elems = elems;
}
public static @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularWithPrefixesBuilder builder() {
return new BuilderSingularWithPrefixesBuilder();
}
}
@@ -0,0 +1,7 @@
import lombok.Singular;
@lombok.Builder
@lombok.experimental.Accessors(prefix = "_")
class BuilderSingularWithPrefixes {
@Singular private java.util.List<String> _elems;
}