glam/swizzles/
vec_traits.rs1pub trait Vec2Swizzles: Sized + Copy + Clone {
4 type Vec3;
5
6 type Vec4;
7
8 #[inline]
9 #[must_use]
10 fn xy(self) -> Self {
11 self
12 }
13
14 fn xx(self) -> Self;
15
16 fn yx(self) -> Self;
17
18 fn yy(self) -> Self;
19
20 fn xxx(self) -> Self::Vec3;
21
22 fn xxy(self) -> Self::Vec3;
23
24 fn xyx(self) -> Self::Vec3;
25
26 fn xyy(self) -> Self::Vec3;
27
28 fn yxx(self) -> Self::Vec3;
29
30 fn yxy(self) -> Self::Vec3;
31
32 fn yyx(self) -> Self::Vec3;
33
34 fn yyy(self) -> Self::Vec3;
35
36 fn xxxx(self) -> Self::Vec4;
37
38 fn xxxy(self) -> Self::Vec4;
39
40 fn xxyx(self) -> Self::Vec4;
41
42 fn xxyy(self) -> Self::Vec4;
43
44 fn xyxx(self) -> Self::Vec4;
45
46 fn xyxy(self) -> Self::Vec4;
47
48 fn xyyx(self) -> Self::Vec4;
49
50 fn xyyy(self) -> Self::Vec4;
51
52 fn yxxx(self) -> Self::Vec4;
53
54 fn yxxy(self) -> Self::Vec4;
55
56 fn yxyx(self) -> Self::Vec4;
57
58 fn yxyy(self) -> Self::Vec4;
59
60 fn yyxx(self) -> Self::Vec4;
61
62 fn yyxy(self) -> Self::Vec4;
63
64 fn yyyx(self) -> Self::Vec4;
65
66 fn yyyy(self) -> Self::Vec4;
67}
68
69pub trait Vec3Swizzles: Sized + Copy + Clone {
70 type Vec2;
71
72 type Vec4;
73
74 #[inline]
75 #[must_use]
76 fn xyz(self) -> Self {
77 self
78 }
79
80 fn xx(self) -> Self::Vec2;
81
82 fn xy(self) -> Self::Vec2;
83
84 fn with_xy(self, rhs: Self::Vec2) -> Self;
85
86 fn xz(self) -> Self::Vec2;
87
88 fn with_xz(self, rhs: Self::Vec2) -> Self;
89
90 fn yx(self) -> Self::Vec2;
91
92 fn with_yx(self, rhs: Self::Vec2) -> Self;
93
94 fn yy(self) -> Self::Vec2;
95
96 fn yz(self) -> Self::Vec2;
97
98 fn with_yz(self, rhs: Self::Vec2) -> Self;
99
100 fn zx(self) -> Self::Vec2;
101
102 fn with_zx(self, rhs: Self::Vec2) -> Self;
103
104 fn zy(self) -> Self::Vec2;
105
106 fn with_zy(self, rhs: Self::Vec2) -> Self;
107
108 fn zz(self) -> Self::Vec2;
109
110 fn xxx(self) -> Self;
111
112 fn xxy(self) -> Self;
113
114 fn xxz(self) -> Self;
115
116 fn xyx(self) -> Self;
117
118 fn xyy(self) -> Self;
119
120 fn xzx(self) -> Self;
121
122 fn xzy(self) -> Self;
123
124 fn xzz(self) -> Self;
125
126 fn yxx(self) -> Self;
127
128 fn yxy(self) -> Self;
129
130 fn yxz(self) -> Self;
131
132 fn yyx(self) -> Self;
133
134 fn yyy(self) -> Self;
135
136 fn yyz(self) -> Self;
137
138 fn yzx(self) -> Self;
139
140 fn yzy(self) -> Self;
141
142 fn yzz(self) -> Self;
143
144 fn zxx(self) -> Self;
145
146 fn zxy(self) -> Self;
147
148 fn zxz(self) -> Self;
149
150 fn zyx(self) -> Self;
151
152 fn zyy(self) -> Self;
153
154 fn zyz(self) -> Self;
155
156 fn zzx(self) -> Self;
157
158 fn zzy(self) -> Self;
159
160 fn zzz(self) -> Self;
161
162 fn xxxx(self) -> Self::Vec4;
163
164 fn xxxy(self) -> Self::Vec4;
165
166 fn xxxz(self) -> Self::Vec4;
167
168 fn xxyx(self) -> Self::Vec4;
169
170 fn xxyy(self) -> Self::Vec4;
171
172 fn xxyz(self) -> Self::Vec4;
173
174 fn xxzx(self) -> Self::Vec4;
175
176 fn xxzy(self) -> Self::Vec4;
177
178 fn xxzz(self) -> Self::Vec4;
179
180 fn xyxx(self) -> Self::Vec4;
181
182 fn xyxy(self) -> Self::Vec4;
183
184 fn xyxz(self) -> Self::Vec4;
185
186 fn xyyx(self) -> Self::Vec4;
187
188 fn xyyy(self) -> Self::Vec4;
189
190 fn xyyz(self) -> Self::Vec4;
191
192 fn xyzx(self) -> Self::Vec4;
193
194 fn xyzy(self) -> Self::Vec4;
195
196 fn xyzz(self) -> Self::Vec4;
197
198 fn xzxx(self) -> Self::Vec4;
199
200 fn xzxy(self) -> Self::Vec4;
201
202 fn xzxz(self) -> Self::Vec4;
203
204 fn xzyx(self) -> Self::Vec4;
205
206 fn xzyy(self) -> Self::Vec4;
207
208 fn xzyz(self) -> Self::Vec4;
209
210 fn xzzx(self) -> Self::Vec4;
211
212 fn xzzy(self) -> Self::Vec4;
213
214 fn xzzz(self) -> Self::Vec4;
215
216 fn yxxx(self) -> Self::Vec4;
217
218 fn yxxy(self) -> Self::Vec4;
219
220 fn yxxz(self) -> Self::Vec4;
221
222 fn yxyx(self) -> Self::Vec4;
223
224 fn yxyy(self) -> Self::Vec4;
225
226 fn yxyz(self) -> Self::Vec4;
227
228 fn yxzx(self) -> Self::Vec4;
229
230 fn yxzy(self) -> Self::Vec4;
231
232 fn yxzz(self) -> Self::Vec4;
233
234 fn yyxx(self) -> Self::Vec4;
235
236 fn yyxy(self) -> Self::Vec4;
237
238 fn yyxz(self) -> Self::Vec4;
239
240 fn yyyx(self) -> Self::Vec4;
241
242 fn yyyy(self) -> Self::Vec4;
243
244 fn yyyz(self) -> Self::Vec4;
245
246 fn yyzx(self) -> Self::Vec4;
247
248 fn yyzy(self) -> Self::Vec4;
249
250 fn yyzz(self) -> Self::Vec4;
251
252 fn yzxx(self) -> Self::Vec4;
253
254 fn yzxy(self) -> Self::Vec4;
255
256 fn yzxz(self) -> Self::Vec4;
257
258 fn yzyx(self) -> Self::Vec4;
259
260 fn yzyy(self) -> Self::Vec4;
261
262 fn yzyz(self) -> Self::Vec4;
263
264 fn yzzx(self) -> Self::Vec4;
265
266 fn yzzy(self) -> Self::Vec4;
267
268 fn yzzz(self) -> Self::Vec4;
269
270 fn zxxx(self) -> Self::Vec4;
271
272 fn zxxy(self) -> Self::Vec4;
273
274 fn zxxz(self) -> Self::Vec4;
275
276 fn zxyx(self) -> Self::Vec4;
277
278 fn zxyy(self) -> Self::Vec4;
279
280 fn zxyz(self) -> Self::Vec4;
281
282 fn zxzx(self) -> Self::Vec4;
283
284 fn zxzy(self) -> Self::Vec4;
285
286 fn zxzz(self) -> Self::Vec4;
287
288 fn zyxx(self) -> Self::Vec4;
289
290 fn zyxy(self) -> Self::Vec4;
291
292 fn zyxz(self) -> Self::Vec4;
293
294 fn zyyx(self) -> Self::Vec4;
295
296 fn zyyy(self) -> Self::Vec4;
297
298 fn zyyz(self) -> Self::Vec4;
299
300 fn zyzx(self) -> Self::Vec4;
301
302 fn zyzy(self) -> Self::Vec4;
303
304 fn zyzz(self) -> Self::Vec4;
305
306 fn zzxx(self) -> Self::Vec4;
307
308 fn zzxy(self) -> Self::Vec4;
309
310 fn zzxz(self) -> Self::Vec4;
311
312 fn zzyx(self) -> Self::Vec4;
313
314 fn zzyy(self) -> Self::Vec4;
315
316 fn zzyz(self) -> Self::Vec4;
317
318 fn zzzx(self) -> Self::Vec4;
319
320 fn zzzy(self) -> Self::Vec4;
321
322 fn zzzz(self) -> Self::Vec4;
323}
324
325pub trait Vec4Swizzles: Sized + Copy + Clone {
326 type Vec2;
327
328 type Vec3;
329
330 #[inline]
331 #[must_use]
332 fn xyzw(self) -> Self {
333 self
334 }
335
336 fn xx(self) -> Self::Vec2;
337
338 fn xy(self) -> Self::Vec2;
339
340 fn with_xy(self, rhs: Self::Vec2) -> Self;
341
342 fn xz(self) -> Self::Vec2;
343
344 fn with_xz(self, rhs: Self::Vec2) -> Self;
345
346 fn xw(self) -> Self::Vec2;
347
348 fn with_xw(self, rhs: Self::Vec2) -> Self;
349
350 fn yx(self) -> Self::Vec2;
351
352 fn with_yx(self, rhs: Self::Vec2) -> Self;
353
354 fn yy(self) -> Self::Vec2;
355
356 fn yz(self) -> Self::Vec2;
357
358 fn with_yz(self, rhs: Self::Vec2) -> Self;
359
360 fn yw(self) -> Self::Vec2;
361
362 fn with_yw(self, rhs: Self::Vec2) -> Self;
363
364 fn zx(self) -> Self::Vec2;
365
366 fn with_zx(self, rhs: Self::Vec2) -> Self;
367
368 fn zy(self) -> Self::Vec2;
369
370 fn with_zy(self, rhs: Self::Vec2) -> Self;
371
372 fn zz(self) -> Self::Vec2;
373
374 fn zw(self) -> Self::Vec2;
375
376 fn with_zw(self, rhs: Self::Vec2) -> Self;
377
378 fn wx(self) -> Self::Vec2;
379
380 fn with_wx(self, rhs: Self::Vec2) -> Self;
381
382 fn wy(self) -> Self::Vec2;
383
384 fn with_wy(self, rhs: Self::Vec2) -> Self;
385
386 fn wz(self) -> Self::Vec2;
387
388 fn with_wz(self, rhs: Self::Vec2) -> Self;
389
390 fn ww(self) -> Self::Vec2;
391
392 fn xxx(self) -> Self::Vec3;
393
394 fn xxy(self) -> Self::Vec3;
395
396 fn xxz(self) -> Self::Vec3;
397
398 fn xxw(self) -> Self::Vec3;
399
400 fn xyx(self) -> Self::Vec3;
401
402 fn xyy(self) -> Self::Vec3;
403
404 fn xyz(self) -> Self::Vec3;
405
406 fn with_xyz(self, rhs: Self::Vec3) -> Self;
407
408 fn xyw(self) -> Self::Vec3;
409
410 fn with_xyw(self, rhs: Self::Vec3) -> Self;
411
412 fn xzx(self) -> Self::Vec3;
413
414 fn xzy(self) -> Self::Vec3;
415
416 fn with_xzy(self, rhs: Self::Vec3) -> Self;
417
418 fn xzz(self) -> Self::Vec3;
419
420 fn xzw(self) -> Self::Vec3;
421
422 fn with_xzw(self, rhs: Self::Vec3) -> Self;
423
424 fn xwx(self) -> Self::Vec3;
425
426 fn xwy(self) -> Self::Vec3;
427
428 fn with_xwy(self, rhs: Self::Vec3) -> Self;
429
430 fn xwz(self) -> Self::Vec3;
431
432 fn with_xwz(self, rhs: Self::Vec3) -> Self;
433
434 fn xww(self) -> Self::Vec3;
435
436 fn yxx(self) -> Self::Vec3;
437
438 fn yxy(self) -> Self::Vec3;
439
440 fn yxz(self) -> Self::Vec3;
441
442 fn with_yxz(self, rhs: Self::Vec3) -> Self;
443
444 fn yxw(self) -> Self::Vec3;
445
446 fn with_yxw(self, rhs: Self::Vec3) -> Self;
447
448 fn yyx(self) -> Self::Vec3;
449
450 fn yyy(self) -> Self::Vec3;
451
452 fn yyz(self) -> Self::Vec3;
453
454 fn yyw(self) -> Self::Vec3;
455
456 fn yzx(self) -> Self::Vec3;
457
458 fn with_yzx(self, rhs: Self::Vec3) -> Self;
459
460 fn yzy(self) -> Self::Vec3;
461
462 fn yzz(self) -> Self::Vec3;
463
464 fn yzw(self) -> Self::Vec3;
465
466 fn with_yzw(self, rhs: Self::Vec3) -> Self;
467
468 fn ywx(self) -> Self::Vec3;
469
470 fn with_ywx(self, rhs: Self::Vec3) -> Self;
471
472 fn ywy(self) -> Self::Vec3;
473
474 fn ywz(self) -> Self::Vec3;
475
476 fn with_ywz(self, rhs: Self::Vec3) -> Self;
477
478 fn yww(self) -> Self::Vec3;
479
480 fn zxx(self) -> Self::Vec3;
481
482 fn zxy(self) -> Self::Vec3;
483
484 fn with_zxy(self, rhs: Self::Vec3) -> Self;
485
486 fn zxz(self) -> Self::Vec3;
487
488 fn zxw(self) -> Self::Vec3;
489
490 fn with_zxw(self, rhs: Self::Vec3) -> Self;
491
492 fn zyx(self) -> Self::Vec3;
493
494 fn with_zyx(self, rhs: Self::Vec3) -> Self;
495
496 fn zyy(self) -> Self::Vec3;
497
498 fn zyz(self) -> Self::Vec3;
499
500 fn zyw(self) -> Self::Vec3;
501
502 fn with_zyw(self, rhs: Self::Vec3) -> Self;
503
504 fn zzx(self) -> Self::Vec3;
505
506 fn zzy(self) -> Self::Vec3;
507
508 fn zzz(self) -> Self::Vec3;
509
510 fn zzw(self) -> Self::Vec3;
511
512 fn zwx(self) -> Self::Vec3;
513
514 fn with_zwx(self, rhs: Self::Vec3) -> Self;
515
516 fn zwy(self) -> Self::Vec3;
517
518 fn with_zwy(self, rhs: Self::Vec3) -> Self;
519
520 fn zwz(self) -> Self::Vec3;
521
522 fn zww(self) -> Self::Vec3;
523
524 fn wxx(self) -> Self::Vec3;
525
526 fn wxy(self) -> Self::Vec3;
527
528 fn with_wxy(self, rhs: Self::Vec3) -> Self;
529
530 fn wxz(self) -> Self::Vec3;
531
532 fn with_wxz(self, rhs: Self::Vec3) -> Self;
533
534 fn wxw(self) -> Self::Vec3;
535
536 fn wyx(self) -> Self::Vec3;
537
538 fn with_wyx(self, rhs: Self::Vec3) -> Self;
539
540 fn wyy(self) -> Self::Vec3;
541
542 fn wyz(self) -> Self::Vec3;
543
544 fn with_wyz(self, rhs: Self::Vec3) -> Self;
545
546 fn wyw(self) -> Self::Vec3;
547
548 fn wzx(self) -> Self::Vec3;
549
550 fn with_wzx(self, rhs: Self::Vec3) -> Self;
551
552 fn wzy(self) -> Self::Vec3;
553
554 fn with_wzy(self, rhs: Self::Vec3) -> Self;
555
556 fn wzz(self) -> Self::Vec3;
557
558 fn wzw(self) -> Self::Vec3;
559
560 fn wwx(self) -> Self::Vec3;
561
562 fn wwy(self) -> Self::Vec3;
563
564 fn wwz(self) -> Self::Vec3;
565
566 fn www(self) -> Self::Vec3;
567
568 fn xxxx(self) -> Self;
569
570 fn xxxy(self) -> Self;
571
572 fn xxxz(self) -> Self;
573
574 fn xxxw(self) -> Self;
575
576 fn xxyx(self) -> Self;
577
578 fn xxyy(self) -> Self;
579
580 fn xxyz(self) -> Self;
581
582 fn xxyw(self) -> Self;
583
584 fn xxzx(self) -> Self;
585
586 fn xxzy(self) -> Self;
587
588 fn xxzz(self) -> Self;
589
590 fn xxzw(self) -> Self;
591
592 fn xxwx(self) -> Self;
593
594 fn xxwy(self) -> Self;
595
596 fn xxwz(self) -> Self;
597
598 fn xxww(self) -> Self;
599
600 fn xyxx(self) -> Self;
601
602 fn xyxy(self) -> Self;
603
604 fn xyxz(self) -> Self;
605
606 fn xyxw(self) -> Self;
607
608 fn xyyx(self) -> Self;
609
610 fn xyyy(self) -> Self;
611
612 fn xyyz(self) -> Self;
613
614 fn xyyw(self) -> Self;
615
616 fn xyzx(self) -> Self;
617
618 fn xyzy(self) -> Self;
619
620 fn xyzz(self) -> Self;
621
622 fn xywx(self) -> Self;
623
624 fn xywy(self) -> Self;
625
626 fn xywz(self) -> Self;
627
628 fn xyww(self) -> Self;
629
630 fn xzxx(self) -> Self;
631
632 fn xzxy(self) -> Self;
633
634 fn xzxz(self) -> Self;
635
636 fn xzxw(self) -> Self;
637
638 fn xzyx(self) -> Self;
639
640 fn xzyy(self) -> Self;
641
642 fn xzyz(self) -> Self;
643
644 fn xzyw(self) -> Self;
645
646 fn xzzx(self) -> Self;
647
648 fn xzzy(self) -> Self;
649
650 fn xzzz(self) -> Self;
651
652 fn xzzw(self) -> Self;
653
654 fn xzwx(self) -> Self;
655
656 fn xzwy(self) -> Self;
657
658 fn xzwz(self) -> Self;
659
660 fn xzww(self) -> Self;
661
662 fn xwxx(self) -> Self;
663
664 fn xwxy(self) -> Self;
665
666 fn xwxz(self) -> Self;
667
668 fn xwxw(self) -> Self;
669
670 fn xwyx(self) -> Self;
671
672 fn xwyy(self) -> Self;
673
674 fn xwyz(self) -> Self;
675
676 fn xwyw(self) -> Self;
677
678 fn xwzx(self) -> Self;
679
680 fn xwzy(self) -> Self;
681
682 fn xwzz(self) -> Self;
683
684 fn xwzw(self) -> Self;
685
686 fn xwwx(self) -> Self;
687
688 fn xwwy(self) -> Self;
689
690 fn xwwz(self) -> Self;
691
692 fn xwww(self) -> Self;
693
694 fn yxxx(self) -> Self;
695
696 fn yxxy(self) -> Self;
697
698 fn yxxz(self) -> Self;
699
700 fn yxxw(self) -> Self;
701
702 fn yxyx(self) -> Self;
703
704 fn yxyy(self) -> Self;
705
706 fn yxyz(self) -> Self;
707
708 fn yxyw(self) -> Self;
709
710 fn yxzx(self) -> Self;
711
712 fn yxzy(self) -> Self;
713
714 fn yxzz(self) -> Self;
715
716 fn yxzw(self) -> Self;
717
718 fn yxwx(self) -> Self;
719
720 fn yxwy(self) -> Self;
721
722 fn yxwz(self) -> Self;
723
724 fn yxww(self) -> Self;
725
726 fn yyxx(self) -> Self;
727
728 fn yyxy(self) -> Self;
729
730 fn yyxz(self) -> Self;
731
732 fn yyxw(self) -> Self;
733
734 fn yyyx(self) -> Self;
735
736 fn yyyy(self) -> Self;
737
738 fn yyyz(self) -> Self;
739
740 fn yyyw(self) -> Self;
741
742 fn yyzx(self) -> Self;
743
744 fn yyzy(self) -> Self;
745
746 fn yyzz(self) -> Self;
747
748 fn yyzw(self) -> Self;
749
750 fn yywx(self) -> Self;
751
752 fn yywy(self) -> Self;
753
754 fn yywz(self) -> Self;
755
756 fn yyww(self) -> Self;
757
758 fn yzxx(self) -> Self;
759
760 fn yzxy(self) -> Self;
761
762 fn yzxz(self) -> Self;
763
764 fn yzxw(self) -> Self;
765
766 fn yzyx(self) -> Self;
767
768 fn yzyy(self) -> Self;
769
770 fn yzyz(self) -> Self;
771
772 fn yzyw(self) -> Self;
773
774 fn yzzx(self) -> Self;
775
776 fn yzzy(self) -> Self;
777
778 fn yzzz(self) -> Self;
779
780 fn yzzw(self) -> Self;
781
782 fn yzwx(self) -> Self;
783
784 fn yzwy(self) -> Self;
785
786 fn yzwz(self) -> Self;
787
788 fn yzww(self) -> Self;
789
790 fn ywxx(self) -> Self;
791
792 fn ywxy(self) -> Self;
793
794 fn ywxz(self) -> Self;
795
796 fn ywxw(self) -> Self;
797
798 fn ywyx(self) -> Self;
799
800 fn ywyy(self) -> Self;
801
802 fn ywyz(self) -> Self;
803
804 fn ywyw(self) -> Self;
805
806 fn ywzx(self) -> Self;
807
808 fn ywzy(self) -> Self;
809
810 fn ywzz(self) -> Self;
811
812 fn ywzw(self) -> Self;
813
814 fn ywwx(self) -> Self;
815
816 fn ywwy(self) -> Self;
817
818 fn ywwz(self) -> Self;
819
820 fn ywww(self) -> Self;
821
822 fn zxxx(self) -> Self;
823
824 fn zxxy(self) -> Self;
825
826 fn zxxz(self) -> Self;
827
828 fn zxxw(self) -> Self;
829
830 fn zxyx(self) -> Self;
831
832 fn zxyy(self) -> Self;
833
834 fn zxyz(self) -> Self;
835
836 fn zxyw(self) -> Self;
837
838 fn zxzx(self) -> Self;
839
840 fn zxzy(self) -> Self;
841
842 fn zxzz(self) -> Self;
843
844 fn zxzw(self) -> Self;
845
846 fn zxwx(self) -> Self;
847
848 fn zxwy(self) -> Self;
849
850 fn zxwz(self) -> Self;
851
852 fn zxww(self) -> Self;
853
854 fn zyxx(self) -> Self;
855
856 fn zyxy(self) -> Self;
857
858 fn zyxz(self) -> Self;
859
860 fn zyxw(self) -> Self;
861
862 fn zyyx(self) -> Self;
863
864 fn zyyy(self) -> Self;
865
866 fn zyyz(self) -> Self;
867
868 fn zyyw(self) -> Self;
869
870 fn zyzx(self) -> Self;
871
872 fn zyzy(self) -> Self;
873
874 fn zyzz(self) -> Self;
875
876 fn zyzw(self) -> Self;
877
878 fn zywx(self) -> Self;
879
880 fn zywy(self) -> Self;
881
882 fn zywz(self) -> Self;
883
884 fn zyww(self) -> Self;
885
886 fn zzxx(self) -> Self;
887
888 fn zzxy(self) -> Self;
889
890 fn zzxz(self) -> Self;
891
892 fn zzxw(self) -> Self;
893
894 fn zzyx(self) -> Self;
895
896 fn zzyy(self) -> Self;
897
898 fn zzyz(self) -> Self;
899
900 fn zzyw(self) -> Self;
901
902 fn zzzx(self) -> Self;
903
904 fn zzzy(self) -> Self;
905
906 fn zzzz(self) -> Self;
907
908 fn zzzw(self) -> Self;
909
910 fn zzwx(self) -> Self;
911
912 fn zzwy(self) -> Self;
913
914 fn zzwz(self) -> Self;
915
916 fn zzww(self) -> Self;
917
918 fn zwxx(self) -> Self;
919
920 fn zwxy(self) -> Self;
921
922 fn zwxz(self) -> Self;
923
924 fn zwxw(self) -> Self;
925
926 fn zwyx(self) -> Self;
927
928 fn zwyy(self) -> Self;
929
930 fn zwyz(self) -> Self;
931
932 fn zwyw(self) -> Self;
933
934 fn zwzx(self) -> Self;
935
936 fn zwzy(self) -> Self;
937
938 fn zwzz(self) -> Self;
939
940 fn zwzw(self) -> Self;
941
942 fn zwwx(self) -> Self;
943
944 fn zwwy(self) -> Self;
945
946 fn zwwz(self) -> Self;
947
948 fn zwww(self) -> Self;
949
950 fn wxxx(self) -> Self;
951
952 fn wxxy(self) -> Self;
953
954 fn wxxz(self) -> Self;
955
956 fn wxxw(self) -> Self;
957
958 fn wxyx(self) -> Self;
959
960 fn wxyy(self) -> Self;
961
962 fn wxyz(self) -> Self;
963
964 fn wxyw(self) -> Self;
965
966 fn wxzx(self) -> Self;
967
968 fn wxzy(self) -> Self;
969
970 fn wxzz(self) -> Self;
971
972 fn wxzw(self) -> Self;
973
974 fn wxwx(self) -> Self;
975
976 fn wxwy(self) -> Self;
977
978 fn wxwz(self) -> Self;
979
980 fn wxww(self) -> Self;
981
982 fn wyxx(self) -> Self;
983
984 fn wyxy(self) -> Self;
985
986 fn wyxz(self) -> Self;
987
988 fn wyxw(self) -> Self;
989
990 fn wyyx(self) -> Self;
991
992 fn wyyy(self) -> Self;
993
994 fn wyyz(self) -> Self;
995
996 fn wyyw(self) -> Self;
997
998 fn wyzx(self) -> Self;
999
1000 fn wyzy(self) -> Self;
1001
1002 fn wyzz(self) -> Self;
1003
1004 fn wyzw(self) -> Self;
1005
1006 fn wywx(self) -> Self;
1007
1008 fn wywy(self) -> Self;
1009
1010 fn wywz(self) -> Self;
1011
1012 fn wyww(self) -> Self;
1013
1014 fn wzxx(self) -> Self;
1015
1016 fn wzxy(self) -> Self;
1017
1018 fn wzxz(self) -> Self;
1019
1020 fn wzxw(self) -> Self;
1021
1022 fn wzyx(self) -> Self;
1023
1024 fn wzyy(self) -> Self;
1025
1026 fn wzyz(self) -> Self;
1027
1028 fn wzyw(self) -> Self;
1029
1030 fn wzzx(self) -> Self;
1031
1032 fn wzzy(self) -> Self;
1033
1034 fn wzzz(self) -> Self;
1035
1036 fn wzzw(self) -> Self;
1037
1038 fn wzwx(self) -> Self;
1039
1040 fn wzwy(self) -> Self;
1041
1042 fn wzwz(self) -> Self;
1043
1044 fn wzww(self) -> Self;
1045
1046 fn wwxx(self) -> Self;
1047
1048 fn wwxy(self) -> Self;
1049
1050 fn wwxz(self) -> Self;
1051
1052 fn wwxw(self) -> Self;
1053
1054 fn wwyx(self) -> Self;
1055
1056 fn wwyy(self) -> Self;
1057
1058 fn wwyz(self) -> Self;
1059
1060 fn wwyw(self) -> Self;
1061
1062 fn wwzx(self) -> Self;
1063
1064 fn wwzy(self) -> Self;
1065
1066 fn wwzz(self) -> Self;
1067
1068 fn wwzw(self) -> Self;
1069
1070 fn wwwx(self) -> Self;
1071
1072 fn wwwy(self) -> Self;
1073
1074 fn wwwz(self) -> Self;
1075
1076 fn wwww(self) -> Self;
1077}