glam/swizzles/
i8vec4_impl.rs

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