1
2
3
4 package de.powerstat.validation.containers;
5
6
7 import java.util.Objects;
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 @SuppressWarnings({"checkstyle:ClassTypeParameterName", "checkstyle:MethodTypeParameterName", "checkstyle:NoWhitespaceBefore", "checkstyle:SeparatorWrap", "PMD.GenericsNaming", "PMD.CommentSize", "PMD.TooManyFields", "java:S3776", "java:S1541"})
32 public final class NTuple16<T1 extends Comparable<T1>, T2 extends Comparable<T2>, T3 extends Comparable<T3>, T4 extends Comparable<T4>, T5 extends Comparable<T5>, T6 extends Comparable<T6>, T7 extends Comparable<T7>, T8 extends Comparable<T8>, T9 extends Comparable<T9>, T10 extends Comparable<T10>, T11 extends Comparable<T11>, T12 extends Comparable<T12>, T13 extends Comparable<T13>, T14 extends Comparable<T14>, T15 extends Comparable<T15>, T16 extends Comparable<T16>> implements Comparable<NTuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>>
33 {
34
35
36
37
38
39
40
41
42 private final T1 object1;
43
44
45
46
47 private final T2 object2;
48
49
50
51
52 private final T3 object3;
53
54
55
56
57 private final T4 object4;
58
59
60
61
62 private final T5 object5;
63
64
65
66
67 private final T6 object6;
68
69
70
71
72 private final T7 object7;
73
74
75
76
77 private final T8 object8;
78
79
80
81
82 private final T9 object9;
83
84
85
86
87 private final T10 object10;
88
89
90
91
92 private final T11 object11;
93
94
95
96
97 private final T12 object12;
98
99
100
101
102 private final T13 object13;
103
104
105
106
107 private final T14 object14;
108
109
110
111
112 private final T15 object15;
113
114
115
116
117 private final T16 object16;
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140 private NTuple16(final T1 obj1, final T2 obj2, final T3 obj3, final T4 obj4, final T5 obj5, final T6 obj6, final T7 obj7, final T8 obj8, final T9 obj9, final T10 obj10, final T11 obj11, final T12 obj12, final T13 obj13, final T14 obj14, final T15 obj15, final T16 obj16)
141 {
142 super();
143 Objects.requireNonNull(obj1, "obj1 is null");
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160 Objects.requireNonNull(obj16, "obj16 is null");
161 this.object1 = obj1;
162 this.object2 = obj2;
163 this.object3 = obj3;
164 this.object4 = obj4;
165 this.object5 = obj5;
166 this.object6 = obj6;
167 this.object7 = obj7;
168 this.object8 = obj8;
169 this.object9 = obj9;
170 this.object10 = obj10;
171 this.object11 = obj11;
172 this.object12 = obj12;
173 this.object13 = obj13;
174 this.object14 = obj14;
175 this.object15 = obj15;
176 this.object16 = obj16;
177 }
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217 public static <T1 extends Comparable<T1>, T2 extends Comparable<T2>, T3 extends Comparable<T3>, T4 extends Comparable<T4>, T5 extends Comparable<T5>, T6 extends Comparable<T6>, T7 extends Comparable<T7>, T8 extends Comparable<T8>, T9 extends Comparable<T9>, T10 extends Comparable<T10>, T11 extends Comparable<T11>, T12 extends Comparable<T12>, T13 extends Comparable<T13>, T14 extends Comparable<T14>, T15 extends Comparable<T15>, T16 extends Comparable<T16>> NTuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> of(final T1 obj1, final T2 obj2, final T3 obj3, final T4 obj4, final T5 obj5, final T6 obj6, final T7 obj7, final T8 obj8, final T9 obj9, final T10 obj10, final T11 obj11, final T12 obj12, final T13 obj13, final T14 obj14, final T15 obj15, final T16 obj16)
218 {
219 return new NTuple16<>(obj1, obj2, obj3, obj4, obj5, obj6, obj7, obj8, obj9, obj10, obj11, obj12, obj13, obj14, obj15, obj16);
220 }
221
222
223
224
225
226
227
228
229 public T1 t1Value()
230 {
231 return this.object1;
232 }
233
234
235
236
237
238
239
240 public T2 t2Value()
241 {
242 return this.object2;
243 }
244
245
246
247
248
249
250
251 public T3 t3Value()
252 {
253 return this.object3;
254 }
255
256
257
258
259
260
261
262 public T4 t4Value()
263 {
264 return this.object4;
265 }
266
267
268
269
270
271
272
273 public T5 t5Value()
274 {
275 return this.object5;
276 }
277
278
279
280
281
282
283
284 public T6 t6Value()
285 {
286 return this.object6;
287 }
288
289
290
291
292
293
294
295 public T7 t7Value()
296 {
297 return this.object7;
298 }
299
300
301
302
303
304
305
306 public T8 t8Value()
307 {
308 return this.object8;
309 }
310
311
312
313
314
315
316
317 public T9 t9Value()
318 {
319 return this.object9;
320 }
321
322
323
324
325
326
327
328 public T10 t10Value()
329 {
330 return this.object10;
331 }
332
333
334
335
336
337
338
339 public T11 t11Value()
340 {
341 return this.object11;
342 }
343
344
345
346
347
348
349
350 public T12 t12Value()
351 {
352 return this.object12;
353 }
354
355
356
357
358
359
360
361 public T13 t13Value()
362 {
363 return this.object13;
364 }
365
366
367
368
369
370
371
372 public T14 t14Value()
373 {
374 return this.object14;
375 }
376
377
378
379
380
381
382
383 public T15 t15Value()
384 {
385 return this.object15;
386 }
387
388
389
390
391
392
393
394 public T16 t16Value()
395 {
396 return this.object16;
397 }
398
399
400
401
402
403
404
405
406 @Override
407 public int hashCode()
408 {
409 return Objects.hash(this.object1, this.object2, this.object3, this.object4, this.object5, this.object6, this.object7, this.object8, this.object9, this.object10, this.object11, this.object12, this.object13, this.object14, this.object15, this.object16);
410 }
411
412
413
414
415
416
417
418
419
420 @SuppressWarnings("PMD.AvoidDeeplyNestedIfStmts")
421 @Override
422 public boolean equals(final Object obj)
423 {
424 if (this == obj)
425 {
426 return true;
427 }
428 if (!(obj instanceof NTuple16))
429 {
430 return false;
431 }
432 final NTuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> other = (NTuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>)obj;
433 boolean result = this.object1.equals(other.object1);
434 if (result)
435 {
436 result = (this.object2 == null) ? (other.object2 == null) : this.object2.equals(other.object2);
437 if (result)
438 {
439 result = (this.object3 == null) ? (other.object3 == null) : this.object3.equals(other.object3);
440 if (result)
441 {
442 result = (this.object4 == null) ? (other.object4 == null) : this.object4.equals(other.object4);
443 if (result)
444 {
445 result = (this.object5 == null) ? (other.object5 == null) : this.object5.equals(other.object5);
446 if (result)
447 {
448 result = (this.object6 == null) ? (other.object6 == null) : this.object6.equals(other.object6);
449 if (result)
450 {
451 result = (this.object7 == null) ? (other.object7 == null) : this.object7.equals(other.object7);
452 if (result)
453 {
454 result = (this.object8 == null) ? (other.object8 == null) : this.object8.equals(other.object8);
455 if (result)
456 {
457 result = (this.object9 == null) ? (other.object9 == null) : this.object9.equals(other.object9);
458 if (result)
459 {
460 result = (this.object10 == null) ? (other.object10 == null) : this.object10.equals(other.object10);
461 if (result)
462 {
463 result = (this.object11 == null) ? (other.object11 == null) : this.object11.equals(other.object11);
464 if (result)
465 {
466 result = (this.object12 == null) ? (other.object12 == null) : this.object12.equals(other.object12);
467 if (result)
468 {
469 result = (this.object13 == null) ? (other.object13 == null) : this.object13.equals(other.object13);
470 if (result)
471 {
472 result = (this.object14 == null) ? (other.object14 == null) : this.object14.equals(other.object14);
473 if (result)
474 {
475 result = (this.object15 == null) ? (other.object15 == null) : this.object15.equals(other.object15);
476 if (result)
477 {
478 result = this.object16.equals(other.object16);
479 }
480 }
481 }
482 }
483 }
484 }
485 }
486 }
487 }
488 }
489 }
490 }
491 }
492 }
493 }
494 return result;
495 }
496
497
498
499
500
501
502
503
504
505
506
507
508 @Override
509 public String toString()
510 {
511 final var builder = new StringBuilder(175);
512 builder.append("NTuple16[object1=").append(this.object1)
513 .append(", object2=").append(this.object2)
514 .append(", object3=").append(this.object3)
515 .append(", object4=").append(this.object4)
516 .append(", object5=").append(this.object5)
517 .append(", object6=").append(this.object6)
518 .append(", object7=").append(this.object7)
519 .append(", object8=").append(this.object8)
520 .append(", object9=").append(this.object9)
521 .append(", object10=").append(this.object10)
522 .append(", object11=").append(this.object11)
523 .append(", object12=").append(this.object12)
524 .append(", object13=").append(this.object13)
525 .append(", object14=").append(this.object14)
526 .append(", object15=").append(this.object15)
527 .append(", object16=").append(this.object16)
528 .append(']');
529 return builder.toString();
530 }
531
532
533
534
535
536
537
538
539
540 @SuppressWarnings("PMD.AvoidDeeplyNestedIfStmts")
541 @Override
542 public int compareTo(final NTuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> obj)
543 {
544 Objects.requireNonNull(obj, "obj");
545 int result = this.object1.compareTo(obj.object1);
546 if (result == 0)
547 {
548 result = (this.object2 == null) ? ((obj.object2 == null) ? 0 : -1) : ((obj.object2 == null) ? 1 : this.object2.compareTo(obj.object2));
549 if (result == 0)
550 {
551 result = (this.object3 == null) ? ((obj.object3 == null) ? 0 : -1) : ((obj.object3 == null) ? 1 : this.object3.compareTo(obj.object3));
552 if (result == 0)
553 {
554 result = (this.object4 == null) ? ((obj.object4 == null) ? 0 : -1) : ((obj.object4 == null) ? 1 : this.object4.compareTo(obj.object4));
555 if (result == 0)
556 {
557 result = (this.object5 == null) ? ((obj.object5 == null) ? 0 : -1) : ((obj.object5 == null) ? 1 : this.object5.compareTo(obj.object5));
558 if (result == 0)
559 {
560 result = (this.object6 == null) ? ((obj.object6 == null) ? 0 : -1) : ((obj.object6 == null) ? 1 : this.object6.compareTo(obj.object6));
561 if (result == 0)
562 {
563 result = (this.object7 == null) ? ((obj.object7 == null) ? 0 : -1) : ((obj.object7 == null) ? 1 : this.object7.compareTo(obj.object7));
564 if (result == 0)
565 {
566 result = (this.object8 == null) ? ((obj.object8 == null) ? 0 : -1) : ((obj.object8 == null) ? 1 : this.object8.compareTo(obj.object8));
567 if (result == 0)
568 {
569 result = (this.object9 == null) ? ((obj.object9 == null) ? 0 : -1) : ((obj.object9 == null) ? 1 : this.object9.compareTo(obj.object9));
570 if (result == 0)
571 {
572 result = (this.object10 == null) ? ((obj.object10 == null) ? 0 : -1) : ((obj.object10 == null) ? 1 : this.object10.compareTo(obj.object10));
573 if (result == 0)
574 {
575 result = (this.object11 == null) ? ((obj.object11 == null) ? 0 : -1) : ((obj.object11 == null) ? 1 : this.object11.compareTo(obj.object11));
576 if (result == 0)
577 {
578 result = (this.object12 == null) ? ((obj.object12 == null) ? 0 : -1) : ((obj.object12 == null) ? 1 : this.object12.compareTo(obj.object12));
579 if (result == 0)
580 {
581 result = (this.object13 == null) ? ((obj.object13 == null) ? 0 : -1) : ((obj.object13 == null) ? 1 : this.object13.compareTo(obj.object13));
582 if (result == 0)
583 {
584 result = (this.object14 == null) ? ((obj.object14 == null) ? 0 : -1) : ((obj.object14 == null) ? 1 : this.object14.compareTo(obj.object14));
585 if (result == 0)
586 {
587 result = (this.object15 == null) ? ((obj.object15 == null) ? 0 : -1) : ((obj.object15 == null) ? 1 : this.object15.compareTo(obj.object15));
588 if (result == 0)
589 {
590 result = this.object16.compareTo(obj.object16);
591 }
592 }
593 }
594 }
595 }
596 }
597 }
598 }
599 }
600 }
601 }
602 }
603 }
604 }
605 }
606 return result;
607 }
608
609 }