1use crate::{IVec2, IVec3, IVec4, Vec4Swizzles};
4
5impl Vec4Swizzles for IVec4 {
6 type Vec2 = IVec2;
7
8 type Vec3 = IVec3;
9
10 #[inline]
11 #[must_use]
12 fn xx(self) -> IVec2 {
13 IVec2 {
14 x: self.x,
15 y: self.x,
16 }
17 }
18
19 #[inline]
20 #[must_use]
21 fn xy(self) -> IVec2 {
22 IVec2 {
23 x: self.x,
24 y: self.y,
25 }
26 }
27
28 #[inline]
29 #[must_use]
30 fn xz(self) -> IVec2 {
31 IVec2 {
32 x: self.x,
33 y: self.z,
34 }
35 }
36
37 #[inline]
38 #[must_use]
39 fn xw(self) -> IVec2 {
40 IVec2 {
41 x: self.x,
42 y: self.w,
43 }
44 }
45
46 #[inline]
47 #[must_use]
48 fn yx(self) -> IVec2 {
49 IVec2 {
50 x: self.y,
51 y: self.x,
52 }
53 }
54
55 #[inline]
56 #[must_use]
57 fn yy(self) -> IVec2 {
58 IVec2 {
59 x: self.y,
60 y: self.y,
61 }
62 }
63
64 #[inline]
65 #[must_use]
66 fn yz(self) -> IVec2 {
67 IVec2 {
68 x: self.y,
69 y: self.z,
70 }
71 }
72
73 #[inline]
74 #[must_use]
75 fn yw(self) -> IVec2 {
76 IVec2 {
77 x: self.y,
78 y: self.w,
79 }
80 }
81
82 #[inline]
83 #[must_use]
84 fn zx(self) -> IVec2 {
85 IVec2 {
86 x: self.z,
87 y: self.x,
88 }
89 }
90
91 #[inline]
92 #[must_use]
93 fn zy(self) -> IVec2 {
94 IVec2 {
95 x: self.z,
96 y: self.y,
97 }
98 }
99
100 #[inline]
101 #[must_use]
102 fn zz(self) -> IVec2 {
103 IVec2 {
104 x: self.z,
105 y: self.z,
106 }
107 }
108
109 #[inline]
110 #[must_use]
111 fn zw(self) -> IVec2 {
112 IVec2 {
113 x: self.z,
114 y: self.w,
115 }
116 }
117
118 #[inline]
119 #[must_use]
120 fn wx(self) -> IVec2 {
121 IVec2 {
122 x: self.w,
123 y: self.x,
124 }
125 }
126
127 #[inline]
128 #[must_use]
129 fn wy(self) -> IVec2 {
130 IVec2 {
131 x: self.w,
132 y: self.y,
133 }
134 }
135
136 #[inline]
137 #[must_use]
138 fn wz(self) -> IVec2 {
139 IVec2 {
140 x: self.w,
141 y: self.z,
142 }
143 }
144
145 #[inline]
146 #[must_use]
147 fn ww(self) -> IVec2 {
148 IVec2 {
149 x: self.w,
150 y: self.w,
151 }
152 }
153
154 #[inline]
155 #[must_use]
156 fn xxx(self) -> IVec3 {
157 IVec3::new(self.x, self.x, self.x)
158 }
159
160 #[inline]
161 #[must_use]
162 fn xxy(self) -> IVec3 {
163 IVec3::new(self.x, self.x, self.y)
164 }
165
166 #[inline]
167 #[must_use]
168 fn xxz(self) -> IVec3 {
169 IVec3::new(self.x, self.x, self.z)
170 }
171
172 #[inline]
173 #[must_use]
174 fn xxw(self) -> IVec3 {
175 IVec3::new(self.x, self.x, self.w)
176 }
177
178 #[inline]
179 #[must_use]
180 fn xyx(self) -> IVec3 {
181 IVec3::new(self.x, self.y, self.x)
182 }
183
184 #[inline]
185 #[must_use]
186 fn xyy(self) -> IVec3 {
187 IVec3::new(self.x, self.y, self.y)
188 }
189
190 #[inline]
191 #[must_use]
192 fn xyz(self) -> IVec3 {
193 IVec3::new(self.x, self.y, self.z)
194 }
195
196 #[inline]
197 #[must_use]
198 fn xyw(self) -> IVec3 {
199 IVec3::new(self.x, self.y, self.w)
200 }
201
202 #[inline]
203 #[must_use]
204 fn xzx(self) -> IVec3 {
205 IVec3::new(self.x, self.z, self.x)
206 }
207
208 #[inline]
209 #[must_use]
210 fn xzy(self) -> IVec3 {
211 IVec3::new(self.x, self.z, self.y)
212 }
213
214 #[inline]
215 #[must_use]
216 fn xzz(self) -> IVec3 {
217 IVec3::new(self.x, self.z, self.z)
218 }
219
220 #[inline]
221 #[must_use]
222 fn xzw(self) -> IVec3 {
223 IVec3::new(self.x, self.z, self.w)
224 }
225
226 #[inline]
227 #[must_use]
228 fn xwx(self) -> IVec3 {
229 IVec3::new(self.x, self.w, self.x)
230 }
231
232 #[inline]
233 #[must_use]
234 fn xwy(self) -> IVec3 {
235 IVec3::new(self.x, self.w, self.y)
236 }
237
238 #[inline]
239 #[must_use]
240 fn xwz(self) -> IVec3 {
241 IVec3::new(self.x, self.w, self.z)
242 }
243
244 #[inline]
245 #[must_use]
246 fn xww(self) -> IVec3 {
247 IVec3::new(self.x, self.w, self.w)
248 }
249
250 #[inline]
251 #[must_use]
252 fn yxx(self) -> IVec3 {
253 IVec3::new(self.y, self.x, self.x)
254 }
255
256 #[inline]
257 #[must_use]
258 fn yxy(self) -> IVec3 {
259 IVec3::new(self.y, self.x, self.y)
260 }
261
262 #[inline]
263 #[must_use]
264 fn yxz(self) -> IVec3 {
265 IVec3::new(self.y, self.x, self.z)
266 }
267
268 #[inline]
269 #[must_use]
270 fn yxw(self) -> IVec3 {
271 IVec3::new(self.y, self.x, self.w)
272 }
273
274 #[inline]
275 #[must_use]
276 fn yyx(self) -> IVec3 {
277 IVec3::new(self.y, self.y, self.x)
278 }
279
280 #[inline]
281 #[must_use]
282 fn yyy(self) -> IVec3 {
283 IVec3::new(self.y, self.y, self.y)
284 }
285
286 #[inline]
287 #[must_use]
288 fn yyz(self) -> IVec3 {
289 IVec3::new(self.y, self.y, self.z)
290 }
291
292 #[inline]
293 #[must_use]
294 fn yyw(self) -> IVec3 {
295 IVec3::new(self.y, self.y, self.w)
296 }
297
298 #[inline]
299 #[must_use]
300 fn yzx(self) -> IVec3 {
301 IVec3::new(self.y, self.z, self.x)
302 }
303
304 #[inline]
305 #[must_use]
306 fn yzy(self) -> IVec3 {
307 IVec3::new(self.y, self.z, self.y)
308 }
309
310 #[inline]
311 #[must_use]
312 fn yzz(self) -> IVec3 {
313 IVec3::new(self.y, self.z, self.z)
314 }
315
316 #[inline]
317 #[must_use]
318 fn yzw(self) -> IVec3 {
319 IVec3::new(self.y, self.z, self.w)
320 }
321
322 #[inline]
323 #[must_use]
324 fn ywx(self) -> IVec3 {
325 IVec3::new(self.y, self.w, self.x)
326 }
327
328 #[inline]
329 #[must_use]
330 fn ywy(self) -> IVec3 {
331 IVec3::new(self.y, self.w, self.y)
332 }
333
334 #[inline]
335 #[must_use]
336 fn ywz(self) -> IVec3 {
337 IVec3::new(self.y, self.w, self.z)
338 }
339
340 #[inline]
341 #[must_use]
342 fn yww(self) -> IVec3 {
343 IVec3::new(self.y, self.w, self.w)
344 }
345
346 #[inline]
347 #[must_use]
348 fn zxx(self) -> IVec3 {
349 IVec3::new(self.z, self.x, self.x)
350 }
351
352 #[inline]
353 #[must_use]
354 fn zxy(self) -> IVec3 {
355 IVec3::new(self.z, self.x, self.y)
356 }
357
358 #[inline]
359 #[must_use]
360 fn zxz(self) -> IVec3 {
361 IVec3::new(self.z, self.x, self.z)
362 }
363
364 #[inline]
365 #[must_use]
366 fn zxw(self) -> IVec3 {
367 IVec3::new(self.z, self.x, self.w)
368 }
369
370 #[inline]
371 #[must_use]
372 fn zyx(self) -> IVec3 {
373 IVec3::new(self.z, self.y, self.x)
374 }
375
376 #[inline]
377 #[must_use]
378 fn zyy(self) -> IVec3 {
379 IVec3::new(self.z, self.y, self.y)
380 }
381
382 #[inline]
383 #[must_use]
384 fn zyz(self) -> IVec3 {
385 IVec3::new(self.z, self.y, self.z)
386 }
387
388 #[inline]
389 #[must_use]
390 fn zyw(self) -> IVec3 {
391 IVec3::new(self.z, self.y, self.w)
392 }
393
394 #[inline]
395 #[must_use]
396 fn zzx(self) -> IVec3 {
397 IVec3::new(self.z, self.z, self.x)
398 }
399
400 #[inline]
401 #[must_use]
402 fn zzy(self) -> IVec3 {
403 IVec3::new(self.z, self.z, self.y)
404 }
405
406 #[inline]
407 #[must_use]
408 fn zzz(self) -> IVec3 {
409 IVec3::new(self.z, self.z, self.z)
410 }
411
412 #[inline]
413 #[must_use]
414 fn zzw(self) -> IVec3 {
415 IVec3::new(self.z, self.z, self.w)
416 }
417
418 #[inline]
419 #[must_use]
420 fn zwx(self) -> IVec3 {
421 IVec3::new(self.z, self.w, self.x)
422 }
423
424 #[inline]
425 #[must_use]
426 fn zwy(self) -> IVec3 {
427 IVec3::new(self.z, self.w, self.y)
428 }
429
430 #[inline]
431 #[must_use]
432 fn zwz(self) -> IVec3 {
433 IVec3::new(self.z, self.w, self.z)
434 }
435
436 #[inline]
437 #[must_use]
438 fn zww(self) -> IVec3 {
439 IVec3::new(self.z, self.w, self.w)
440 }
441
442 #[inline]
443 #[must_use]
444 fn wxx(self) -> IVec3 {
445 IVec3::new(self.w, self.x, self.x)
446 }
447
448 #[inline]
449 #[must_use]
450 fn wxy(self) -> IVec3 {
451 IVec3::new(self.w, self.x, self.y)
452 }
453
454 #[inline]
455 #[must_use]
456 fn wxz(self) -> IVec3 {
457 IVec3::new(self.w, self.x, self.z)
458 }
459
460 #[inline]
461 #[must_use]
462 fn wxw(self) -> IVec3 {
463 IVec3::new(self.w, self.x, self.w)
464 }
465
466 #[inline]
467 #[must_use]
468 fn wyx(self) -> IVec3 {
469 IVec3::new(self.w, self.y, self.x)
470 }
471
472 #[inline]
473 #[must_use]
474 fn wyy(self) -> IVec3 {
475 IVec3::new(self.w, self.y, self.y)
476 }
477
478 #[inline]
479 #[must_use]
480 fn wyz(self) -> IVec3 {
481 IVec3::new(self.w, self.y, self.z)
482 }
483
484 #[inline]
485 #[must_use]
486 fn wyw(self) -> IVec3 {
487 IVec3::new(self.w, self.y, self.w)
488 }
489
490 #[inline]
491 #[must_use]
492 fn wzx(self) -> IVec3 {
493 IVec3::new(self.w, self.z, self.x)
494 }
495
496 #[inline]
497 #[must_use]
498 fn wzy(self) -> IVec3 {
499 IVec3::new(self.w, self.z, self.y)
500 }
501
502 #[inline]
503 #[must_use]
504 fn wzz(self) -> IVec3 {
505 IVec3::new(self.w, self.z, self.z)
506 }
507
508 #[inline]
509 #[must_use]
510 fn wzw(self) -> IVec3 {
511 IVec3::new(self.w, self.z, self.w)
512 }
513
514 #[inline]
515 #[must_use]
516 fn wwx(self) -> IVec3 {
517 IVec3::new(self.w, self.w, self.x)
518 }
519
520 #[inline]
521 #[must_use]
522 fn wwy(self) -> IVec3 {
523 IVec3::new(self.w, self.w, self.y)
524 }
525
526 #[inline]
527 #[must_use]
528 fn wwz(self) -> IVec3 {
529 IVec3::new(self.w, self.w, self.z)
530 }
531
532 #[inline]
533 #[must_use]
534 fn www(self) -> IVec3 {
535 IVec3::new(self.w, self.w, self.w)
536 }
537
538 #[inline]
539 #[must_use]
540 fn xxxx(self) -> IVec4 {
541 IVec4::new(self.x, self.x, self.x, self.x)
542 }
543
544 #[inline]
545 #[must_use]
546 fn xxxy(self) -> IVec4 {
547 IVec4::new(self.x, self.x, self.x, self.y)
548 }
549
550 #[inline]
551 #[must_use]
552 fn xxxz(self) -> IVec4 {
553 IVec4::new(self.x, self.x, self.x, self.z)
554 }
555
556 #[inline]
557 #[must_use]
558 fn xxxw(self) -> IVec4 {
559 IVec4::new(self.x, self.x, self.x, self.w)
560 }
561
562 #[inline]
563 #[must_use]
564 fn xxyx(self) -> IVec4 {
565 IVec4::new(self.x, self.x, self.y, self.x)
566 }
567
568 #[inline]
569 #[must_use]
570 fn xxyy(self) -> IVec4 {
571 IVec4::new(self.x, self.x, self.y, self.y)
572 }
573
574 #[inline]
575 #[must_use]
576 fn xxyz(self) -> IVec4 {
577 IVec4::new(self.x, self.x, self.y, self.z)
578 }
579
580 #[inline]
581 #[must_use]
582 fn xxyw(self) -> IVec4 {
583 IVec4::new(self.x, self.x, self.y, self.w)
584 }
585
586 #[inline]
587 #[must_use]
588 fn xxzx(self) -> IVec4 {
589 IVec4::new(self.x, self.x, self.z, self.x)
590 }
591
592 #[inline]
593 #[must_use]
594 fn xxzy(self) -> IVec4 {
595 IVec4::new(self.x, self.x, self.z, self.y)
596 }
597
598 #[inline]
599 #[must_use]
600 fn xxzz(self) -> IVec4 {
601 IVec4::new(self.x, self.x, self.z, self.z)
602 }
603
604 #[inline]
605 #[must_use]
606 fn xxzw(self) -> IVec4 {
607 IVec4::new(self.x, self.x, self.z, self.w)
608 }
609
610 #[inline]
611 #[must_use]
612 fn xxwx(self) -> IVec4 {
613 IVec4::new(self.x, self.x, self.w, self.x)
614 }
615
616 #[inline]
617 #[must_use]
618 fn xxwy(self) -> IVec4 {
619 IVec4::new(self.x, self.x, self.w, self.y)
620 }
621
622 #[inline]
623 #[must_use]
624 fn xxwz(self) -> IVec4 {
625 IVec4::new(self.x, self.x, self.w, self.z)
626 }
627
628 #[inline]
629 #[must_use]
630 fn xxww(self) -> IVec4 {
631 IVec4::new(self.x, self.x, self.w, self.w)
632 }
633
634 #[inline]
635 #[must_use]
636 fn xyxx(self) -> IVec4 {
637 IVec4::new(self.x, self.y, self.x, self.x)
638 }
639
640 #[inline]
641 #[must_use]
642 fn xyxy(self) -> IVec4 {
643 IVec4::new(self.x, self.y, self.x, self.y)
644 }
645
646 #[inline]
647 #[must_use]
648 fn xyxz(self) -> IVec4 {
649 IVec4::new(self.x, self.y, self.x, self.z)
650 }
651
652 #[inline]
653 #[must_use]
654 fn xyxw(self) -> IVec4 {
655 IVec4::new(self.x, self.y, self.x, self.w)
656 }
657
658 #[inline]
659 #[must_use]
660 fn xyyx(self) -> IVec4 {
661 IVec4::new(self.x, self.y, self.y, self.x)
662 }
663
664 #[inline]
665 #[must_use]
666 fn xyyy(self) -> IVec4 {
667 IVec4::new(self.x, self.y, self.y, self.y)
668 }
669
670 #[inline]
671 #[must_use]
672 fn xyyz(self) -> IVec4 {
673 IVec4::new(self.x, self.y, self.y, self.z)
674 }
675
676 #[inline]
677 #[must_use]
678 fn xyyw(self) -> IVec4 {
679 IVec4::new(self.x, self.y, self.y, self.w)
680 }
681
682 #[inline]
683 #[must_use]
684 fn xyzx(self) -> IVec4 {
685 IVec4::new(self.x, self.y, self.z, self.x)
686 }
687
688 #[inline]
689 #[must_use]
690 fn xyzy(self) -> IVec4 {
691 IVec4::new(self.x, self.y, self.z, self.y)
692 }
693
694 #[inline]
695 #[must_use]
696 fn xyzz(self) -> IVec4 {
697 IVec4::new(self.x, self.y, self.z, self.z)
698 }
699
700 #[inline]
701 #[must_use]
702 fn xywx(self) -> IVec4 {
703 IVec4::new(self.x, self.y, self.w, self.x)
704 }
705
706 #[inline]
707 #[must_use]
708 fn xywy(self) -> IVec4 {
709 IVec4::new(self.x, self.y, self.w, self.y)
710 }
711
712 #[inline]
713 #[must_use]
714 fn xywz(self) -> IVec4 {
715 IVec4::new(self.x, self.y, self.w, self.z)
716 }
717
718 #[inline]
719 #[must_use]
720 fn xyww(self) -> IVec4 {
721 IVec4::new(self.x, self.y, self.w, self.w)
722 }
723
724 #[inline]
725 #[must_use]
726 fn xzxx(self) -> IVec4 {
727 IVec4::new(self.x, self.z, self.x, self.x)
728 }
729
730 #[inline]
731 #[must_use]
732 fn xzxy(self) -> IVec4 {
733 IVec4::new(self.x, self.z, self.x, self.y)
734 }
735
736 #[inline]
737 #[must_use]
738 fn xzxz(self) -> IVec4 {
739 IVec4::new(self.x, self.z, self.x, self.z)
740 }
741
742 #[inline]
743 #[must_use]
744 fn xzxw(self) -> IVec4 {
745 IVec4::new(self.x, self.z, self.x, self.w)
746 }
747
748 #[inline]
749 #[must_use]
750 fn xzyx(self) -> IVec4 {
751 IVec4::new(self.x, self.z, self.y, self.x)
752 }
753
754 #[inline]
755 #[must_use]
756 fn xzyy(self) -> IVec4 {
757 IVec4::new(self.x, self.z, self.y, self.y)
758 }
759
760 #[inline]
761 #[must_use]
762 fn xzyz(self) -> IVec4 {
763 IVec4::new(self.x, self.z, self.y, self.z)
764 }
765
766 #[inline]
767 #[must_use]
768 fn xzyw(self) -> IVec4 {
769 IVec4::new(self.x, self.z, self.y, self.w)
770 }
771
772 #[inline]
773 #[must_use]
774 fn xzzx(self) -> IVec4 {
775 IVec4::new(self.x, self.z, self.z, self.x)
776 }
777
778 #[inline]
779 #[must_use]
780 fn xzzy(self) -> IVec4 {
781 IVec4::new(self.x, self.z, self.z, self.y)
782 }
783
784 #[inline]
785 #[must_use]
786 fn xzzz(self) -> IVec4 {
787 IVec4::new(self.x, self.z, self.z, self.z)
788 }
789
790 #[inline]
791 #[must_use]
792 fn xzzw(self) -> IVec4 {
793 IVec4::new(self.x, self.z, self.z, self.w)
794 }
795
796 #[inline]
797 #[must_use]
798 fn xzwx(self) -> IVec4 {
799 IVec4::new(self.x, self.z, self.w, self.x)
800 }
801
802 #[inline]
803 #[must_use]
804 fn xzwy(self) -> IVec4 {
805 IVec4::new(self.x, self.z, self.w, self.y)
806 }
807
808 #[inline]
809 #[must_use]
810 fn xzwz(self) -> IVec4 {
811 IVec4::new(self.x, self.z, self.w, self.z)
812 }
813
814 #[inline]
815 #[must_use]
816 fn xzww(self) -> IVec4 {
817 IVec4::new(self.x, self.z, self.w, self.w)
818 }
819
820 #[inline]
821 #[must_use]
822 fn xwxx(self) -> IVec4 {
823 IVec4::new(self.x, self.w, self.x, self.x)
824 }
825
826 #[inline]
827 #[must_use]
828 fn xwxy(self) -> IVec4 {
829 IVec4::new(self.x, self.w, self.x, self.y)
830 }
831
832 #[inline]
833 #[must_use]
834 fn xwxz(self) -> IVec4 {
835 IVec4::new(self.x, self.w, self.x, self.z)
836 }
837
838 #[inline]
839 #[must_use]
840 fn xwxw(self) -> IVec4 {
841 IVec4::new(self.x, self.w, self.x, self.w)
842 }
843
844 #[inline]
845 #[must_use]
846 fn xwyx(self) -> IVec4 {
847 IVec4::new(self.x, self.w, self.y, self.x)
848 }
849
850 #[inline]
851 #[must_use]
852 fn xwyy(self) -> IVec4 {
853 IVec4::new(self.x, self.w, self.y, self.y)
854 }
855
856 #[inline]
857 #[must_use]
858 fn xwyz(self) -> IVec4 {
859 IVec4::new(self.x, self.w, self.y, self.z)
860 }
861
862 #[inline]
863 #[must_use]
864 fn xwyw(self) -> IVec4 {
865 IVec4::new(self.x, self.w, self.y, self.w)
866 }
867
868 #[inline]
869 #[must_use]
870 fn xwzx(self) -> IVec4 {
871 IVec4::new(self.x, self.w, self.z, self.x)
872 }
873
874 #[inline]
875 #[must_use]
876 fn xwzy(self) -> IVec4 {
877 IVec4::new(self.x, self.w, self.z, self.y)
878 }
879
880 #[inline]
881 #[must_use]
882 fn xwzz(self) -> IVec4 {
883 IVec4::new(self.x, self.w, self.z, self.z)
884 }
885
886 #[inline]
887 #[must_use]
888 fn xwzw(self) -> IVec4 {
889 IVec4::new(self.x, self.w, self.z, self.w)
890 }
891
892 #[inline]
893 #[must_use]
894 fn xwwx(self) -> IVec4 {
895 IVec4::new(self.x, self.w, self.w, self.x)
896 }
897
898 #[inline]
899 #[must_use]
900 fn xwwy(self) -> IVec4 {
901 IVec4::new(self.x, self.w, self.w, self.y)
902 }
903
904 #[inline]
905 #[must_use]
906 fn xwwz(self) -> IVec4 {
907 IVec4::new(self.x, self.w, self.w, self.z)
908 }
909
910 #[inline]
911 #[must_use]
912 fn xwww(self) -> IVec4 {
913 IVec4::new(self.x, self.w, self.w, self.w)
914 }
915
916 #[inline]
917 #[must_use]
918 fn yxxx(self) -> IVec4 {
919 IVec4::new(self.y, self.x, self.x, self.x)
920 }
921
922 #[inline]
923 #[must_use]
924 fn yxxy(self) -> IVec4 {
925 IVec4::new(self.y, self.x, self.x, self.y)
926 }
927
928 #[inline]
929 #[must_use]
930 fn yxxz(self) -> IVec4 {
931 IVec4::new(self.y, self.x, self.x, self.z)
932 }
933
934 #[inline]
935 #[must_use]
936 fn yxxw(self) -> IVec4 {
937 IVec4::new(self.y, self.x, self.x, self.w)
938 }
939
940 #[inline]
941 #[must_use]
942 fn yxyx(self) -> IVec4 {
943 IVec4::new(self.y, self.x, self.y, self.x)
944 }
945
946 #[inline]
947 #[must_use]
948 fn yxyy(self) -> IVec4 {
949 IVec4::new(self.y, self.x, self.y, self.y)
950 }
951
952 #[inline]
953 #[must_use]
954 fn yxyz(self) -> IVec4 {
955 IVec4::new(self.y, self.x, self.y, self.z)
956 }
957
958 #[inline]
959 #[must_use]
960 fn yxyw(self) -> IVec4 {
961 IVec4::new(self.y, self.x, self.y, self.w)
962 }
963
964 #[inline]
965 #[must_use]
966 fn yxzx(self) -> IVec4 {
967 IVec4::new(self.y, self.x, self.z, self.x)
968 }
969
970 #[inline]
971 #[must_use]
972 fn yxzy(self) -> IVec4 {
973 IVec4::new(self.y, self.x, self.z, self.y)
974 }
975
976 #[inline]
977 #[must_use]
978 fn yxzz(self) -> IVec4 {
979 IVec4::new(self.y, self.x, self.z, self.z)
980 }
981
982 #[inline]
983 #[must_use]
984 fn yxzw(self) -> IVec4 {
985 IVec4::new(self.y, self.x, self.z, self.w)
986 }
987
988 #[inline]
989 #[must_use]
990 fn yxwx(self) -> IVec4 {
991 IVec4::new(self.y, self.x, self.w, self.x)
992 }
993
994 #[inline]
995 #[must_use]
996 fn yxwy(self) -> IVec4 {
997 IVec4::new(self.y, self.x, self.w, self.y)
998 }
999
1000 #[inline]
1001 #[must_use]
1002 fn yxwz(self) -> IVec4 {
1003 IVec4::new(self.y, self.x, self.w, self.z)
1004 }
1005
1006 #[inline]
1007 #[must_use]
1008 fn yxww(self) -> IVec4 {
1009 IVec4::new(self.y, self.x, self.w, self.w)
1010 }
1011
1012 #[inline]
1013 #[must_use]
1014 fn yyxx(self) -> IVec4 {
1015 IVec4::new(self.y, self.y, self.x, self.x)
1016 }
1017
1018 #[inline]
1019 #[must_use]
1020 fn yyxy(self) -> IVec4 {
1021 IVec4::new(self.y, self.y, self.x, self.y)
1022 }
1023
1024 #[inline]
1025 #[must_use]
1026 fn yyxz(self) -> IVec4 {
1027 IVec4::new(self.y, self.y, self.x, self.z)
1028 }
1029
1030 #[inline]
1031 #[must_use]
1032 fn yyxw(self) -> IVec4 {
1033 IVec4::new(self.y, self.y, self.x, self.w)
1034 }
1035
1036 #[inline]
1037 #[must_use]
1038 fn yyyx(self) -> IVec4 {
1039 IVec4::new(self.y, self.y, self.y, self.x)
1040 }
1041
1042 #[inline]
1043 #[must_use]
1044 fn yyyy(self) -> IVec4 {
1045 IVec4::new(self.y, self.y, self.y, self.y)
1046 }
1047
1048 #[inline]
1049 #[must_use]
1050 fn yyyz(self) -> IVec4 {
1051 IVec4::new(self.y, self.y, self.y, self.z)
1052 }
1053
1054 #[inline]
1055 #[must_use]
1056 fn yyyw(self) -> IVec4 {
1057 IVec4::new(self.y, self.y, self.y, self.w)
1058 }
1059
1060 #[inline]
1061 #[must_use]
1062 fn yyzx(self) -> IVec4 {
1063 IVec4::new(self.y, self.y, self.z, self.x)
1064 }
1065
1066 #[inline]
1067 #[must_use]
1068 fn yyzy(self) -> IVec4 {
1069 IVec4::new(self.y, self.y, self.z, self.y)
1070 }
1071
1072 #[inline]
1073 #[must_use]
1074 fn yyzz(self) -> IVec4 {
1075 IVec4::new(self.y, self.y, self.z, self.z)
1076 }
1077
1078 #[inline]
1079 #[must_use]
1080 fn yyzw(self) -> IVec4 {
1081 IVec4::new(self.y, self.y, self.z, self.w)
1082 }
1083
1084 #[inline]
1085 #[must_use]
1086 fn yywx(self) -> IVec4 {
1087 IVec4::new(self.y, self.y, self.w, self.x)
1088 }
1089
1090 #[inline]
1091 #[must_use]
1092 fn yywy(self) -> IVec4 {
1093 IVec4::new(self.y, self.y, self.w, self.y)
1094 }
1095
1096 #[inline]
1097 #[must_use]
1098 fn yywz(self) -> IVec4 {
1099 IVec4::new(self.y, self.y, self.w, self.z)
1100 }
1101
1102 #[inline]
1103 #[must_use]
1104 fn yyww(self) -> IVec4 {
1105 IVec4::new(self.y, self.y, self.w, self.w)
1106 }
1107
1108 #[inline]
1109 #[must_use]
1110 fn yzxx(self) -> IVec4 {
1111 IVec4::new(self.y, self.z, self.x, self.x)
1112 }
1113
1114 #[inline]
1115 #[must_use]
1116 fn yzxy(self) -> IVec4 {
1117 IVec4::new(self.y, self.z, self.x, self.y)
1118 }
1119
1120 #[inline]
1121 #[must_use]
1122 fn yzxz(self) -> IVec4 {
1123 IVec4::new(self.y, self.z, self.x, self.z)
1124 }
1125
1126 #[inline]
1127 #[must_use]
1128 fn yzxw(self) -> IVec4 {
1129 IVec4::new(self.y, self.z, self.x, self.w)
1130 }
1131
1132 #[inline]
1133 #[must_use]
1134 fn yzyx(self) -> IVec4 {
1135 IVec4::new(self.y, self.z, self.y, self.x)
1136 }
1137
1138 #[inline]
1139 #[must_use]
1140 fn yzyy(self) -> IVec4 {
1141 IVec4::new(self.y, self.z, self.y, self.y)
1142 }
1143
1144 #[inline]
1145 #[must_use]
1146 fn yzyz(self) -> IVec4 {
1147 IVec4::new(self.y, self.z, self.y, self.z)
1148 }
1149
1150 #[inline]
1151 #[must_use]
1152 fn yzyw(self) -> IVec4 {
1153 IVec4::new(self.y, self.z, self.y, self.w)
1154 }
1155
1156 #[inline]
1157 #[must_use]
1158 fn yzzx(self) -> IVec4 {
1159 IVec4::new(self.y, self.z, self.z, self.x)
1160 }
1161
1162 #[inline]
1163 #[must_use]
1164 fn yzzy(self) -> IVec4 {
1165 IVec4::new(self.y, self.z, self.z, self.y)
1166 }
1167
1168 #[inline]
1169 #[must_use]
1170 fn yzzz(self) -> IVec4 {
1171 IVec4::new(self.y, self.z, self.z, self.z)
1172 }
1173
1174 #[inline]
1175 #[must_use]
1176 fn yzzw(self) -> IVec4 {
1177 IVec4::new(self.y, self.z, self.z, self.w)
1178 }
1179
1180 #[inline]
1181 #[must_use]
1182 fn yzwx(self) -> IVec4 {
1183 IVec4::new(self.y, self.z, self.w, self.x)
1184 }
1185
1186 #[inline]
1187 #[must_use]
1188 fn yzwy(self) -> IVec4 {
1189 IVec4::new(self.y, self.z, self.w, self.y)
1190 }
1191
1192 #[inline]
1193 #[must_use]
1194 fn yzwz(self) -> IVec4 {
1195 IVec4::new(self.y, self.z, self.w, self.z)
1196 }
1197
1198 #[inline]
1199 #[must_use]
1200 fn yzww(self) -> IVec4 {
1201 IVec4::new(self.y, self.z, self.w, self.w)
1202 }
1203
1204 #[inline]
1205 #[must_use]
1206 fn ywxx(self) -> IVec4 {
1207 IVec4::new(self.y, self.w, self.x, self.x)
1208 }
1209
1210 #[inline]
1211 #[must_use]
1212 fn ywxy(self) -> IVec4 {
1213 IVec4::new(self.y, self.w, self.x, self.y)
1214 }
1215
1216 #[inline]
1217 #[must_use]
1218 fn ywxz(self) -> IVec4 {
1219 IVec4::new(self.y, self.w, self.x, self.z)
1220 }
1221
1222 #[inline]
1223 #[must_use]
1224 fn ywxw(self) -> IVec4 {
1225 IVec4::new(self.y, self.w, self.x, self.w)
1226 }
1227
1228 #[inline]
1229 #[must_use]
1230 fn ywyx(self) -> IVec4 {
1231 IVec4::new(self.y, self.w, self.y, self.x)
1232 }
1233
1234 #[inline]
1235 #[must_use]
1236 fn ywyy(self) -> IVec4 {
1237 IVec4::new(self.y, self.w, self.y, self.y)
1238 }
1239
1240 #[inline]
1241 #[must_use]
1242 fn ywyz(self) -> IVec4 {
1243 IVec4::new(self.y, self.w, self.y, self.z)
1244 }
1245
1246 #[inline]
1247 #[must_use]
1248 fn ywyw(self) -> IVec4 {
1249 IVec4::new(self.y, self.w, self.y, self.w)
1250 }
1251
1252 #[inline]
1253 #[must_use]
1254 fn ywzx(self) -> IVec4 {
1255 IVec4::new(self.y, self.w, self.z, self.x)
1256 }
1257
1258 #[inline]
1259 #[must_use]
1260 fn ywzy(self) -> IVec4 {
1261 IVec4::new(self.y, self.w, self.z, self.y)
1262 }
1263
1264 #[inline]
1265 #[must_use]
1266 fn ywzz(self) -> IVec4 {
1267 IVec4::new(self.y, self.w, self.z, self.z)
1268 }
1269
1270 #[inline]
1271 #[must_use]
1272 fn ywzw(self) -> IVec4 {
1273 IVec4::new(self.y, self.w, self.z, self.w)
1274 }
1275
1276 #[inline]
1277 #[must_use]
1278 fn ywwx(self) -> IVec4 {
1279 IVec4::new(self.y, self.w, self.w, self.x)
1280 }
1281
1282 #[inline]
1283 #[must_use]
1284 fn ywwy(self) -> IVec4 {
1285 IVec4::new(self.y, self.w, self.w, self.y)
1286 }
1287
1288 #[inline]
1289 #[must_use]
1290 fn ywwz(self) -> IVec4 {
1291 IVec4::new(self.y, self.w, self.w, self.z)
1292 }
1293
1294 #[inline]
1295 #[must_use]
1296 fn ywww(self) -> IVec4 {
1297 IVec4::new(self.y, self.w, self.w, self.w)
1298 }
1299
1300 #[inline]
1301 #[must_use]
1302 fn zxxx(self) -> IVec4 {
1303 IVec4::new(self.z, self.x, self.x, self.x)
1304 }
1305
1306 #[inline]
1307 #[must_use]
1308 fn zxxy(self) -> IVec4 {
1309 IVec4::new(self.z, self.x, self.x, self.y)
1310 }
1311
1312 #[inline]
1313 #[must_use]
1314 fn zxxz(self) -> IVec4 {
1315 IVec4::new(self.z, self.x, self.x, self.z)
1316 }
1317
1318 #[inline]
1319 #[must_use]
1320 fn zxxw(self) -> IVec4 {
1321 IVec4::new(self.z, self.x, self.x, self.w)
1322 }
1323
1324 #[inline]
1325 #[must_use]
1326 fn zxyx(self) -> IVec4 {
1327 IVec4::new(self.z, self.x, self.y, self.x)
1328 }
1329
1330 #[inline]
1331 #[must_use]
1332 fn zxyy(self) -> IVec4 {
1333 IVec4::new(self.z, self.x, self.y, self.y)
1334 }
1335
1336 #[inline]
1337 #[must_use]
1338 fn zxyz(self) -> IVec4 {
1339 IVec4::new(self.z, self.x, self.y, self.z)
1340 }
1341
1342 #[inline]
1343 #[must_use]
1344 fn zxyw(self) -> IVec4 {
1345 IVec4::new(self.z, self.x, self.y, self.w)
1346 }
1347
1348 #[inline]
1349 #[must_use]
1350 fn zxzx(self) -> IVec4 {
1351 IVec4::new(self.z, self.x, self.z, self.x)
1352 }
1353
1354 #[inline]
1355 #[must_use]
1356 fn zxzy(self) -> IVec4 {
1357 IVec4::new(self.z, self.x, self.z, self.y)
1358 }
1359
1360 #[inline]
1361 #[must_use]
1362 fn zxzz(self) -> IVec4 {
1363 IVec4::new(self.z, self.x, self.z, self.z)
1364 }
1365
1366 #[inline]
1367 #[must_use]
1368 fn zxzw(self) -> IVec4 {
1369 IVec4::new(self.z, self.x, self.z, self.w)
1370 }
1371
1372 #[inline]
1373 #[must_use]
1374 fn zxwx(self) -> IVec4 {
1375 IVec4::new(self.z, self.x, self.w, self.x)
1376 }
1377
1378 #[inline]
1379 #[must_use]
1380 fn zxwy(self) -> IVec4 {
1381 IVec4::new(self.z, self.x, self.w, self.y)
1382 }
1383
1384 #[inline]
1385 #[must_use]
1386 fn zxwz(self) -> IVec4 {
1387 IVec4::new(self.z, self.x, self.w, self.z)
1388 }
1389
1390 #[inline]
1391 #[must_use]
1392 fn zxww(self) -> IVec4 {
1393 IVec4::new(self.z, self.x, self.w, self.w)
1394 }
1395
1396 #[inline]
1397 #[must_use]
1398 fn zyxx(self) -> IVec4 {
1399 IVec4::new(self.z, self.y, self.x, self.x)
1400 }
1401
1402 #[inline]
1403 #[must_use]
1404 fn zyxy(self) -> IVec4 {
1405 IVec4::new(self.z, self.y, self.x, self.y)
1406 }
1407
1408 #[inline]
1409 #[must_use]
1410 fn zyxz(self) -> IVec4 {
1411 IVec4::new(self.z, self.y, self.x, self.z)
1412 }
1413
1414 #[inline]
1415 #[must_use]
1416 fn zyxw(self) -> IVec4 {
1417 IVec4::new(self.z, self.y, self.x, self.w)
1418 }
1419
1420 #[inline]
1421 #[must_use]
1422 fn zyyx(self) -> IVec4 {
1423 IVec4::new(self.z, self.y, self.y, self.x)
1424 }
1425
1426 #[inline]
1427 #[must_use]
1428 fn zyyy(self) -> IVec4 {
1429 IVec4::new(self.z, self.y, self.y, self.y)
1430 }
1431
1432 #[inline]
1433 #[must_use]
1434 fn zyyz(self) -> IVec4 {
1435 IVec4::new(self.z, self.y, self.y, self.z)
1436 }
1437
1438 #[inline]
1439 #[must_use]
1440 fn zyyw(self) -> IVec4 {
1441 IVec4::new(self.z, self.y, self.y, self.w)
1442 }
1443
1444 #[inline]
1445 #[must_use]
1446 fn zyzx(self) -> IVec4 {
1447 IVec4::new(self.z, self.y, self.z, self.x)
1448 }
1449
1450 #[inline]
1451 #[must_use]
1452 fn zyzy(self) -> IVec4 {
1453 IVec4::new(self.z, self.y, self.z, self.y)
1454 }
1455
1456 #[inline]
1457 #[must_use]
1458 fn zyzz(self) -> IVec4 {
1459 IVec4::new(self.z, self.y, self.z, self.z)
1460 }
1461
1462 #[inline]
1463 #[must_use]
1464 fn zyzw(self) -> IVec4 {
1465 IVec4::new(self.z, self.y, self.z, self.w)
1466 }
1467
1468 #[inline]
1469 #[must_use]
1470 fn zywx(self) -> IVec4 {
1471 IVec4::new(self.z, self.y, self.w, self.x)
1472 }
1473
1474 #[inline]
1475 #[must_use]
1476 fn zywy(self) -> IVec4 {
1477 IVec4::new(self.z, self.y, self.w, self.y)
1478 }
1479
1480 #[inline]
1481 #[must_use]
1482 fn zywz(self) -> IVec4 {
1483 IVec4::new(self.z, self.y, self.w, self.z)
1484 }
1485
1486 #[inline]
1487 #[must_use]
1488 fn zyww(self) -> IVec4 {
1489 IVec4::new(self.z, self.y, self.w, self.w)
1490 }
1491
1492 #[inline]
1493 #[must_use]
1494 fn zzxx(self) -> IVec4 {
1495 IVec4::new(self.z, self.z, self.x, self.x)
1496 }
1497
1498 #[inline]
1499 #[must_use]
1500 fn zzxy(self) -> IVec4 {
1501 IVec4::new(self.z, self.z, self.x, self.y)
1502 }
1503
1504 #[inline]
1505 #[must_use]
1506 fn zzxz(self) -> IVec4 {
1507 IVec4::new(self.z, self.z, self.x, self.z)
1508 }
1509
1510 #[inline]
1511 #[must_use]
1512 fn zzxw(self) -> IVec4 {
1513 IVec4::new(self.z, self.z, self.x, self.w)
1514 }
1515
1516 #[inline]
1517 #[must_use]
1518 fn zzyx(self) -> IVec4 {
1519 IVec4::new(self.z, self.z, self.y, self.x)
1520 }
1521
1522 #[inline]
1523 #[must_use]
1524 fn zzyy(self) -> IVec4 {
1525 IVec4::new(self.z, self.z, self.y, self.y)
1526 }
1527
1528 #[inline]
1529 #[must_use]
1530 fn zzyz(self) -> IVec4 {
1531 IVec4::new(self.z, self.z, self.y, self.z)
1532 }
1533
1534 #[inline]
1535 #[must_use]
1536 fn zzyw(self) -> IVec4 {
1537 IVec4::new(self.z, self.z, self.y, self.w)
1538 }
1539
1540 #[inline]
1541 #[must_use]
1542 fn zzzx(self) -> IVec4 {
1543 IVec4::new(self.z, self.z, self.z, self.x)
1544 }
1545
1546 #[inline]
1547 #[must_use]
1548 fn zzzy(self) -> IVec4 {
1549 IVec4::new(self.z, self.z, self.z, self.y)
1550 }
1551
1552 #[inline]
1553 #[must_use]
1554 fn zzzz(self) -> IVec4 {
1555 IVec4::new(self.z, self.z, self.z, self.z)
1556 }
1557
1558 #[inline]
1559 #[must_use]
1560 fn zzzw(self) -> IVec4 {
1561 IVec4::new(self.z, self.z, self.z, self.w)
1562 }
1563
1564 #[inline]
1565 #[must_use]
1566 fn zzwx(self) -> IVec4 {
1567 IVec4::new(self.z, self.z, self.w, self.x)
1568 }
1569
1570 #[inline]
1571 #[must_use]
1572 fn zzwy(self) -> IVec4 {
1573 IVec4::new(self.z, self.z, self.w, self.y)
1574 }
1575
1576 #[inline]
1577 #[must_use]
1578 fn zzwz(self) -> IVec4 {
1579 IVec4::new(self.z, self.z, self.w, self.z)
1580 }
1581
1582 #[inline]
1583 #[must_use]
1584 fn zzww(self) -> IVec4 {
1585 IVec4::new(self.z, self.z, self.w, self.w)
1586 }
1587
1588 #[inline]
1589 #[must_use]
1590 fn zwxx(self) -> IVec4 {
1591 IVec4::new(self.z, self.w, self.x, self.x)
1592 }
1593
1594 #[inline]
1595 #[must_use]
1596 fn zwxy(self) -> IVec4 {
1597 IVec4::new(self.z, self.w, self.x, self.y)
1598 }
1599
1600 #[inline]
1601 #[must_use]
1602 fn zwxz(self) -> IVec4 {
1603 IVec4::new(self.z, self.w, self.x, self.z)
1604 }
1605
1606 #[inline]
1607 #[must_use]
1608 fn zwxw(self) -> IVec4 {
1609 IVec4::new(self.z, self.w, self.x, self.w)
1610 }
1611
1612 #[inline]
1613 #[must_use]
1614 fn zwyx(self) -> IVec4 {
1615 IVec4::new(self.z, self.w, self.y, self.x)
1616 }
1617
1618 #[inline]
1619 #[must_use]
1620 fn zwyy(self) -> IVec4 {
1621 IVec4::new(self.z, self.w, self.y, self.y)
1622 }
1623
1624 #[inline]
1625 #[must_use]
1626 fn zwyz(self) -> IVec4 {
1627 IVec4::new(self.z, self.w, self.y, self.z)
1628 }
1629
1630 #[inline]
1631 #[must_use]
1632 fn zwyw(self) -> IVec4 {
1633 IVec4::new(self.z, self.w, self.y, self.w)
1634 }
1635
1636 #[inline]
1637 #[must_use]
1638 fn zwzx(self) -> IVec4 {
1639 IVec4::new(self.z, self.w, self.z, self.x)
1640 }
1641
1642 #[inline]
1643 #[must_use]
1644 fn zwzy(self) -> IVec4 {
1645 IVec4::new(self.z, self.w, self.z, self.y)
1646 }
1647
1648 #[inline]
1649 #[must_use]
1650 fn zwzz(self) -> IVec4 {
1651 IVec4::new(self.z, self.w, self.z, self.z)
1652 }
1653
1654 #[inline]
1655 #[must_use]
1656 fn zwzw(self) -> IVec4 {
1657 IVec4::new(self.z, self.w, self.z, self.w)
1658 }
1659
1660 #[inline]
1661 #[must_use]
1662 fn zwwx(self) -> IVec4 {
1663 IVec4::new(self.z, self.w, self.w, self.x)
1664 }
1665
1666 #[inline]
1667 #[must_use]
1668 fn zwwy(self) -> IVec4 {
1669 IVec4::new(self.z, self.w, self.w, self.y)
1670 }
1671
1672 #[inline]
1673 #[must_use]
1674 fn zwwz(self) -> IVec4 {
1675 IVec4::new(self.z, self.w, self.w, self.z)
1676 }
1677
1678 #[inline]
1679 #[must_use]
1680 fn zwww(self) -> IVec4 {
1681 IVec4::new(self.z, self.w, self.w, self.w)
1682 }
1683
1684 #[inline]
1685 #[must_use]
1686 fn wxxx(self) -> IVec4 {
1687 IVec4::new(self.w, self.x, self.x, self.x)
1688 }
1689
1690 #[inline]
1691 #[must_use]
1692 fn wxxy(self) -> IVec4 {
1693 IVec4::new(self.w, self.x, self.x, self.y)
1694 }
1695
1696 #[inline]
1697 #[must_use]
1698 fn wxxz(self) -> IVec4 {
1699 IVec4::new(self.w, self.x, self.x, self.z)
1700 }
1701
1702 #[inline]
1703 #[must_use]
1704 fn wxxw(self) -> IVec4 {
1705 IVec4::new(self.w, self.x, self.x, self.w)
1706 }
1707
1708 #[inline]
1709 #[must_use]
1710 fn wxyx(self) -> IVec4 {
1711 IVec4::new(self.w, self.x, self.y, self.x)
1712 }
1713
1714 #[inline]
1715 #[must_use]
1716 fn wxyy(self) -> IVec4 {
1717 IVec4::new(self.w, self.x, self.y, self.y)
1718 }
1719
1720 #[inline]
1721 #[must_use]
1722 fn wxyz(self) -> IVec4 {
1723 IVec4::new(self.w, self.x, self.y, self.z)
1724 }
1725
1726 #[inline]
1727 #[must_use]
1728 fn wxyw(self) -> IVec4 {
1729 IVec4::new(self.w, self.x, self.y, self.w)
1730 }
1731
1732 #[inline]
1733 #[must_use]
1734 fn wxzx(self) -> IVec4 {
1735 IVec4::new(self.w, self.x, self.z, self.x)
1736 }
1737
1738 #[inline]
1739 #[must_use]
1740 fn wxzy(self) -> IVec4 {
1741 IVec4::new(self.w, self.x, self.z, self.y)
1742 }
1743
1744 #[inline]
1745 #[must_use]
1746 fn wxzz(self) -> IVec4 {
1747 IVec4::new(self.w, self.x, self.z, self.z)
1748 }
1749
1750 #[inline]
1751 #[must_use]
1752 fn wxzw(self) -> IVec4 {
1753 IVec4::new(self.w, self.x, self.z, self.w)
1754 }
1755
1756 #[inline]
1757 #[must_use]
1758 fn wxwx(self) -> IVec4 {
1759 IVec4::new(self.w, self.x, self.w, self.x)
1760 }
1761
1762 #[inline]
1763 #[must_use]
1764 fn wxwy(self) -> IVec4 {
1765 IVec4::new(self.w, self.x, self.w, self.y)
1766 }
1767
1768 #[inline]
1769 #[must_use]
1770 fn wxwz(self) -> IVec4 {
1771 IVec4::new(self.w, self.x, self.w, self.z)
1772 }
1773
1774 #[inline]
1775 #[must_use]
1776 fn wxww(self) -> IVec4 {
1777 IVec4::new(self.w, self.x, self.w, self.w)
1778 }
1779
1780 #[inline]
1781 #[must_use]
1782 fn wyxx(self) -> IVec4 {
1783 IVec4::new(self.w, self.y, self.x, self.x)
1784 }
1785
1786 #[inline]
1787 #[must_use]
1788 fn wyxy(self) -> IVec4 {
1789 IVec4::new(self.w, self.y, self.x, self.y)
1790 }
1791
1792 #[inline]
1793 #[must_use]
1794 fn wyxz(self) -> IVec4 {
1795 IVec4::new(self.w, self.y, self.x, self.z)
1796 }
1797
1798 #[inline]
1799 #[must_use]
1800 fn wyxw(self) -> IVec4 {
1801 IVec4::new(self.w, self.y, self.x, self.w)
1802 }
1803
1804 #[inline]
1805 #[must_use]
1806 fn wyyx(self) -> IVec4 {
1807 IVec4::new(self.w, self.y, self.y, self.x)
1808 }
1809
1810 #[inline]
1811 #[must_use]
1812 fn wyyy(self) -> IVec4 {
1813 IVec4::new(self.w, self.y, self.y, self.y)
1814 }
1815
1816 #[inline]
1817 #[must_use]
1818 fn wyyz(self) -> IVec4 {
1819 IVec4::new(self.w, self.y, self.y, self.z)
1820 }
1821
1822 #[inline]
1823 #[must_use]
1824 fn wyyw(self) -> IVec4 {
1825 IVec4::new(self.w, self.y, self.y, self.w)
1826 }
1827
1828 #[inline]
1829 #[must_use]
1830 fn wyzx(self) -> IVec4 {
1831 IVec4::new(self.w, self.y, self.z, self.x)
1832 }
1833
1834 #[inline]
1835 #[must_use]
1836 fn wyzy(self) -> IVec4 {
1837 IVec4::new(self.w, self.y, self.z, self.y)
1838 }
1839
1840 #[inline]
1841 #[must_use]
1842 fn wyzz(self) -> IVec4 {
1843 IVec4::new(self.w, self.y, self.z, self.z)
1844 }
1845
1846 #[inline]
1847 #[must_use]
1848 fn wyzw(self) -> IVec4 {
1849 IVec4::new(self.w, self.y, self.z, self.w)
1850 }
1851
1852 #[inline]
1853 #[must_use]
1854 fn wywx(self) -> IVec4 {
1855 IVec4::new(self.w, self.y, self.w, self.x)
1856 }
1857
1858 #[inline]
1859 #[must_use]
1860 fn wywy(self) -> IVec4 {
1861 IVec4::new(self.w, self.y, self.w, self.y)
1862 }
1863
1864 #[inline]
1865 #[must_use]
1866 fn wywz(self) -> IVec4 {
1867 IVec4::new(self.w, self.y, self.w, self.z)
1868 }
1869
1870 #[inline]
1871 #[must_use]
1872 fn wyww(self) -> IVec4 {
1873 IVec4::new(self.w, self.y, self.w, self.w)
1874 }
1875
1876 #[inline]
1877 #[must_use]
1878 fn wzxx(self) -> IVec4 {
1879 IVec4::new(self.w, self.z, self.x, self.x)
1880 }
1881
1882 #[inline]
1883 #[must_use]
1884 fn wzxy(self) -> IVec4 {
1885 IVec4::new(self.w, self.z, self.x, self.y)
1886 }
1887
1888 #[inline]
1889 #[must_use]
1890 fn wzxz(self) -> IVec4 {
1891 IVec4::new(self.w, self.z, self.x, self.z)
1892 }
1893
1894 #[inline]
1895 #[must_use]
1896 fn wzxw(self) -> IVec4 {
1897 IVec4::new(self.w, self.z, self.x, self.w)
1898 }
1899
1900 #[inline]
1901 #[must_use]
1902 fn wzyx(self) -> IVec4 {
1903 IVec4::new(self.w, self.z, self.y, self.x)
1904 }
1905
1906 #[inline]
1907 #[must_use]
1908 fn wzyy(self) -> IVec4 {
1909 IVec4::new(self.w, self.z, self.y, self.y)
1910 }
1911
1912 #[inline]
1913 #[must_use]
1914 fn wzyz(self) -> IVec4 {
1915 IVec4::new(self.w, self.z, self.y, self.z)
1916 }
1917
1918 #[inline]
1919 #[must_use]
1920 fn wzyw(self) -> IVec4 {
1921 IVec4::new(self.w, self.z, self.y, self.w)
1922 }
1923
1924 #[inline]
1925 #[must_use]
1926 fn wzzx(self) -> IVec4 {
1927 IVec4::new(self.w, self.z, self.z, self.x)
1928 }
1929
1930 #[inline]
1931 #[must_use]
1932 fn wzzy(self) -> IVec4 {
1933 IVec4::new(self.w, self.z, self.z, self.y)
1934 }
1935
1936 #[inline]
1937 #[must_use]
1938 fn wzzz(self) -> IVec4 {
1939 IVec4::new(self.w, self.z, self.z, self.z)
1940 }
1941
1942 #[inline]
1943 #[must_use]
1944 fn wzzw(self) -> IVec4 {
1945 IVec4::new(self.w, self.z, self.z, self.w)
1946 }
1947
1948 #[inline]
1949 #[must_use]
1950 fn wzwx(self) -> IVec4 {
1951 IVec4::new(self.w, self.z, self.w, self.x)
1952 }
1953
1954 #[inline]
1955 #[must_use]
1956 fn wzwy(self) -> IVec4 {
1957 IVec4::new(self.w, self.z, self.w, self.y)
1958 }
1959
1960 #[inline]
1961 #[must_use]
1962 fn wzwz(self) -> IVec4 {
1963 IVec4::new(self.w, self.z, self.w, self.z)
1964 }
1965
1966 #[inline]
1967 #[must_use]
1968 fn wzww(self) -> IVec4 {
1969 IVec4::new(self.w, self.z, self.w, self.w)
1970 }
1971
1972 #[inline]
1973 #[must_use]
1974 fn wwxx(self) -> IVec4 {
1975 IVec4::new(self.w, self.w, self.x, self.x)
1976 }
1977
1978 #[inline]
1979 #[must_use]
1980 fn wwxy(self) -> IVec4 {
1981 IVec4::new(self.w, self.w, self.x, self.y)
1982 }
1983
1984 #[inline]
1985 #[must_use]
1986 fn wwxz(self) -> IVec4 {
1987 IVec4::new(self.w, self.w, self.x, self.z)
1988 }
1989
1990 #[inline]
1991 #[must_use]
1992 fn wwxw(self) -> IVec4 {
1993 IVec4::new(self.w, self.w, self.x, self.w)
1994 }
1995
1996 #[inline]
1997 #[must_use]
1998 fn wwyx(self) -> IVec4 {
1999 IVec4::new(self.w, self.w, self.y, self.x)
2000 }
2001
2002 #[inline]
2003 #[must_use]
2004 fn wwyy(self) -> IVec4 {
2005 IVec4::new(self.w, self.w, self.y, self.y)
2006 }
2007
2008 #[inline]
2009 #[must_use]
2010 fn wwyz(self) -> IVec4 {
2011 IVec4::new(self.w, self.w, self.y, self.z)
2012 }
2013
2014 #[inline]
2015 #[must_use]
2016 fn wwyw(self) -> IVec4 {
2017 IVec4::new(self.w, self.w, self.y, self.w)
2018 }
2019
2020 #[inline]
2021 #[must_use]
2022 fn wwzx(self) -> IVec4 {
2023 IVec4::new(self.w, self.w, self.z, self.x)
2024 }
2025
2026 #[inline]
2027 #[must_use]
2028 fn wwzy(self) -> IVec4 {
2029 IVec4::new(self.w, self.w, self.z, self.y)
2030 }
2031
2032 #[inline]
2033 #[must_use]
2034 fn wwzz(self) -> IVec4 {
2035 IVec4::new(self.w, self.w, self.z, self.z)
2036 }
2037
2038 #[inline]
2039 #[must_use]
2040 fn wwzw(self) -> IVec4 {
2041 IVec4::new(self.w, self.w, self.z, self.w)
2042 }
2043
2044 #[inline]
2045 #[must_use]
2046 fn wwwx(self) -> IVec4 {
2047 IVec4::new(self.w, self.w, self.w, self.x)
2048 }
2049
2050 #[inline]
2051 #[must_use]
2052 fn wwwy(self) -> IVec4 {
2053 IVec4::new(self.w, self.w, self.w, self.y)
2054 }
2055
2056 #[inline]
2057 #[must_use]
2058 fn wwwz(self) -> IVec4 {
2059 IVec4::new(self.w, self.w, self.w, self.z)
2060 }
2061
2062 #[inline]
2063 #[must_use]
2064 fn wwww(self) -> IVec4 {
2065 IVec4::new(self.w, self.w, self.w, self.w)
2066 }
2067}