1+ // version 21:
2+ import java .util .SequencedCollection ;
3+ import java .util .SequencedMap ;
4+ import java .util .SequencedSet ;
5+ import lombok .Builder ;
6+ import lombok .Singular ;
7+ @ Builder class BuilderSingularSequencedCollections <T , K , V > {
8+ public static @ java .lang .SuppressWarnings ("all" ) class BuilderSingularSequencedCollectionsBuilder <T , K , V > {
9+ private @ java .lang .SuppressWarnings ("all" ) java .util .ArrayList <T > sequencedCollection ;
10+ private @ java .lang .SuppressWarnings ("all" ) java .util .ArrayList <K > sequencedMap$key ;
11+ private @ java .lang .SuppressWarnings ("all" ) java .util .ArrayList <V > sequencedMap$value ;
12+ private @ java .lang .SuppressWarnings ("all" ) java .util .ArrayList <T > sequencedSet ;
13+ @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollectionsBuilder () {
14+ super ();
15+ }
16+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > col (final T col ) {
17+ if ((this .sequencedCollection == null ))
18+ this .sequencedCollection = new java .util .ArrayList <T >();
19+ this .sequencedCollection .add (col );
20+ return this ;
21+ }
22+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > sequencedCollection (final java .util .Collection <? extends T > sequencedCollection ) {
23+ if ((sequencedCollection == null ))
24+ {
25+ throw new java .lang .NullPointerException ("sequencedCollection cannot be null" );
26+ }
27+ if ((this .sequencedCollection == null ))
28+ this .sequencedCollection = new java .util .ArrayList <T >();
29+ this .sequencedCollection .addAll (sequencedCollection );
30+ return this ;
31+ }
32+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > clearSequencedCollection () {
33+ if ((this .sequencedCollection != null ))
34+ this .sequencedCollection .clear ();
35+ return this ;
36+ }
37+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > map (final K mapKey , final V mapValue ) {
38+ if ((this .sequencedMap$key == null ))
39+ {
40+ this .sequencedMap$key = new java .util .ArrayList <K >();
41+ this .sequencedMap$value = new java .util .ArrayList <V >();
42+ }
43+ this .sequencedMap$key .add (mapKey );
44+ this .sequencedMap$value .add (mapValue );
45+ return this ;
46+ }
47+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > sequencedMap (final java .util .Map <? extends K , ? extends V > sequencedMap ) {
48+ if ((sequencedMap == null ))
49+ {
50+ throw new java .lang .NullPointerException ("sequencedMap cannot be null" );
51+ }
52+ if ((this .sequencedMap$key == null ))
53+ {
54+ this .sequencedMap$key = new java .util .ArrayList <K >();
55+ this .sequencedMap$value = new java .util .ArrayList <V >();
56+ }
57+ for (java .util .Map .Entry <? extends K , ? extends V > $lombokEntry : sequencedMap .entrySet ())
58+ {
59+ this .sequencedMap$key .add ($lombokEntry .getKey ());
60+ this .sequencedMap$value .add ($lombokEntry .getValue ());
61+ }
62+ return this ;
63+ }
64+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > clearSequencedMap () {
65+ if ((this .sequencedMap$key != null ))
66+ {
67+ this .sequencedMap$key .clear ();
68+ this .sequencedMap$value .clear ();
69+ }
70+ return this ;
71+ }
72+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > set (final T set ) {
73+ if ((this .sequencedSet == null ))
74+ this .sequencedSet = new java .util .ArrayList <T >();
75+ this .sequencedSet .add (set );
76+ return this ;
77+ }
78+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > sequencedSet (final java .util .Collection <? extends T > sequencedSet ) {
79+ if ((sequencedSet == null ))
80+ {
81+ throw new java .lang .NullPointerException ("sequencedSet cannot be null" );
82+ }
83+ if ((this .sequencedSet == null ))
84+ this .sequencedSet = new java .util .ArrayList <T >();
85+ this .sequencedSet .addAll (sequencedSet );
86+ return this ;
87+ }
88+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > clearSequencedSet () {
89+ if ((this .sequencedSet != null ))
90+ this .sequencedSet .clear ();
91+ return this ;
92+ }
93+ public @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections <T , K , V > build () {
94+ java .util .SequencedCollection <T > sequencedCollection ;
95+ switch (((this .sequencedCollection == null ) ? 0 : this .sequencedCollection .size ())) {
96+ case 0 :
97+ sequencedCollection = java .util .Collections .emptyList ();
98+ break ;
99+ case 1 :
100+ sequencedCollection = java .util .Collections .singletonList (this .sequencedCollection .get (0 ));
101+ break ;
102+ default :
103+ sequencedCollection = java .util .Collections .unmodifiableList (new java .util .ArrayList <T >(this .sequencedCollection ));
104+ }
105+ java .util .SequencedMap <K , V > sequencedMap = new java .util .LinkedHashMap <K , V >();
106+ if ((this .sequencedMap$key != null ))
107+ for (int $i = 0 ;; ($i < ((this .sequencedMap$key == null ) ? 0 : this .sequencedMap$key .size ())); $i ++)
108+ sequencedMap .put (this .sequencedMap$key .get ($i ), this .sequencedMap$value .get ($i ));
109+ sequencedMap = java .util .Collections .unmodifiableSequencedMap (sequencedMap );
110+ java .util .SequencedSet <T > sequencedSet = new java .util .LinkedHashSet <T >();
111+ if ((this .sequencedSet != null ))
112+ sequencedSet .addAll (this .sequencedSet );
113+ sequencedSet = java .util .Collections .unmodifiableSequencedSet (sequencedSet );
114+ return new BuilderSingularSequencedCollections <T , K , V >(sequencedCollection , sequencedMap , sequencedSet );
115+ }
116+ public @ java .lang .Override @ java .lang .SuppressWarnings ("all" ) java .lang .String toString () {
117+ return (((((((("BuilderSingularSequencedCollections.BuilderSingularSequencedCollectionsBuilder(sequencedCollection=" + this .sequencedCollection ) + ", sequencedMap$key=" ) + this .sequencedMap$key ) + ", sequencedMap$value=" ) + this .sequencedMap$value ) + ", sequencedSet=" ) + this .sequencedSet ) + ")" );
118+ }
119+ }
120+ private @ Singular ("col" ) SequencedCollection <T > sequencedCollection ;
121+ private @ Singular ("map" ) SequencedMap <K , V > sequencedMap ;
122+ private @ Singular ("set" ) SequencedSet <T > sequencedSet ;
123+ @ java .lang .SuppressWarnings ("all" ) BuilderSingularSequencedCollections (final SequencedCollection <T > sequencedCollection , final SequencedMap <K , V > sequencedMap , final SequencedSet <T > sequencedSet ) {
124+ super ();
125+ this .sequencedCollection = sequencedCollection ;
126+ this .sequencedMap = sequencedMap ;
127+ this .sequencedSet = sequencedSet ;
128+ }
129+ public static @ java .lang .SuppressWarnings ("all" ) <T , K , V >BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V > builder () {
130+ return new BuilderSingularSequencedCollections .BuilderSingularSequencedCollectionsBuilder <T , K , V >();
131+ }
132+ }
0 commit comments