1 // Generated from swizzle_impl.rs.tera template. Edit the template, not the generated file. 2 3 use crate::{IVec2, IVec3, IVec4, Vec4Swizzles}; 4 5 impl Vec4Swizzles for IVec4 { 6 type Vec2 = IVec2; 7 8 type Vec3 = IVec3; 9 10 #[inline] 11 #[must_use] xx(self) -> IVec212 fn xx(self) -> IVec2 { 13 IVec2 { 14 x: self.x, 15 y: self.x, 16 } 17 } 18 19 #[inline] 20 #[must_use] xy(self) -> IVec221 fn xy(self) -> IVec2 { 22 IVec2 { 23 x: self.x, 24 y: self.y, 25 } 26 } 27 28 #[inline] 29 #[must_use] xz(self) -> IVec230 fn xz(self) -> IVec2 { 31 IVec2 { 32 x: self.x, 33 y: self.z, 34 } 35 } 36 37 #[inline] 38 #[must_use] xw(self) -> IVec239 fn xw(self) -> IVec2 { 40 IVec2 { 41 x: self.x, 42 y: self.w, 43 } 44 } 45 46 #[inline] 47 #[must_use] yx(self) -> IVec248 fn yx(self) -> IVec2 { 49 IVec2 { 50 x: self.y, 51 y: self.x, 52 } 53 } 54 55 #[inline] 56 #[must_use] yy(self) -> IVec257 fn yy(self) -> IVec2 { 58 IVec2 { 59 x: self.y, 60 y: self.y, 61 } 62 } 63 64 #[inline] 65 #[must_use] yz(self) -> IVec266 fn yz(self) -> IVec2 { 67 IVec2 { 68 x: self.y, 69 y: self.z, 70 } 71 } 72 73 #[inline] 74 #[must_use] yw(self) -> IVec275 fn yw(self) -> IVec2 { 76 IVec2 { 77 x: self.y, 78 y: self.w, 79 } 80 } 81 82 #[inline] 83 #[must_use] zx(self) -> IVec284 fn zx(self) -> IVec2 { 85 IVec2 { 86 x: self.z, 87 y: self.x, 88 } 89 } 90 91 #[inline] 92 #[must_use] zy(self) -> IVec293 fn zy(self) -> IVec2 { 94 IVec2 { 95 x: self.z, 96 y: self.y, 97 } 98 } 99 100 #[inline] 101 #[must_use] zz(self) -> IVec2102 fn zz(self) -> IVec2 { 103 IVec2 { 104 x: self.z, 105 y: self.z, 106 } 107 } 108 109 #[inline] 110 #[must_use] zw(self) -> IVec2111 fn zw(self) -> IVec2 { 112 IVec2 { 113 x: self.z, 114 y: self.w, 115 } 116 } 117 118 #[inline] 119 #[must_use] wx(self) -> IVec2120 fn wx(self) -> IVec2 { 121 IVec2 { 122 x: self.w, 123 y: self.x, 124 } 125 } 126 127 #[inline] 128 #[must_use] wy(self) -> IVec2129 fn wy(self) -> IVec2 { 130 IVec2 { 131 x: self.w, 132 y: self.y, 133 } 134 } 135 136 #[inline] 137 #[must_use] wz(self) -> IVec2138 fn wz(self) -> IVec2 { 139 IVec2 { 140 x: self.w, 141 y: self.z, 142 } 143 } 144 145 #[inline] 146 #[must_use] ww(self) -> IVec2147 fn ww(self) -> IVec2 { 148 IVec2 { 149 x: self.w, 150 y: self.w, 151 } 152 } 153 154 #[inline] 155 #[must_use] xxx(self) -> IVec3156 fn xxx(self) -> IVec3 { 157 IVec3 { 158 x: self.x, 159 y: self.x, 160 z: self.x, 161 } 162 } 163 164 #[inline] 165 #[must_use] xxy(self) -> IVec3166 fn xxy(self) -> IVec3 { 167 IVec3 { 168 x: self.x, 169 y: self.x, 170 z: self.y, 171 } 172 } 173 174 #[inline] 175 #[must_use] xxz(self) -> IVec3176 fn xxz(self) -> IVec3 { 177 IVec3 { 178 x: self.x, 179 y: self.x, 180 z: self.z, 181 } 182 } 183 184 #[inline] 185 #[must_use] xxw(self) -> IVec3186 fn xxw(self) -> IVec3 { 187 IVec3 { 188 x: self.x, 189 y: self.x, 190 z: self.w, 191 } 192 } 193 194 #[inline] 195 #[must_use] xyx(self) -> IVec3196 fn xyx(self) -> IVec3 { 197 IVec3 { 198 x: self.x, 199 y: self.y, 200 z: self.x, 201 } 202 } 203 204 #[inline] 205 #[must_use] xyy(self) -> IVec3206 fn xyy(self) -> IVec3 { 207 IVec3 { 208 x: self.x, 209 y: self.y, 210 z: self.y, 211 } 212 } 213 214 #[inline] 215 #[must_use] xyz(self) -> IVec3216 fn xyz(self) -> IVec3 { 217 IVec3 { 218 x: self.x, 219 y: self.y, 220 z: self.z, 221 } 222 } 223 224 #[inline] 225 #[must_use] xyw(self) -> IVec3226 fn xyw(self) -> IVec3 { 227 IVec3 { 228 x: self.x, 229 y: self.y, 230 z: self.w, 231 } 232 } 233 234 #[inline] 235 #[must_use] xzx(self) -> IVec3236 fn xzx(self) -> IVec3 { 237 IVec3 { 238 x: self.x, 239 y: self.z, 240 z: self.x, 241 } 242 } 243 244 #[inline] 245 #[must_use] xzy(self) -> IVec3246 fn xzy(self) -> IVec3 { 247 IVec3 { 248 x: self.x, 249 y: self.z, 250 z: self.y, 251 } 252 } 253 254 #[inline] 255 #[must_use] xzz(self) -> IVec3256 fn xzz(self) -> IVec3 { 257 IVec3 { 258 x: self.x, 259 y: self.z, 260 z: self.z, 261 } 262 } 263 264 #[inline] 265 #[must_use] xzw(self) -> IVec3266 fn xzw(self) -> IVec3 { 267 IVec3 { 268 x: self.x, 269 y: self.z, 270 z: self.w, 271 } 272 } 273 274 #[inline] 275 #[must_use] xwx(self) -> IVec3276 fn xwx(self) -> IVec3 { 277 IVec3 { 278 x: self.x, 279 y: self.w, 280 z: self.x, 281 } 282 } 283 284 #[inline] 285 #[must_use] xwy(self) -> IVec3286 fn xwy(self) -> IVec3 { 287 IVec3 { 288 x: self.x, 289 y: self.w, 290 z: self.y, 291 } 292 } 293 294 #[inline] 295 #[must_use] xwz(self) -> IVec3296 fn xwz(self) -> IVec3 { 297 IVec3 { 298 x: self.x, 299 y: self.w, 300 z: self.z, 301 } 302 } 303 304 #[inline] 305 #[must_use] xww(self) -> IVec3306 fn xww(self) -> IVec3 { 307 IVec3 { 308 x: self.x, 309 y: self.w, 310 z: self.w, 311 } 312 } 313 314 #[inline] 315 #[must_use] yxx(self) -> IVec3316 fn yxx(self) -> IVec3 { 317 IVec3 { 318 x: self.y, 319 y: self.x, 320 z: self.x, 321 } 322 } 323 324 #[inline] 325 #[must_use] yxy(self) -> IVec3326 fn yxy(self) -> IVec3 { 327 IVec3 { 328 x: self.y, 329 y: self.x, 330 z: self.y, 331 } 332 } 333 334 #[inline] 335 #[must_use] yxz(self) -> IVec3336 fn yxz(self) -> IVec3 { 337 IVec3 { 338 x: self.y, 339 y: self.x, 340 z: self.z, 341 } 342 } 343 344 #[inline] 345 #[must_use] yxw(self) -> IVec3346 fn yxw(self) -> IVec3 { 347 IVec3 { 348 x: self.y, 349 y: self.x, 350 z: self.w, 351 } 352 } 353 354 #[inline] 355 #[must_use] yyx(self) -> IVec3356 fn yyx(self) -> IVec3 { 357 IVec3 { 358 x: self.y, 359 y: self.y, 360 z: self.x, 361 } 362 } 363 364 #[inline] 365 #[must_use] yyy(self) -> IVec3366 fn yyy(self) -> IVec3 { 367 IVec3 { 368 x: self.y, 369 y: self.y, 370 z: self.y, 371 } 372 } 373 374 #[inline] 375 #[must_use] yyz(self) -> IVec3376 fn yyz(self) -> IVec3 { 377 IVec3 { 378 x: self.y, 379 y: self.y, 380 z: self.z, 381 } 382 } 383 384 #[inline] 385 #[must_use] yyw(self) -> IVec3386 fn yyw(self) -> IVec3 { 387 IVec3 { 388 x: self.y, 389 y: self.y, 390 z: self.w, 391 } 392 } 393 394 #[inline] 395 #[must_use] yzx(self) -> IVec3396 fn yzx(self) -> IVec3 { 397 IVec3 { 398 x: self.y, 399 y: self.z, 400 z: self.x, 401 } 402 } 403 404 #[inline] 405 #[must_use] yzy(self) -> IVec3406 fn yzy(self) -> IVec3 { 407 IVec3 { 408 x: self.y, 409 y: self.z, 410 z: self.y, 411 } 412 } 413 414 #[inline] 415 #[must_use] yzz(self) -> IVec3416 fn yzz(self) -> IVec3 { 417 IVec3 { 418 x: self.y, 419 y: self.z, 420 z: self.z, 421 } 422 } 423 424 #[inline] 425 #[must_use] yzw(self) -> IVec3426 fn yzw(self) -> IVec3 { 427 IVec3 { 428 x: self.y, 429 y: self.z, 430 z: self.w, 431 } 432 } 433 434 #[inline] 435 #[must_use] ywx(self) -> IVec3436 fn ywx(self) -> IVec3 { 437 IVec3 { 438 x: self.y, 439 y: self.w, 440 z: self.x, 441 } 442 } 443 444 #[inline] 445 #[must_use] ywy(self) -> IVec3446 fn ywy(self) -> IVec3 { 447 IVec3 { 448 x: self.y, 449 y: self.w, 450 z: self.y, 451 } 452 } 453 454 #[inline] 455 #[must_use] ywz(self) -> IVec3456 fn ywz(self) -> IVec3 { 457 IVec3 { 458 x: self.y, 459 y: self.w, 460 z: self.z, 461 } 462 } 463 464 #[inline] 465 #[must_use] yww(self) -> IVec3466 fn yww(self) -> IVec3 { 467 IVec3 { 468 x: self.y, 469 y: self.w, 470 z: self.w, 471 } 472 } 473 474 #[inline] 475 #[must_use] zxx(self) -> IVec3476 fn zxx(self) -> IVec3 { 477 IVec3 { 478 x: self.z, 479 y: self.x, 480 z: self.x, 481 } 482 } 483 484 #[inline] 485 #[must_use] zxy(self) -> IVec3486 fn zxy(self) -> IVec3 { 487 IVec3 { 488 x: self.z, 489 y: self.x, 490 z: self.y, 491 } 492 } 493 494 #[inline] 495 #[must_use] zxz(self) -> IVec3496 fn zxz(self) -> IVec3 { 497 IVec3 { 498 x: self.z, 499 y: self.x, 500 z: self.z, 501 } 502 } 503 504 #[inline] 505 #[must_use] zxw(self) -> IVec3506 fn zxw(self) -> IVec3 { 507 IVec3 { 508 x: self.z, 509 y: self.x, 510 z: self.w, 511 } 512 } 513 514 #[inline] 515 #[must_use] zyx(self) -> IVec3516 fn zyx(self) -> IVec3 { 517 IVec3 { 518 x: self.z, 519 y: self.y, 520 z: self.x, 521 } 522 } 523 524 #[inline] 525 #[must_use] zyy(self) -> IVec3526 fn zyy(self) -> IVec3 { 527 IVec3 { 528 x: self.z, 529 y: self.y, 530 z: self.y, 531 } 532 } 533 534 #[inline] 535 #[must_use] zyz(self) -> IVec3536 fn zyz(self) -> IVec3 { 537 IVec3 { 538 x: self.z, 539 y: self.y, 540 z: self.z, 541 } 542 } 543 544 #[inline] 545 #[must_use] zyw(self) -> IVec3546 fn zyw(self) -> IVec3 { 547 IVec3 { 548 x: self.z, 549 y: self.y, 550 z: self.w, 551 } 552 } 553 554 #[inline] 555 #[must_use] zzx(self) -> IVec3556 fn zzx(self) -> IVec3 { 557 IVec3 { 558 x: self.z, 559 y: self.z, 560 z: self.x, 561 } 562 } 563 564 #[inline] 565 #[must_use] zzy(self) -> IVec3566 fn zzy(self) -> IVec3 { 567 IVec3 { 568 x: self.z, 569 y: self.z, 570 z: self.y, 571 } 572 } 573 574 #[inline] 575 #[must_use] zzz(self) -> IVec3576 fn zzz(self) -> IVec3 { 577 IVec3 { 578 x: self.z, 579 y: self.z, 580 z: self.z, 581 } 582 } 583 584 #[inline] 585 #[must_use] zzw(self) -> IVec3586 fn zzw(self) -> IVec3 { 587 IVec3 { 588 x: self.z, 589 y: self.z, 590 z: self.w, 591 } 592 } 593 594 #[inline] 595 #[must_use] zwx(self) -> IVec3596 fn zwx(self) -> IVec3 { 597 IVec3 { 598 x: self.z, 599 y: self.w, 600 z: self.x, 601 } 602 } 603 604 #[inline] 605 #[must_use] zwy(self) -> IVec3606 fn zwy(self) -> IVec3 { 607 IVec3 { 608 x: self.z, 609 y: self.w, 610 z: self.y, 611 } 612 } 613 614 #[inline] 615 #[must_use] zwz(self) -> IVec3616 fn zwz(self) -> IVec3 { 617 IVec3 { 618 x: self.z, 619 y: self.w, 620 z: self.z, 621 } 622 } 623 624 #[inline] 625 #[must_use] zww(self) -> IVec3626 fn zww(self) -> IVec3 { 627 IVec3 { 628 x: self.z, 629 y: self.w, 630 z: self.w, 631 } 632 } 633 634 #[inline] 635 #[must_use] wxx(self) -> IVec3636 fn wxx(self) -> IVec3 { 637 IVec3 { 638 x: self.w, 639 y: self.x, 640 z: self.x, 641 } 642 } 643 644 #[inline] 645 #[must_use] wxy(self) -> IVec3646 fn wxy(self) -> IVec3 { 647 IVec3 { 648 x: self.w, 649 y: self.x, 650 z: self.y, 651 } 652 } 653 654 #[inline] 655 #[must_use] wxz(self) -> IVec3656 fn wxz(self) -> IVec3 { 657 IVec3 { 658 x: self.w, 659 y: self.x, 660 z: self.z, 661 } 662 } 663 664 #[inline] 665 #[must_use] wxw(self) -> IVec3666 fn wxw(self) -> IVec3 { 667 IVec3 { 668 x: self.w, 669 y: self.x, 670 z: self.w, 671 } 672 } 673 674 #[inline] 675 #[must_use] wyx(self) -> IVec3676 fn wyx(self) -> IVec3 { 677 IVec3 { 678 x: self.w, 679 y: self.y, 680 z: self.x, 681 } 682 } 683 684 #[inline] 685 #[must_use] wyy(self) -> IVec3686 fn wyy(self) -> IVec3 { 687 IVec3 { 688 x: self.w, 689 y: self.y, 690 z: self.y, 691 } 692 } 693 694 #[inline] 695 #[must_use] wyz(self) -> IVec3696 fn wyz(self) -> IVec3 { 697 IVec3 { 698 x: self.w, 699 y: self.y, 700 z: self.z, 701 } 702 } 703 704 #[inline] 705 #[must_use] wyw(self) -> IVec3706 fn wyw(self) -> IVec3 { 707 IVec3 { 708 x: self.w, 709 y: self.y, 710 z: self.w, 711 } 712 } 713 714 #[inline] 715 #[must_use] wzx(self) -> IVec3716 fn wzx(self) -> IVec3 { 717 IVec3 { 718 x: self.w, 719 y: self.z, 720 z: self.x, 721 } 722 } 723 724 #[inline] 725 #[must_use] wzy(self) -> IVec3726 fn wzy(self) -> IVec3 { 727 IVec3 { 728 x: self.w, 729 y: self.z, 730 z: self.y, 731 } 732 } 733 734 #[inline] 735 #[must_use] wzz(self) -> IVec3736 fn wzz(self) -> IVec3 { 737 IVec3 { 738 x: self.w, 739 y: self.z, 740 z: self.z, 741 } 742 } 743 744 #[inline] 745 #[must_use] wzw(self) -> IVec3746 fn wzw(self) -> IVec3 { 747 IVec3 { 748 x: self.w, 749 y: self.z, 750 z: self.w, 751 } 752 } 753 754 #[inline] 755 #[must_use] wwx(self) -> IVec3756 fn wwx(self) -> IVec3 { 757 IVec3 { 758 x: self.w, 759 y: self.w, 760 z: self.x, 761 } 762 } 763 764 #[inline] 765 #[must_use] wwy(self) -> IVec3766 fn wwy(self) -> IVec3 { 767 IVec3 { 768 x: self.w, 769 y: self.w, 770 z: self.y, 771 } 772 } 773 774 #[inline] 775 #[must_use] wwz(self) -> IVec3776 fn wwz(self) -> IVec3 { 777 IVec3 { 778 x: self.w, 779 y: self.w, 780 z: self.z, 781 } 782 } 783 784 #[inline] 785 #[must_use] www(self) -> IVec3786 fn www(self) -> IVec3 { 787 IVec3 { 788 x: self.w, 789 y: self.w, 790 z: self.w, 791 } 792 } 793 794 #[inline] 795 #[must_use] xxxx(self) -> IVec4796 fn xxxx(self) -> IVec4 { 797 IVec4::new(self.x, self.x, self.x, self.x) 798 } 799 800 #[inline] 801 #[must_use] xxxy(self) -> IVec4802 fn xxxy(self) -> IVec4 { 803 IVec4::new(self.x, self.x, self.x, self.y) 804 } 805 806 #[inline] 807 #[must_use] xxxz(self) -> IVec4808 fn xxxz(self) -> IVec4 { 809 IVec4::new(self.x, self.x, self.x, self.z) 810 } 811 812 #[inline] 813 #[must_use] xxxw(self) -> IVec4814 fn xxxw(self) -> IVec4 { 815 IVec4::new(self.x, self.x, self.x, self.w) 816 } 817 818 #[inline] 819 #[must_use] xxyx(self) -> IVec4820 fn xxyx(self) -> IVec4 { 821 IVec4::new(self.x, self.x, self.y, self.x) 822 } 823 824 #[inline] 825 #[must_use] xxyy(self) -> IVec4826 fn xxyy(self) -> IVec4 { 827 IVec4::new(self.x, self.x, self.y, self.y) 828 } 829 830 #[inline] 831 #[must_use] xxyz(self) -> IVec4832 fn xxyz(self) -> IVec4 { 833 IVec4::new(self.x, self.x, self.y, self.z) 834 } 835 836 #[inline] 837 #[must_use] xxyw(self) -> IVec4838 fn xxyw(self) -> IVec4 { 839 IVec4::new(self.x, self.x, self.y, self.w) 840 } 841 842 #[inline] 843 #[must_use] xxzx(self) -> IVec4844 fn xxzx(self) -> IVec4 { 845 IVec4::new(self.x, self.x, self.z, self.x) 846 } 847 848 #[inline] 849 #[must_use] xxzy(self) -> IVec4850 fn xxzy(self) -> IVec4 { 851 IVec4::new(self.x, self.x, self.z, self.y) 852 } 853 854 #[inline] 855 #[must_use] xxzz(self) -> IVec4856 fn xxzz(self) -> IVec4 { 857 IVec4::new(self.x, self.x, self.z, self.z) 858 } 859 860 #[inline] 861 #[must_use] xxzw(self) -> IVec4862 fn xxzw(self) -> IVec4 { 863 IVec4::new(self.x, self.x, self.z, self.w) 864 } 865 866 #[inline] 867 #[must_use] xxwx(self) -> IVec4868 fn xxwx(self) -> IVec4 { 869 IVec4::new(self.x, self.x, self.w, self.x) 870 } 871 872 #[inline] 873 #[must_use] xxwy(self) -> IVec4874 fn xxwy(self) -> IVec4 { 875 IVec4::new(self.x, self.x, self.w, self.y) 876 } 877 878 #[inline] 879 #[must_use] xxwz(self) -> IVec4880 fn xxwz(self) -> IVec4 { 881 IVec4::new(self.x, self.x, self.w, self.z) 882 } 883 884 #[inline] 885 #[must_use] xxww(self) -> IVec4886 fn xxww(self) -> IVec4 { 887 IVec4::new(self.x, self.x, self.w, self.w) 888 } 889 890 #[inline] 891 #[must_use] xyxx(self) -> IVec4892 fn xyxx(self) -> IVec4 { 893 IVec4::new(self.x, self.y, self.x, self.x) 894 } 895 896 #[inline] 897 #[must_use] xyxy(self) -> IVec4898 fn xyxy(self) -> IVec4 { 899 IVec4::new(self.x, self.y, self.x, self.y) 900 } 901 902 #[inline] 903 #[must_use] xyxz(self) -> IVec4904 fn xyxz(self) -> IVec4 { 905 IVec4::new(self.x, self.y, self.x, self.z) 906 } 907 908 #[inline] 909 #[must_use] xyxw(self) -> IVec4910 fn xyxw(self) -> IVec4 { 911 IVec4::new(self.x, self.y, self.x, self.w) 912 } 913 914 #[inline] 915 #[must_use] xyyx(self) -> IVec4916 fn xyyx(self) -> IVec4 { 917 IVec4::new(self.x, self.y, self.y, self.x) 918 } 919 920 #[inline] 921 #[must_use] xyyy(self) -> IVec4922 fn xyyy(self) -> IVec4 { 923 IVec4::new(self.x, self.y, self.y, self.y) 924 } 925 926 #[inline] 927 #[must_use] xyyz(self) -> IVec4928 fn xyyz(self) -> IVec4 { 929 IVec4::new(self.x, self.y, self.y, self.z) 930 } 931 932 #[inline] 933 #[must_use] xyyw(self) -> IVec4934 fn xyyw(self) -> IVec4 { 935 IVec4::new(self.x, self.y, self.y, self.w) 936 } 937 938 #[inline] 939 #[must_use] xyzx(self) -> IVec4940 fn xyzx(self) -> IVec4 { 941 IVec4::new(self.x, self.y, self.z, self.x) 942 } 943 944 #[inline] 945 #[must_use] xyzy(self) -> IVec4946 fn xyzy(self) -> IVec4 { 947 IVec4::new(self.x, self.y, self.z, self.y) 948 } 949 950 #[inline] 951 #[must_use] xyzz(self) -> IVec4952 fn xyzz(self) -> IVec4 { 953 IVec4::new(self.x, self.y, self.z, self.z) 954 } 955 956 #[inline] 957 #[must_use] xyzw(self) -> IVec4958 fn xyzw(self) -> IVec4 { 959 IVec4::new(self.x, self.y, self.z, self.w) 960 } 961 962 #[inline] 963 #[must_use] xywx(self) -> IVec4964 fn xywx(self) -> IVec4 { 965 IVec4::new(self.x, self.y, self.w, self.x) 966 } 967 968 #[inline] 969 #[must_use] xywy(self) -> IVec4970 fn xywy(self) -> IVec4 { 971 IVec4::new(self.x, self.y, self.w, self.y) 972 } 973 974 #[inline] 975 #[must_use] xywz(self) -> IVec4976 fn xywz(self) -> IVec4 { 977 IVec4::new(self.x, self.y, self.w, self.z) 978 } 979 980 #[inline] 981 #[must_use] xyww(self) -> IVec4982 fn xyww(self) -> IVec4 { 983 IVec4::new(self.x, self.y, self.w, self.w) 984 } 985 986 #[inline] 987 #[must_use] xzxx(self) -> IVec4988 fn xzxx(self) -> IVec4 { 989 IVec4::new(self.x, self.z, self.x, self.x) 990 } 991 992 #[inline] 993 #[must_use] xzxy(self) -> IVec4994 fn xzxy(self) -> IVec4 { 995 IVec4::new(self.x, self.z, self.x, self.y) 996 } 997 998 #[inline] 999 #[must_use] xzxz(self) -> IVec41000 fn xzxz(self) -> IVec4 { 1001 IVec4::new(self.x, self.z, self.x, self.z) 1002 } 1003 1004 #[inline] 1005 #[must_use] xzxw(self) -> IVec41006 fn xzxw(self) -> IVec4 { 1007 IVec4::new(self.x, self.z, self.x, self.w) 1008 } 1009 1010 #[inline] 1011 #[must_use] xzyx(self) -> IVec41012 fn xzyx(self) -> IVec4 { 1013 IVec4::new(self.x, self.z, self.y, self.x) 1014 } 1015 1016 #[inline] 1017 #[must_use] xzyy(self) -> IVec41018 fn xzyy(self) -> IVec4 { 1019 IVec4::new(self.x, self.z, self.y, self.y) 1020 } 1021 1022 #[inline] 1023 #[must_use] xzyz(self) -> IVec41024 fn xzyz(self) -> IVec4 { 1025 IVec4::new(self.x, self.z, self.y, self.z) 1026 } 1027 1028 #[inline] 1029 #[must_use] xzyw(self) -> IVec41030 fn xzyw(self) -> IVec4 { 1031 IVec4::new(self.x, self.z, self.y, self.w) 1032 } 1033 1034 #[inline] 1035 #[must_use] xzzx(self) -> IVec41036 fn xzzx(self) -> IVec4 { 1037 IVec4::new(self.x, self.z, self.z, self.x) 1038 } 1039 1040 #[inline] 1041 #[must_use] xzzy(self) -> IVec41042 fn xzzy(self) -> IVec4 { 1043 IVec4::new(self.x, self.z, self.z, self.y) 1044 } 1045 1046 #[inline] 1047 #[must_use] xzzz(self) -> IVec41048 fn xzzz(self) -> IVec4 { 1049 IVec4::new(self.x, self.z, self.z, self.z) 1050 } 1051 1052 #[inline] 1053 #[must_use] xzzw(self) -> IVec41054 fn xzzw(self) -> IVec4 { 1055 IVec4::new(self.x, self.z, self.z, self.w) 1056 } 1057 1058 #[inline] 1059 #[must_use] xzwx(self) -> IVec41060 fn xzwx(self) -> IVec4 { 1061 IVec4::new(self.x, self.z, self.w, self.x) 1062 } 1063 1064 #[inline] 1065 #[must_use] xzwy(self) -> IVec41066 fn xzwy(self) -> IVec4 { 1067 IVec4::new(self.x, self.z, self.w, self.y) 1068 } 1069 1070 #[inline] 1071 #[must_use] xzwz(self) -> IVec41072 fn xzwz(self) -> IVec4 { 1073 IVec4::new(self.x, self.z, self.w, self.z) 1074 } 1075 1076 #[inline] 1077 #[must_use] xzww(self) -> IVec41078 fn xzww(self) -> IVec4 { 1079 IVec4::new(self.x, self.z, self.w, self.w) 1080 } 1081 1082 #[inline] 1083 #[must_use] xwxx(self) -> IVec41084 fn xwxx(self) -> IVec4 { 1085 IVec4::new(self.x, self.w, self.x, self.x) 1086 } 1087 1088 #[inline] 1089 #[must_use] xwxy(self) -> IVec41090 fn xwxy(self) -> IVec4 { 1091 IVec4::new(self.x, self.w, self.x, self.y) 1092 } 1093 1094 #[inline] 1095 #[must_use] xwxz(self) -> IVec41096 fn xwxz(self) -> IVec4 { 1097 IVec4::new(self.x, self.w, self.x, self.z) 1098 } 1099 1100 #[inline] 1101 #[must_use] xwxw(self) -> IVec41102 fn xwxw(self) -> IVec4 { 1103 IVec4::new(self.x, self.w, self.x, self.w) 1104 } 1105 1106 #[inline] 1107 #[must_use] xwyx(self) -> IVec41108 fn xwyx(self) -> IVec4 { 1109 IVec4::new(self.x, self.w, self.y, self.x) 1110 } 1111 1112 #[inline] 1113 #[must_use] xwyy(self) -> IVec41114 fn xwyy(self) -> IVec4 { 1115 IVec4::new(self.x, self.w, self.y, self.y) 1116 } 1117 1118 #[inline] 1119 #[must_use] xwyz(self) -> IVec41120 fn xwyz(self) -> IVec4 { 1121 IVec4::new(self.x, self.w, self.y, self.z) 1122 } 1123 1124 #[inline] 1125 #[must_use] xwyw(self) -> IVec41126 fn xwyw(self) -> IVec4 { 1127 IVec4::new(self.x, self.w, self.y, self.w) 1128 } 1129 1130 #[inline] 1131 #[must_use] xwzx(self) -> IVec41132 fn xwzx(self) -> IVec4 { 1133 IVec4::new(self.x, self.w, self.z, self.x) 1134 } 1135 1136 #[inline] 1137 #[must_use] xwzy(self) -> IVec41138 fn xwzy(self) -> IVec4 { 1139 IVec4::new(self.x, self.w, self.z, self.y) 1140 } 1141 1142 #[inline] 1143 #[must_use] xwzz(self) -> IVec41144 fn xwzz(self) -> IVec4 { 1145 IVec4::new(self.x, self.w, self.z, self.z) 1146 } 1147 1148 #[inline] 1149 #[must_use] xwzw(self) -> IVec41150 fn xwzw(self) -> IVec4 { 1151 IVec4::new(self.x, self.w, self.z, self.w) 1152 } 1153 1154 #[inline] 1155 #[must_use] xwwx(self) -> IVec41156 fn xwwx(self) -> IVec4 { 1157 IVec4::new(self.x, self.w, self.w, self.x) 1158 } 1159 1160 #[inline] 1161 #[must_use] xwwy(self) -> IVec41162 fn xwwy(self) -> IVec4 { 1163 IVec4::new(self.x, self.w, self.w, self.y) 1164 } 1165 1166 #[inline] 1167 #[must_use] xwwz(self) -> IVec41168 fn xwwz(self) -> IVec4 { 1169 IVec4::new(self.x, self.w, self.w, self.z) 1170 } 1171 1172 #[inline] 1173 #[must_use] xwww(self) -> IVec41174 fn xwww(self) -> IVec4 { 1175 IVec4::new(self.x, self.w, self.w, self.w) 1176 } 1177 1178 #[inline] 1179 #[must_use] yxxx(self) -> IVec41180 fn yxxx(self) -> IVec4 { 1181 IVec4::new(self.y, self.x, self.x, self.x) 1182 } 1183 1184 #[inline] 1185 #[must_use] yxxy(self) -> IVec41186 fn yxxy(self) -> IVec4 { 1187 IVec4::new(self.y, self.x, self.x, self.y) 1188 } 1189 1190 #[inline] 1191 #[must_use] yxxz(self) -> IVec41192 fn yxxz(self) -> IVec4 { 1193 IVec4::new(self.y, self.x, self.x, self.z) 1194 } 1195 1196 #[inline] 1197 #[must_use] yxxw(self) -> IVec41198 fn yxxw(self) -> IVec4 { 1199 IVec4::new(self.y, self.x, self.x, self.w) 1200 } 1201 1202 #[inline] 1203 #[must_use] yxyx(self) -> IVec41204 fn yxyx(self) -> IVec4 { 1205 IVec4::new(self.y, self.x, self.y, self.x) 1206 } 1207 1208 #[inline] 1209 #[must_use] yxyy(self) -> IVec41210 fn yxyy(self) -> IVec4 { 1211 IVec4::new(self.y, self.x, self.y, self.y) 1212 } 1213 1214 #[inline] 1215 #[must_use] yxyz(self) -> IVec41216 fn yxyz(self) -> IVec4 { 1217 IVec4::new(self.y, self.x, self.y, self.z) 1218 } 1219 1220 #[inline] 1221 #[must_use] yxyw(self) -> IVec41222 fn yxyw(self) -> IVec4 { 1223 IVec4::new(self.y, self.x, self.y, self.w) 1224 } 1225 1226 #[inline] 1227 #[must_use] yxzx(self) -> IVec41228 fn yxzx(self) -> IVec4 { 1229 IVec4::new(self.y, self.x, self.z, self.x) 1230 } 1231 1232 #[inline] 1233 #[must_use] yxzy(self) -> IVec41234 fn yxzy(self) -> IVec4 { 1235 IVec4::new(self.y, self.x, self.z, self.y) 1236 } 1237 1238 #[inline] 1239 #[must_use] yxzz(self) -> IVec41240 fn yxzz(self) -> IVec4 { 1241 IVec4::new(self.y, self.x, self.z, self.z) 1242 } 1243 1244 #[inline] 1245 #[must_use] yxzw(self) -> IVec41246 fn yxzw(self) -> IVec4 { 1247 IVec4::new(self.y, self.x, self.z, self.w) 1248 } 1249 1250 #[inline] 1251 #[must_use] yxwx(self) -> IVec41252 fn yxwx(self) -> IVec4 { 1253 IVec4::new(self.y, self.x, self.w, self.x) 1254 } 1255 1256 #[inline] 1257 #[must_use] yxwy(self) -> IVec41258 fn yxwy(self) -> IVec4 { 1259 IVec4::new(self.y, self.x, self.w, self.y) 1260 } 1261 1262 #[inline] 1263 #[must_use] yxwz(self) -> IVec41264 fn yxwz(self) -> IVec4 { 1265 IVec4::new(self.y, self.x, self.w, self.z) 1266 } 1267 1268 #[inline] 1269 #[must_use] yxww(self) -> IVec41270 fn yxww(self) -> IVec4 { 1271 IVec4::new(self.y, self.x, self.w, self.w) 1272 } 1273 1274 #[inline] 1275 #[must_use] yyxx(self) -> IVec41276 fn yyxx(self) -> IVec4 { 1277 IVec4::new(self.y, self.y, self.x, self.x) 1278 } 1279 1280 #[inline] 1281 #[must_use] yyxy(self) -> IVec41282 fn yyxy(self) -> IVec4 { 1283 IVec4::new(self.y, self.y, self.x, self.y) 1284 } 1285 1286 #[inline] 1287 #[must_use] yyxz(self) -> IVec41288 fn yyxz(self) -> IVec4 { 1289 IVec4::new(self.y, self.y, self.x, self.z) 1290 } 1291 1292 #[inline] 1293 #[must_use] yyxw(self) -> IVec41294 fn yyxw(self) -> IVec4 { 1295 IVec4::new(self.y, self.y, self.x, self.w) 1296 } 1297 1298 #[inline] 1299 #[must_use] yyyx(self) -> IVec41300 fn yyyx(self) -> IVec4 { 1301 IVec4::new(self.y, self.y, self.y, self.x) 1302 } 1303 1304 #[inline] 1305 #[must_use] yyyy(self) -> IVec41306 fn yyyy(self) -> IVec4 { 1307 IVec4::new(self.y, self.y, self.y, self.y) 1308 } 1309 1310 #[inline] 1311 #[must_use] yyyz(self) -> IVec41312 fn yyyz(self) -> IVec4 { 1313 IVec4::new(self.y, self.y, self.y, self.z) 1314 } 1315 1316 #[inline] 1317 #[must_use] yyyw(self) -> IVec41318 fn yyyw(self) -> IVec4 { 1319 IVec4::new(self.y, self.y, self.y, self.w) 1320 } 1321 1322 #[inline] 1323 #[must_use] yyzx(self) -> IVec41324 fn yyzx(self) -> IVec4 { 1325 IVec4::new(self.y, self.y, self.z, self.x) 1326 } 1327 1328 #[inline] 1329 #[must_use] yyzy(self) -> IVec41330 fn yyzy(self) -> IVec4 { 1331 IVec4::new(self.y, self.y, self.z, self.y) 1332 } 1333 1334 #[inline] 1335 #[must_use] yyzz(self) -> IVec41336 fn yyzz(self) -> IVec4 { 1337 IVec4::new(self.y, self.y, self.z, self.z) 1338 } 1339 1340 #[inline] 1341 #[must_use] yyzw(self) -> IVec41342 fn yyzw(self) -> IVec4 { 1343 IVec4::new(self.y, self.y, self.z, self.w) 1344 } 1345 1346 #[inline] 1347 #[must_use] yywx(self) -> IVec41348 fn yywx(self) -> IVec4 { 1349 IVec4::new(self.y, self.y, self.w, self.x) 1350 } 1351 1352 #[inline] 1353 #[must_use] yywy(self) -> IVec41354 fn yywy(self) -> IVec4 { 1355 IVec4::new(self.y, self.y, self.w, self.y) 1356 } 1357 1358 #[inline] 1359 #[must_use] yywz(self) -> IVec41360 fn yywz(self) -> IVec4 { 1361 IVec4::new(self.y, self.y, self.w, self.z) 1362 } 1363 1364 #[inline] 1365 #[must_use] yyww(self) -> IVec41366 fn yyww(self) -> IVec4 { 1367 IVec4::new(self.y, self.y, self.w, self.w) 1368 } 1369 1370 #[inline] 1371 #[must_use] yzxx(self) -> IVec41372 fn yzxx(self) -> IVec4 { 1373 IVec4::new(self.y, self.z, self.x, self.x) 1374 } 1375 1376 #[inline] 1377 #[must_use] yzxy(self) -> IVec41378 fn yzxy(self) -> IVec4 { 1379 IVec4::new(self.y, self.z, self.x, self.y) 1380 } 1381 1382 #[inline] 1383 #[must_use] yzxz(self) -> IVec41384 fn yzxz(self) -> IVec4 { 1385 IVec4::new(self.y, self.z, self.x, self.z) 1386 } 1387 1388 #[inline] 1389 #[must_use] yzxw(self) -> IVec41390 fn yzxw(self) -> IVec4 { 1391 IVec4::new(self.y, self.z, self.x, self.w) 1392 } 1393 1394 #[inline] 1395 #[must_use] yzyx(self) -> IVec41396 fn yzyx(self) -> IVec4 { 1397 IVec4::new(self.y, self.z, self.y, self.x) 1398 } 1399 1400 #[inline] 1401 #[must_use] yzyy(self) -> IVec41402 fn yzyy(self) -> IVec4 { 1403 IVec4::new(self.y, self.z, self.y, self.y) 1404 } 1405 1406 #[inline] 1407 #[must_use] yzyz(self) -> IVec41408 fn yzyz(self) -> IVec4 { 1409 IVec4::new(self.y, self.z, self.y, self.z) 1410 } 1411 1412 #[inline] 1413 #[must_use] yzyw(self) -> IVec41414 fn yzyw(self) -> IVec4 { 1415 IVec4::new(self.y, self.z, self.y, self.w) 1416 } 1417 1418 #[inline] 1419 #[must_use] yzzx(self) -> IVec41420 fn yzzx(self) -> IVec4 { 1421 IVec4::new(self.y, self.z, self.z, self.x) 1422 } 1423 1424 #[inline] 1425 #[must_use] yzzy(self) -> IVec41426 fn yzzy(self) -> IVec4 { 1427 IVec4::new(self.y, self.z, self.z, self.y) 1428 } 1429 1430 #[inline] 1431 #[must_use] yzzz(self) -> IVec41432 fn yzzz(self) -> IVec4 { 1433 IVec4::new(self.y, self.z, self.z, self.z) 1434 } 1435 1436 #[inline] 1437 #[must_use] yzzw(self) -> IVec41438 fn yzzw(self) -> IVec4 { 1439 IVec4::new(self.y, self.z, self.z, self.w) 1440 } 1441 1442 #[inline] 1443 #[must_use] yzwx(self) -> IVec41444 fn yzwx(self) -> IVec4 { 1445 IVec4::new(self.y, self.z, self.w, self.x) 1446 } 1447 1448 #[inline] 1449 #[must_use] yzwy(self) -> IVec41450 fn yzwy(self) -> IVec4 { 1451 IVec4::new(self.y, self.z, self.w, self.y) 1452 } 1453 1454 #[inline] 1455 #[must_use] yzwz(self) -> IVec41456 fn yzwz(self) -> IVec4 { 1457 IVec4::new(self.y, self.z, self.w, self.z) 1458 } 1459 1460 #[inline] 1461 #[must_use] yzww(self) -> IVec41462 fn yzww(self) -> IVec4 { 1463 IVec4::new(self.y, self.z, self.w, self.w) 1464 } 1465 1466 #[inline] 1467 #[must_use] ywxx(self) -> IVec41468 fn ywxx(self) -> IVec4 { 1469 IVec4::new(self.y, self.w, self.x, self.x) 1470 } 1471 1472 #[inline] 1473 #[must_use] ywxy(self) -> IVec41474 fn ywxy(self) -> IVec4 { 1475 IVec4::new(self.y, self.w, self.x, self.y) 1476 } 1477 1478 #[inline] 1479 #[must_use] ywxz(self) -> IVec41480 fn ywxz(self) -> IVec4 { 1481 IVec4::new(self.y, self.w, self.x, self.z) 1482 } 1483 1484 #[inline] 1485 #[must_use] ywxw(self) -> IVec41486 fn ywxw(self) -> IVec4 { 1487 IVec4::new(self.y, self.w, self.x, self.w) 1488 } 1489 1490 #[inline] 1491 #[must_use] ywyx(self) -> IVec41492 fn ywyx(self) -> IVec4 { 1493 IVec4::new(self.y, self.w, self.y, self.x) 1494 } 1495 1496 #[inline] 1497 #[must_use] ywyy(self) -> IVec41498 fn ywyy(self) -> IVec4 { 1499 IVec4::new(self.y, self.w, self.y, self.y) 1500 } 1501 1502 #[inline] 1503 #[must_use] ywyz(self) -> IVec41504 fn ywyz(self) -> IVec4 { 1505 IVec4::new(self.y, self.w, self.y, self.z) 1506 } 1507 1508 #[inline] 1509 #[must_use] ywyw(self) -> IVec41510 fn ywyw(self) -> IVec4 { 1511 IVec4::new(self.y, self.w, self.y, self.w) 1512 } 1513 1514 #[inline] 1515 #[must_use] ywzx(self) -> IVec41516 fn ywzx(self) -> IVec4 { 1517 IVec4::new(self.y, self.w, self.z, self.x) 1518 } 1519 1520 #[inline] 1521 #[must_use] ywzy(self) -> IVec41522 fn ywzy(self) -> IVec4 { 1523 IVec4::new(self.y, self.w, self.z, self.y) 1524 } 1525 1526 #[inline] 1527 #[must_use] ywzz(self) -> IVec41528 fn ywzz(self) -> IVec4 { 1529 IVec4::new(self.y, self.w, self.z, self.z) 1530 } 1531 1532 #[inline] 1533 #[must_use] ywzw(self) -> IVec41534 fn ywzw(self) -> IVec4 { 1535 IVec4::new(self.y, self.w, self.z, self.w) 1536 } 1537 1538 #[inline] 1539 #[must_use] ywwx(self) -> IVec41540 fn ywwx(self) -> IVec4 { 1541 IVec4::new(self.y, self.w, self.w, self.x) 1542 } 1543 1544 #[inline] 1545 #[must_use] ywwy(self) -> IVec41546 fn ywwy(self) -> IVec4 { 1547 IVec4::new(self.y, self.w, self.w, self.y) 1548 } 1549 1550 #[inline] 1551 #[must_use] ywwz(self) -> IVec41552 fn ywwz(self) -> IVec4 { 1553 IVec4::new(self.y, self.w, self.w, self.z) 1554 } 1555 1556 #[inline] 1557 #[must_use] ywww(self) -> IVec41558 fn ywww(self) -> IVec4 { 1559 IVec4::new(self.y, self.w, self.w, self.w) 1560 } 1561 1562 #[inline] 1563 #[must_use] zxxx(self) -> IVec41564 fn zxxx(self) -> IVec4 { 1565 IVec4::new(self.z, self.x, self.x, self.x) 1566 } 1567 1568 #[inline] 1569 #[must_use] zxxy(self) -> IVec41570 fn zxxy(self) -> IVec4 { 1571 IVec4::new(self.z, self.x, self.x, self.y) 1572 } 1573 1574 #[inline] 1575 #[must_use] zxxz(self) -> IVec41576 fn zxxz(self) -> IVec4 { 1577 IVec4::new(self.z, self.x, self.x, self.z) 1578 } 1579 1580 #[inline] 1581 #[must_use] zxxw(self) -> IVec41582 fn zxxw(self) -> IVec4 { 1583 IVec4::new(self.z, self.x, self.x, self.w) 1584 } 1585 1586 #[inline] 1587 #[must_use] zxyx(self) -> IVec41588 fn zxyx(self) -> IVec4 { 1589 IVec4::new(self.z, self.x, self.y, self.x) 1590 } 1591 1592 #[inline] 1593 #[must_use] zxyy(self) -> IVec41594 fn zxyy(self) -> IVec4 { 1595 IVec4::new(self.z, self.x, self.y, self.y) 1596 } 1597 1598 #[inline] 1599 #[must_use] zxyz(self) -> IVec41600 fn zxyz(self) -> IVec4 { 1601 IVec4::new(self.z, self.x, self.y, self.z) 1602 } 1603 1604 #[inline] 1605 #[must_use] zxyw(self) -> IVec41606 fn zxyw(self) -> IVec4 { 1607 IVec4::new(self.z, self.x, self.y, self.w) 1608 } 1609 1610 #[inline] 1611 #[must_use] zxzx(self) -> IVec41612 fn zxzx(self) -> IVec4 { 1613 IVec4::new(self.z, self.x, self.z, self.x) 1614 } 1615 1616 #[inline] 1617 #[must_use] zxzy(self) -> IVec41618 fn zxzy(self) -> IVec4 { 1619 IVec4::new(self.z, self.x, self.z, self.y) 1620 } 1621 1622 #[inline] 1623 #[must_use] zxzz(self) -> IVec41624 fn zxzz(self) -> IVec4 { 1625 IVec4::new(self.z, self.x, self.z, self.z) 1626 } 1627 1628 #[inline] 1629 #[must_use] zxzw(self) -> IVec41630 fn zxzw(self) -> IVec4 { 1631 IVec4::new(self.z, self.x, self.z, self.w) 1632 } 1633 1634 #[inline] 1635 #[must_use] zxwx(self) -> IVec41636 fn zxwx(self) -> IVec4 { 1637 IVec4::new(self.z, self.x, self.w, self.x) 1638 } 1639 1640 #[inline] 1641 #[must_use] zxwy(self) -> IVec41642 fn zxwy(self) -> IVec4 { 1643 IVec4::new(self.z, self.x, self.w, self.y) 1644 } 1645 1646 #[inline] 1647 #[must_use] zxwz(self) -> IVec41648 fn zxwz(self) -> IVec4 { 1649 IVec4::new(self.z, self.x, self.w, self.z) 1650 } 1651 1652 #[inline] 1653 #[must_use] zxww(self) -> IVec41654 fn zxww(self) -> IVec4 { 1655 IVec4::new(self.z, self.x, self.w, self.w) 1656 } 1657 1658 #[inline] 1659 #[must_use] zyxx(self) -> IVec41660 fn zyxx(self) -> IVec4 { 1661 IVec4::new(self.z, self.y, self.x, self.x) 1662 } 1663 1664 #[inline] 1665 #[must_use] zyxy(self) -> IVec41666 fn zyxy(self) -> IVec4 { 1667 IVec4::new(self.z, self.y, self.x, self.y) 1668 } 1669 1670 #[inline] 1671 #[must_use] zyxz(self) -> IVec41672 fn zyxz(self) -> IVec4 { 1673 IVec4::new(self.z, self.y, self.x, self.z) 1674 } 1675 1676 #[inline] 1677 #[must_use] zyxw(self) -> IVec41678 fn zyxw(self) -> IVec4 { 1679 IVec4::new(self.z, self.y, self.x, self.w) 1680 } 1681 1682 #[inline] 1683 #[must_use] zyyx(self) -> IVec41684 fn zyyx(self) -> IVec4 { 1685 IVec4::new(self.z, self.y, self.y, self.x) 1686 } 1687 1688 #[inline] 1689 #[must_use] zyyy(self) -> IVec41690 fn zyyy(self) -> IVec4 { 1691 IVec4::new(self.z, self.y, self.y, self.y) 1692 } 1693 1694 #[inline] 1695 #[must_use] zyyz(self) -> IVec41696 fn zyyz(self) -> IVec4 { 1697 IVec4::new(self.z, self.y, self.y, self.z) 1698 } 1699 1700 #[inline] 1701 #[must_use] zyyw(self) -> IVec41702 fn zyyw(self) -> IVec4 { 1703 IVec4::new(self.z, self.y, self.y, self.w) 1704 } 1705 1706 #[inline] 1707 #[must_use] zyzx(self) -> IVec41708 fn zyzx(self) -> IVec4 { 1709 IVec4::new(self.z, self.y, self.z, self.x) 1710 } 1711 1712 #[inline] 1713 #[must_use] zyzy(self) -> IVec41714 fn zyzy(self) -> IVec4 { 1715 IVec4::new(self.z, self.y, self.z, self.y) 1716 } 1717 1718 #[inline] 1719 #[must_use] zyzz(self) -> IVec41720 fn zyzz(self) -> IVec4 { 1721 IVec4::new(self.z, self.y, self.z, self.z) 1722 } 1723 1724 #[inline] 1725 #[must_use] zyzw(self) -> IVec41726 fn zyzw(self) -> IVec4 { 1727 IVec4::new(self.z, self.y, self.z, self.w) 1728 } 1729 1730 #[inline] 1731 #[must_use] zywx(self) -> IVec41732 fn zywx(self) -> IVec4 { 1733 IVec4::new(self.z, self.y, self.w, self.x) 1734 } 1735 1736 #[inline] 1737 #[must_use] zywy(self) -> IVec41738 fn zywy(self) -> IVec4 { 1739 IVec4::new(self.z, self.y, self.w, self.y) 1740 } 1741 1742 #[inline] 1743 #[must_use] zywz(self) -> IVec41744 fn zywz(self) -> IVec4 { 1745 IVec4::new(self.z, self.y, self.w, self.z) 1746 } 1747 1748 #[inline] 1749 #[must_use] zyww(self) -> IVec41750 fn zyww(self) -> IVec4 { 1751 IVec4::new(self.z, self.y, self.w, self.w) 1752 } 1753 1754 #[inline] 1755 #[must_use] zzxx(self) -> IVec41756 fn zzxx(self) -> IVec4 { 1757 IVec4::new(self.z, self.z, self.x, self.x) 1758 } 1759 1760 #[inline] 1761 #[must_use] zzxy(self) -> IVec41762 fn zzxy(self) -> IVec4 { 1763 IVec4::new(self.z, self.z, self.x, self.y) 1764 } 1765 1766 #[inline] 1767 #[must_use] zzxz(self) -> IVec41768 fn zzxz(self) -> IVec4 { 1769 IVec4::new(self.z, self.z, self.x, self.z) 1770 } 1771 1772 #[inline] 1773 #[must_use] zzxw(self) -> IVec41774 fn zzxw(self) -> IVec4 { 1775 IVec4::new(self.z, self.z, self.x, self.w) 1776 } 1777 1778 #[inline] 1779 #[must_use] zzyx(self) -> IVec41780 fn zzyx(self) -> IVec4 { 1781 IVec4::new(self.z, self.z, self.y, self.x) 1782 } 1783 1784 #[inline] 1785 #[must_use] zzyy(self) -> IVec41786 fn zzyy(self) -> IVec4 { 1787 IVec4::new(self.z, self.z, self.y, self.y) 1788 } 1789 1790 #[inline] 1791 #[must_use] zzyz(self) -> IVec41792 fn zzyz(self) -> IVec4 { 1793 IVec4::new(self.z, self.z, self.y, self.z) 1794 } 1795 1796 #[inline] 1797 #[must_use] zzyw(self) -> IVec41798 fn zzyw(self) -> IVec4 { 1799 IVec4::new(self.z, self.z, self.y, self.w) 1800 } 1801 1802 #[inline] 1803 #[must_use] zzzx(self) -> IVec41804 fn zzzx(self) -> IVec4 { 1805 IVec4::new(self.z, self.z, self.z, self.x) 1806 } 1807 1808 #[inline] 1809 #[must_use] zzzy(self) -> IVec41810 fn zzzy(self) -> IVec4 { 1811 IVec4::new(self.z, self.z, self.z, self.y) 1812 } 1813 1814 #[inline] 1815 #[must_use] zzzz(self) -> IVec41816 fn zzzz(self) -> IVec4 { 1817 IVec4::new(self.z, self.z, self.z, self.z) 1818 } 1819 1820 #[inline] 1821 #[must_use] zzzw(self) -> IVec41822 fn zzzw(self) -> IVec4 { 1823 IVec4::new(self.z, self.z, self.z, self.w) 1824 } 1825 1826 #[inline] 1827 #[must_use] zzwx(self) -> IVec41828 fn zzwx(self) -> IVec4 { 1829 IVec4::new(self.z, self.z, self.w, self.x) 1830 } 1831 1832 #[inline] 1833 #[must_use] zzwy(self) -> IVec41834 fn zzwy(self) -> IVec4 { 1835 IVec4::new(self.z, self.z, self.w, self.y) 1836 } 1837 1838 #[inline] 1839 #[must_use] zzwz(self) -> IVec41840 fn zzwz(self) -> IVec4 { 1841 IVec4::new(self.z, self.z, self.w, self.z) 1842 } 1843 1844 #[inline] 1845 #[must_use] zzww(self) -> IVec41846 fn zzww(self) -> IVec4 { 1847 IVec4::new(self.z, self.z, self.w, self.w) 1848 } 1849 1850 #[inline] 1851 #[must_use] zwxx(self) -> IVec41852 fn zwxx(self) -> IVec4 { 1853 IVec4::new(self.z, self.w, self.x, self.x) 1854 } 1855 1856 #[inline] 1857 #[must_use] zwxy(self) -> IVec41858 fn zwxy(self) -> IVec4 { 1859 IVec4::new(self.z, self.w, self.x, self.y) 1860 } 1861 1862 #[inline] 1863 #[must_use] zwxz(self) -> IVec41864 fn zwxz(self) -> IVec4 { 1865 IVec4::new(self.z, self.w, self.x, self.z) 1866 } 1867 1868 #[inline] 1869 #[must_use] zwxw(self) -> IVec41870 fn zwxw(self) -> IVec4 { 1871 IVec4::new(self.z, self.w, self.x, self.w) 1872 } 1873 1874 #[inline] 1875 #[must_use] zwyx(self) -> IVec41876 fn zwyx(self) -> IVec4 { 1877 IVec4::new(self.z, self.w, self.y, self.x) 1878 } 1879 1880 #[inline] 1881 #[must_use] zwyy(self) -> IVec41882 fn zwyy(self) -> IVec4 { 1883 IVec4::new(self.z, self.w, self.y, self.y) 1884 } 1885 1886 #[inline] 1887 #[must_use] zwyz(self) -> IVec41888 fn zwyz(self) -> IVec4 { 1889 IVec4::new(self.z, self.w, self.y, self.z) 1890 } 1891 1892 #[inline] 1893 #[must_use] zwyw(self) -> IVec41894 fn zwyw(self) -> IVec4 { 1895 IVec4::new(self.z, self.w, self.y, self.w) 1896 } 1897 1898 #[inline] 1899 #[must_use] zwzx(self) -> IVec41900 fn zwzx(self) -> IVec4 { 1901 IVec4::new(self.z, self.w, self.z, self.x) 1902 } 1903 1904 #[inline] 1905 #[must_use] zwzy(self) -> IVec41906 fn zwzy(self) -> IVec4 { 1907 IVec4::new(self.z, self.w, self.z, self.y) 1908 } 1909 1910 #[inline] 1911 #[must_use] zwzz(self) -> IVec41912 fn zwzz(self) -> IVec4 { 1913 IVec4::new(self.z, self.w, self.z, self.z) 1914 } 1915 1916 #[inline] 1917 #[must_use] zwzw(self) -> IVec41918 fn zwzw(self) -> IVec4 { 1919 IVec4::new(self.z, self.w, self.z, self.w) 1920 } 1921 1922 #[inline] 1923 #[must_use] zwwx(self) -> IVec41924 fn zwwx(self) -> IVec4 { 1925 IVec4::new(self.z, self.w, self.w, self.x) 1926 } 1927 1928 #[inline] 1929 #[must_use] zwwy(self) -> IVec41930 fn zwwy(self) -> IVec4 { 1931 IVec4::new(self.z, self.w, self.w, self.y) 1932 } 1933 1934 #[inline] 1935 #[must_use] zwwz(self) -> IVec41936 fn zwwz(self) -> IVec4 { 1937 IVec4::new(self.z, self.w, self.w, self.z) 1938 } 1939 1940 #[inline] 1941 #[must_use] zwww(self) -> IVec41942 fn zwww(self) -> IVec4 { 1943 IVec4::new(self.z, self.w, self.w, self.w) 1944 } 1945 1946 #[inline] 1947 #[must_use] wxxx(self) -> IVec41948 fn wxxx(self) -> IVec4 { 1949 IVec4::new(self.w, self.x, self.x, self.x) 1950 } 1951 1952 #[inline] 1953 #[must_use] wxxy(self) -> IVec41954 fn wxxy(self) -> IVec4 { 1955 IVec4::new(self.w, self.x, self.x, self.y) 1956 } 1957 1958 #[inline] 1959 #[must_use] wxxz(self) -> IVec41960 fn wxxz(self) -> IVec4 { 1961 IVec4::new(self.w, self.x, self.x, self.z) 1962 } 1963 1964 #[inline] 1965 #[must_use] wxxw(self) -> IVec41966 fn wxxw(self) -> IVec4 { 1967 IVec4::new(self.w, self.x, self.x, self.w) 1968 } 1969 1970 #[inline] 1971 #[must_use] wxyx(self) -> IVec41972 fn wxyx(self) -> IVec4 { 1973 IVec4::new(self.w, self.x, self.y, self.x) 1974 } 1975 1976 #[inline] 1977 #[must_use] wxyy(self) -> IVec41978 fn wxyy(self) -> IVec4 { 1979 IVec4::new(self.w, self.x, self.y, self.y) 1980 } 1981 1982 #[inline] 1983 #[must_use] wxyz(self) -> IVec41984 fn wxyz(self) -> IVec4 { 1985 IVec4::new(self.w, self.x, self.y, self.z) 1986 } 1987 1988 #[inline] 1989 #[must_use] wxyw(self) -> IVec41990 fn wxyw(self) -> IVec4 { 1991 IVec4::new(self.w, self.x, self.y, self.w) 1992 } 1993 1994 #[inline] 1995 #[must_use] wxzx(self) -> IVec41996 fn wxzx(self) -> IVec4 { 1997 IVec4::new(self.w, self.x, self.z, self.x) 1998 } 1999 2000 #[inline] 2001 #[must_use] wxzy(self) -> IVec42002 fn wxzy(self) -> IVec4 { 2003 IVec4::new(self.w, self.x, self.z, self.y) 2004 } 2005 2006 #[inline] 2007 #[must_use] wxzz(self) -> IVec42008 fn wxzz(self) -> IVec4 { 2009 IVec4::new(self.w, self.x, self.z, self.z) 2010 } 2011 2012 #[inline] 2013 #[must_use] wxzw(self) -> IVec42014 fn wxzw(self) -> IVec4 { 2015 IVec4::new(self.w, self.x, self.z, self.w) 2016 } 2017 2018 #[inline] 2019 #[must_use] wxwx(self) -> IVec42020 fn wxwx(self) -> IVec4 { 2021 IVec4::new(self.w, self.x, self.w, self.x) 2022 } 2023 2024 #[inline] 2025 #[must_use] wxwy(self) -> IVec42026 fn wxwy(self) -> IVec4 { 2027 IVec4::new(self.w, self.x, self.w, self.y) 2028 } 2029 2030 #[inline] 2031 #[must_use] wxwz(self) -> IVec42032 fn wxwz(self) -> IVec4 { 2033 IVec4::new(self.w, self.x, self.w, self.z) 2034 } 2035 2036 #[inline] 2037 #[must_use] wxww(self) -> IVec42038 fn wxww(self) -> IVec4 { 2039 IVec4::new(self.w, self.x, self.w, self.w) 2040 } 2041 2042 #[inline] 2043 #[must_use] wyxx(self) -> IVec42044 fn wyxx(self) -> IVec4 { 2045 IVec4::new(self.w, self.y, self.x, self.x) 2046 } 2047 2048 #[inline] 2049 #[must_use] wyxy(self) -> IVec42050 fn wyxy(self) -> IVec4 { 2051 IVec4::new(self.w, self.y, self.x, self.y) 2052 } 2053 2054 #[inline] 2055 #[must_use] wyxz(self) -> IVec42056 fn wyxz(self) -> IVec4 { 2057 IVec4::new(self.w, self.y, self.x, self.z) 2058 } 2059 2060 #[inline] 2061 #[must_use] wyxw(self) -> IVec42062 fn wyxw(self) -> IVec4 { 2063 IVec4::new(self.w, self.y, self.x, self.w) 2064 } 2065 2066 #[inline] 2067 #[must_use] wyyx(self) -> IVec42068 fn wyyx(self) -> IVec4 { 2069 IVec4::new(self.w, self.y, self.y, self.x) 2070 } 2071 2072 #[inline] 2073 #[must_use] wyyy(self) -> IVec42074 fn wyyy(self) -> IVec4 { 2075 IVec4::new(self.w, self.y, self.y, self.y) 2076 } 2077 2078 #[inline] 2079 #[must_use] wyyz(self) -> IVec42080 fn wyyz(self) -> IVec4 { 2081 IVec4::new(self.w, self.y, self.y, self.z) 2082 } 2083 2084 #[inline] 2085 #[must_use] wyyw(self) -> IVec42086 fn wyyw(self) -> IVec4 { 2087 IVec4::new(self.w, self.y, self.y, self.w) 2088 } 2089 2090 #[inline] 2091 #[must_use] wyzx(self) -> IVec42092 fn wyzx(self) -> IVec4 { 2093 IVec4::new(self.w, self.y, self.z, self.x) 2094 } 2095 2096 #[inline] 2097 #[must_use] wyzy(self) -> IVec42098 fn wyzy(self) -> IVec4 { 2099 IVec4::new(self.w, self.y, self.z, self.y) 2100 } 2101 2102 #[inline] 2103 #[must_use] wyzz(self) -> IVec42104 fn wyzz(self) -> IVec4 { 2105 IVec4::new(self.w, self.y, self.z, self.z) 2106 } 2107 2108 #[inline] 2109 #[must_use] wyzw(self) -> IVec42110 fn wyzw(self) -> IVec4 { 2111 IVec4::new(self.w, self.y, self.z, self.w) 2112 } 2113 2114 #[inline] 2115 #[must_use] wywx(self) -> IVec42116 fn wywx(self) -> IVec4 { 2117 IVec4::new(self.w, self.y, self.w, self.x) 2118 } 2119 2120 #[inline] 2121 #[must_use] wywy(self) -> IVec42122 fn wywy(self) -> IVec4 { 2123 IVec4::new(self.w, self.y, self.w, self.y) 2124 } 2125 2126 #[inline] 2127 #[must_use] wywz(self) -> IVec42128 fn wywz(self) -> IVec4 { 2129 IVec4::new(self.w, self.y, self.w, self.z) 2130 } 2131 2132 #[inline] 2133 #[must_use] wyww(self) -> IVec42134 fn wyww(self) -> IVec4 { 2135 IVec4::new(self.w, self.y, self.w, self.w) 2136 } 2137 2138 #[inline] 2139 #[must_use] wzxx(self) -> IVec42140 fn wzxx(self) -> IVec4 { 2141 IVec4::new(self.w, self.z, self.x, self.x) 2142 } 2143 2144 #[inline] 2145 #[must_use] wzxy(self) -> IVec42146 fn wzxy(self) -> IVec4 { 2147 IVec4::new(self.w, self.z, self.x, self.y) 2148 } 2149 2150 #[inline] 2151 #[must_use] wzxz(self) -> IVec42152 fn wzxz(self) -> IVec4 { 2153 IVec4::new(self.w, self.z, self.x, self.z) 2154 } 2155 2156 #[inline] 2157 #[must_use] wzxw(self) -> IVec42158 fn wzxw(self) -> IVec4 { 2159 IVec4::new(self.w, self.z, self.x, self.w) 2160 } 2161 2162 #[inline] 2163 #[must_use] wzyx(self) -> IVec42164 fn wzyx(self) -> IVec4 { 2165 IVec4::new(self.w, self.z, self.y, self.x) 2166 } 2167 2168 #[inline] 2169 #[must_use] wzyy(self) -> IVec42170 fn wzyy(self) -> IVec4 { 2171 IVec4::new(self.w, self.z, self.y, self.y) 2172 } 2173 2174 #[inline] 2175 #[must_use] wzyz(self) -> IVec42176 fn wzyz(self) -> IVec4 { 2177 IVec4::new(self.w, self.z, self.y, self.z) 2178 } 2179 2180 #[inline] 2181 #[must_use] wzyw(self) -> IVec42182 fn wzyw(self) -> IVec4 { 2183 IVec4::new(self.w, self.z, self.y, self.w) 2184 } 2185 2186 #[inline] 2187 #[must_use] wzzx(self) -> IVec42188 fn wzzx(self) -> IVec4 { 2189 IVec4::new(self.w, self.z, self.z, self.x) 2190 } 2191 2192 #[inline] 2193 #[must_use] wzzy(self) -> IVec42194 fn wzzy(self) -> IVec4 { 2195 IVec4::new(self.w, self.z, self.z, self.y) 2196 } 2197 2198 #[inline] 2199 #[must_use] wzzz(self) -> IVec42200 fn wzzz(self) -> IVec4 { 2201 IVec4::new(self.w, self.z, self.z, self.z) 2202 } 2203 2204 #[inline] 2205 #[must_use] wzzw(self) -> IVec42206 fn wzzw(self) -> IVec4 { 2207 IVec4::new(self.w, self.z, self.z, self.w) 2208 } 2209 2210 #[inline] 2211 #[must_use] wzwx(self) -> IVec42212 fn wzwx(self) -> IVec4 { 2213 IVec4::new(self.w, self.z, self.w, self.x) 2214 } 2215 2216 #[inline] 2217 #[must_use] wzwy(self) -> IVec42218 fn wzwy(self) -> IVec4 { 2219 IVec4::new(self.w, self.z, self.w, self.y) 2220 } 2221 2222 #[inline] 2223 #[must_use] wzwz(self) -> IVec42224 fn wzwz(self) -> IVec4 { 2225 IVec4::new(self.w, self.z, self.w, self.z) 2226 } 2227 2228 #[inline] 2229 #[must_use] wzww(self) -> IVec42230 fn wzww(self) -> IVec4 { 2231 IVec4::new(self.w, self.z, self.w, self.w) 2232 } 2233 2234 #[inline] 2235 #[must_use] wwxx(self) -> IVec42236 fn wwxx(self) -> IVec4 { 2237 IVec4::new(self.w, self.w, self.x, self.x) 2238 } 2239 2240 #[inline] 2241 #[must_use] wwxy(self) -> IVec42242 fn wwxy(self) -> IVec4 { 2243 IVec4::new(self.w, self.w, self.x, self.y) 2244 } 2245 2246 #[inline] 2247 #[must_use] wwxz(self) -> IVec42248 fn wwxz(self) -> IVec4 { 2249 IVec4::new(self.w, self.w, self.x, self.z) 2250 } 2251 2252 #[inline] 2253 #[must_use] wwxw(self) -> IVec42254 fn wwxw(self) -> IVec4 { 2255 IVec4::new(self.w, self.w, self.x, self.w) 2256 } 2257 2258 #[inline] 2259 #[must_use] wwyx(self) -> IVec42260 fn wwyx(self) -> IVec4 { 2261 IVec4::new(self.w, self.w, self.y, self.x) 2262 } 2263 2264 #[inline] 2265 #[must_use] wwyy(self) -> IVec42266 fn wwyy(self) -> IVec4 { 2267 IVec4::new(self.w, self.w, self.y, self.y) 2268 } 2269 2270 #[inline] 2271 #[must_use] wwyz(self) -> IVec42272 fn wwyz(self) -> IVec4 { 2273 IVec4::new(self.w, self.w, self.y, self.z) 2274 } 2275 2276 #[inline] 2277 #[must_use] wwyw(self) -> IVec42278 fn wwyw(self) -> IVec4 { 2279 IVec4::new(self.w, self.w, self.y, self.w) 2280 } 2281 2282 #[inline] 2283 #[must_use] wwzx(self) -> IVec42284 fn wwzx(self) -> IVec4 { 2285 IVec4::new(self.w, self.w, self.z, self.x) 2286 } 2287 2288 #[inline] 2289 #[must_use] wwzy(self) -> IVec42290 fn wwzy(self) -> IVec4 { 2291 IVec4::new(self.w, self.w, self.z, self.y) 2292 } 2293 2294 #[inline] 2295 #[must_use] wwzz(self) -> IVec42296 fn wwzz(self) -> IVec4 { 2297 IVec4::new(self.w, self.w, self.z, self.z) 2298 } 2299 2300 #[inline] 2301 #[must_use] wwzw(self) -> IVec42302 fn wwzw(self) -> IVec4 { 2303 IVec4::new(self.w, self.w, self.z, self.w) 2304 } 2305 2306 #[inline] 2307 #[must_use] wwwx(self) -> IVec42308 fn wwwx(self) -> IVec4 { 2309 IVec4::new(self.w, self.w, self.w, self.x) 2310 } 2311 2312 #[inline] 2313 #[must_use] wwwy(self) -> IVec42314 fn wwwy(self) -> IVec4 { 2315 IVec4::new(self.w, self.w, self.w, self.y) 2316 } 2317 2318 #[inline] 2319 #[must_use] wwwz(self) -> IVec42320 fn wwwz(self) -> IVec4 { 2321 IVec4::new(self.w, self.w, self.w, self.z) 2322 } 2323 2324 #[inline] 2325 #[must_use] wwww(self) -> IVec42326 fn wwww(self) -> IVec4 { 2327 IVec4::new(self.w, self.w, self.w, self.w) 2328 } 2329 } 2330