import java.util.List; import lombok.Singular; @lombok.Builder class BuilderSingularNoAutosingularize { public static @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") class BuilderSingularNoAutosingularizeBuilder { private @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.util.ArrayList things; private @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.util.ArrayList widgets; private @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.util.ArrayList items; @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder() { super(); } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder things(String things) { if ((this.things == null)) this.things = new java.util.ArrayList(); this.things.add(things); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder things(java.util.Collection things) { if ((this.things == null)) this.things = new java.util.ArrayList(); this.things.addAll(things); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder widget(String widget) { if ((this.widgets == null)) this.widgets = new java.util.ArrayList(); this.widgets.add(widget); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder widgets(java.util.Collection widgets) { if ((this.widgets == null)) this.widgets = new java.util.ArrayList(); this.widgets.addAll(widgets); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder items(String items) { if ((this.items == null)) this.items = new java.util.ArrayList(); this.items.add(items); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder items(java.util.Collection items) { if ((this.items == null)) this.items = new java.util.ArrayList(); this.items.addAll(items); return this; } public @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularize build() { java.util.List things; switch (((this.things == null) ? 0 : this.things.size())) { case 0 : things = java.util.Collections.emptyList(); break; case 1 : things = java.util.Collections.singletonList(this.things.get(0)); break; default : things = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.things)); } java.util.List widgets; switch (((this.widgets == null) ? 0 : this.widgets.size())) { case 0 : widgets = java.util.Collections.emptyList(); break; case 1 : widgets = java.util.Collections.singletonList(this.widgets.get(0)); break; default : widgets = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.widgets)); } java.util.List items; switch (((this.items == null) ? 0 : this.items.size())) { case 0 : items = java.util.Collections.emptyList(); break; case 1 : items = java.util.Collections.singletonList(this.items.get(0)); break; default : items = java.util.Collections.unmodifiableList(new java.util.ArrayList(this.items)); } return new BuilderSingularNoAutosingularize(things, widgets, items); } public @java.lang.Override @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") java.lang.String toString() { return (((((("BuilderSingularNoAutosingularize.BuilderSingularNoAutosingularizeBuilder(things=" + this.things) + ", widgets=") + this.widgets) + ", items=") + this.items) + ")"); } } private @Singular List things; private @Singular("widget") List widgets; private @Singular List items; @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularize(final List things, final List widgets, final List items) { super(); this.things = things; this.widgets = widgets; this.items = items; } public static @java.lang.SuppressWarnings("all") @javax.annotation.Generated("lombok") BuilderSingularNoAutosingularizeBuilder builder() { return new BuilderSingularNoAutosingularizeBuilder(); } }