1 // Generated by swizzlegen. Do not edit.
2 #[macro_use]
3 mod support;
4 use glam::*;
5 
6 glam_test!(test_u16vec4_swizzles, {
7     let v = u16vec4(1_u16, 2_u16, 3_u16, 4_u16);
8     assert_eq!(v, v.xyzw());
9     assert_eq!(v.xxxx(), u16vec4(1_u16, 1_u16, 1_u16, 1_u16));
10     assert_eq!(v.xxxy(), u16vec4(1_u16, 1_u16, 1_u16, 2_u16));
11     assert_eq!(v.xxxz(), u16vec4(1_u16, 1_u16, 1_u16, 3_u16));
12     assert_eq!(v.xxxw(), u16vec4(1_u16, 1_u16, 1_u16, 4_u16));
13     assert_eq!(v.xxyx(), u16vec4(1_u16, 1_u16, 2_u16, 1_u16));
14     assert_eq!(v.xxyy(), u16vec4(1_u16, 1_u16, 2_u16, 2_u16));
15     assert_eq!(v.xxyz(), u16vec4(1_u16, 1_u16, 2_u16, 3_u16));
16     assert_eq!(v.xxyw(), u16vec4(1_u16, 1_u16, 2_u16, 4_u16));
17     assert_eq!(v.xxzx(), u16vec4(1_u16, 1_u16, 3_u16, 1_u16));
18     assert_eq!(v.xxzy(), u16vec4(1_u16, 1_u16, 3_u16, 2_u16));
19     assert_eq!(v.xxzz(), u16vec4(1_u16, 1_u16, 3_u16, 3_u16));
20     assert_eq!(v.xxzw(), u16vec4(1_u16, 1_u16, 3_u16, 4_u16));
21     assert_eq!(v.xxwx(), u16vec4(1_u16, 1_u16, 4_u16, 1_u16));
22     assert_eq!(v.xxwy(), u16vec4(1_u16, 1_u16, 4_u16, 2_u16));
23     assert_eq!(v.xxwz(), u16vec4(1_u16, 1_u16, 4_u16, 3_u16));
24     assert_eq!(v.xxww(), u16vec4(1_u16, 1_u16, 4_u16, 4_u16));
25     assert_eq!(v.xyxx(), u16vec4(1_u16, 2_u16, 1_u16, 1_u16));
26     assert_eq!(v.xyxy(), u16vec4(1_u16, 2_u16, 1_u16, 2_u16));
27     assert_eq!(v.xyxz(), u16vec4(1_u16, 2_u16, 1_u16, 3_u16));
28     assert_eq!(v.xyxw(), u16vec4(1_u16, 2_u16, 1_u16, 4_u16));
29     assert_eq!(v.xyyx(), u16vec4(1_u16, 2_u16, 2_u16, 1_u16));
30     assert_eq!(v.xyyy(), u16vec4(1_u16, 2_u16, 2_u16, 2_u16));
31     assert_eq!(v.xyyz(), u16vec4(1_u16, 2_u16, 2_u16, 3_u16));
32     assert_eq!(v.xyyw(), u16vec4(1_u16, 2_u16, 2_u16, 4_u16));
33     assert_eq!(v.xyzx(), u16vec4(1_u16, 2_u16, 3_u16, 1_u16));
34     assert_eq!(v.xyzy(), u16vec4(1_u16, 2_u16, 3_u16, 2_u16));
35     assert_eq!(v.xyzz(), u16vec4(1_u16, 2_u16, 3_u16, 3_u16));
36     assert_eq!(v.xywx(), u16vec4(1_u16, 2_u16, 4_u16, 1_u16));
37     assert_eq!(v.xywy(), u16vec4(1_u16, 2_u16, 4_u16, 2_u16));
38     assert_eq!(v.xywz(), u16vec4(1_u16, 2_u16, 4_u16, 3_u16));
39     assert_eq!(v.xyww(), u16vec4(1_u16, 2_u16, 4_u16, 4_u16));
40     assert_eq!(v.xzxx(), u16vec4(1_u16, 3_u16, 1_u16, 1_u16));
41     assert_eq!(v.xzxy(), u16vec4(1_u16, 3_u16, 1_u16, 2_u16));
42     assert_eq!(v.xzxz(), u16vec4(1_u16, 3_u16, 1_u16, 3_u16));
43     assert_eq!(v.xzxw(), u16vec4(1_u16, 3_u16, 1_u16, 4_u16));
44     assert_eq!(v.xzyx(), u16vec4(1_u16, 3_u16, 2_u16, 1_u16));
45     assert_eq!(v.xzyy(), u16vec4(1_u16, 3_u16, 2_u16, 2_u16));
46     assert_eq!(v.xzyz(), u16vec4(1_u16, 3_u16, 2_u16, 3_u16));
47     assert_eq!(v.xzyw(), u16vec4(1_u16, 3_u16, 2_u16, 4_u16));
48     assert_eq!(v.xzzx(), u16vec4(1_u16, 3_u16, 3_u16, 1_u16));
49     assert_eq!(v.xzzy(), u16vec4(1_u16, 3_u16, 3_u16, 2_u16));
50     assert_eq!(v.xzzz(), u16vec4(1_u16, 3_u16, 3_u16, 3_u16));
51     assert_eq!(v.xzzw(), u16vec4(1_u16, 3_u16, 3_u16, 4_u16));
52     assert_eq!(v.xzwx(), u16vec4(1_u16, 3_u16, 4_u16, 1_u16));
53     assert_eq!(v.xzwy(), u16vec4(1_u16, 3_u16, 4_u16, 2_u16));
54     assert_eq!(v.xzwz(), u16vec4(1_u16, 3_u16, 4_u16, 3_u16));
55     assert_eq!(v.xzww(), u16vec4(1_u16, 3_u16, 4_u16, 4_u16));
56     assert_eq!(v.xwxx(), u16vec4(1_u16, 4_u16, 1_u16, 1_u16));
57     assert_eq!(v.xwxy(), u16vec4(1_u16, 4_u16, 1_u16, 2_u16));
58     assert_eq!(v.xwxz(), u16vec4(1_u16, 4_u16, 1_u16, 3_u16));
59     assert_eq!(v.xwxw(), u16vec4(1_u16, 4_u16, 1_u16, 4_u16));
60     assert_eq!(v.xwyx(), u16vec4(1_u16, 4_u16, 2_u16, 1_u16));
61     assert_eq!(v.xwyy(), u16vec4(1_u16, 4_u16, 2_u16, 2_u16));
62     assert_eq!(v.xwyz(), u16vec4(1_u16, 4_u16, 2_u16, 3_u16));
63     assert_eq!(v.xwyw(), u16vec4(1_u16, 4_u16, 2_u16, 4_u16));
64     assert_eq!(v.xwzx(), u16vec4(1_u16, 4_u16, 3_u16, 1_u16));
65     assert_eq!(v.xwzy(), u16vec4(1_u16, 4_u16, 3_u16, 2_u16));
66     assert_eq!(v.xwzz(), u16vec4(1_u16, 4_u16, 3_u16, 3_u16));
67     assert_eq!(v.xwzw(), u16vec4(1_u16, 4_u16, 3_u16, 4_u16));
68     assert_eq!(v.xwwx(), u16vec4(1_u16, 4_u16, 4_u16, 1_u16));
69     assert_eq!(v.xwwy(), u16vec4(1_u16, 4_u16, 4_u16, 2_u16));
70     assert_eq!(v.xwwz(), u16vec4(1_u16, 4_u16, 4_u16, 3_u16));
71     assert_eq!(v.xwww(), u16vec4(1_u16, 4_u16, 4_u16, 4_u16));
72     assert_eq!(v.yxxx(), u16vec4(2_u16, 1_u16, 1_u16, 1_u16));
73     assert_eq!(v.yxxy(), u16vec4(2_u16, 1_u16, 1_u16, 2_u16));
74     assert_eq!(v.yxxz(), u16vec4(2_u16, 1_u16, 1_u16, 3_u16));
75     assert_eq!(v.yxxw(), u16vec4(2_u16, 1_u16, 1_u16, 4_u16));
76     assert_eq!(v.yxyx(), u16vec4(2_u16, 1_u16, 2_u16, 1_u16));
77     assert_eq!(v.yxyy(), u16vec4(2_u16, 1_u16, 2_u16, 2_u16));
78     assert_eq!(v.yxyz(), u16vec4(2_u16, 1_u16, 2_u16, 3_u16));
79     assert_eq!(v.yxyw(), u16vec4(2_u16, 1_u16, 2_u16, 4_u16));
80     assert_eq!(v.yxzx(), u16vec4(2_u16, 1_u16, 3_u16, 1_u16));
81     assert_eq!(v.yxzy(), u16vec4(2_u16, 1_u16, 3_u16, 2_u16));
82     assert_eq!(v.yxzz(), u16vec4(2_u16, 1_u16, 3_u16, 3_u16));
83     assert_eq!(v.yxzw(), u16vec4(2_u16, 1_u16, 3_u16, 4_u16));
84     assert_eq!(v.yxwx(), u16vec4(2_u16, 1_u16, 4_u16, 1_u16));
85     assert_eq!(v.yxwy(), u16vec4(2_u16, 1_u16, 4_u16, 2_u16));
86     assert_eq!(v.yxwz(), u16vec4(2_u16, 1_u16, 4_u16, 3_u16));
87     assert_eq!(v.yxww(), u16vec4(2_u16, 1_u16, 4_u16, 4_u16));
88     assert_eq!(v.yyxx(), u16vec4(2_u16, 2_u16, 1_u16, 1_u16));
89     assert_eq!(v.yyxy(), u16vec4(2_u16, 2_u16, 1_u16, 2_u16));
90     assert_eq!(v.yyxz(), u16vec4(2_u16, 2_u16, 1_u16, 3_u16));
91     assert_eq!(v.yyxw(), u16vec4(2_u16, 2_u16, 1_u16, 4_u16));
92     assert_eq!(v.yyyx(), u16vec4(2_u16, 2_u16, 2_u16, 1_u16));
93     assert_eq!(v.yyyy(), u16vec4(2_u16, 2_u16, 2_u16, 2_u16));
94     assert_eq!(v.yyyz(), u16vec4(2_u16, 2_u16, 2_u16, 3_u16));
95     assert_eq!(v.yyyw(), u16vec4(2_u16, 2_u16, 2_u16, 4_u16));
96     assert_eq!(v.yyzx(), u16vec4(2_u16, 2_u16, 3_u16, 1_u16));
97     assert_eq!(v.yyzy(), u16vec4(2_u16, 2_u16, 3_u16, 2_u16));
98     assert_eq!(v.yyzz(), u16vec4(2_u16, 2_u16, 3_u16, 3_u16));
99     assert_eq!(v.yyzw(), u16vec4(2_u16, 2_u16, 3_u16, 4_u16));
100     assert_eq!(v.yywx(), u16vec4(2_u16, 2_u16, 4_u16, 1_u16));
101     assert_eq!(v.yywy(), u16vec4(2_u16, 2_u16, 4_u16, 2_u16));
102     assert_eq!(v.yywz(), u16vec4(2_u16, 2_u16, 4_u16, 3_u16));
103     assert_eq!(v.yyww(), u16vec4(2_u16, 2_u16, 4_u16, 4_u16));
104     assert_eq!(v.yzxx(), u16vec4(2_u16, 3_u16, 1_u16, 1_u16));
105     assert_eq!(v.yzxy(), u16vec4(2_u16, 3_u16, 1_u16, 2_u16));
106     assert_eq!(v.yzxz(), u16vec4(2_u16, 3_u16, 1_u16, 3_u16));
107     assert_eq!(v.yzxw(), u16vec4(2_u16, 3_u16, 1_u16, 4_u16));
108     assert_eq!(v.yzyx(), u16vec4(2_u16, 3_u16, 2_u16, 1_u16));
109     assert_eq!(v.yzyy(), u16vec4(2_u16, 3_u16, 2_u16, 2_u16));
110     assert_eq!(v.yzyz(), u16vec4(2_u16, 3_u16, 2_u16, 3_u16));
111     assert_eq!(v.yzyw(), u16vec4(2_u16, 3_u16, 2_u16, 4_u16));
112     assert_eq!(v.yzzx(), u16vec4(2_u16, 3_u16, 3_u16, 1_u16));
113     assert_eq!(v.yzzy(), u16vec4(2_u16, 3_u16, 3_u16, 2_u16));
114     assert_eq!(v.yzzz(), u16vec4(2_u16, 3_u16, 3_u16, 3_u16));
115     assert_eq!(v.yzzw(), u16vec4(2_u16, 3_u16, 3_u16, 4_u16));
116     assert_eq!(v.yzwx(), u16vec4(2_u16, 3_u16, 4_u16, 1_u16));
117     assert_eq!(v.yzwy(), u16vec4(2_u16, 3_u16, 4_u16, 2_u16));
118     assert_eq!(v.yzwz(), u16vec4(2_u16, 3_u16, 4_u16, 3_u16));
119     assert_eq!(v.yzww(), u16vec4(2_u16, 3_u16, 4_u16, 4_u16));
120     assert_eq!(v.ywxx(), u16vec4(2_u16, 4_u16, 1_u16, 1_u16));
121     assert_eq!(v.ywxy(), u16vec4(2_u16, 4_u16, 1_u16, 2_u16));
122     assert_eq!(v.ywxz(), u16vec4(2_u16, 4_u16, 1_u16, 3_u16));
123     assert_eq!(v.ywxw(), u16vec4(2_u16, 4_u16, 1_u16, 4_u16));
124     assert_eq!(v.ywyx(), u16vec4(2_u16, 4_u16, 2_u16, 1_u16));
125     assert_eq!(v.ywyy(), u16vec4(2_u16, 4_u16, 2_u16, 2_u16));
126     assert_eq!(v.ywyz(), u16vec4(2_u16, 4_u16, 2_u16, 3_u16));
127     assert_eq!(v.ywyw(), u16vec4(2_u16, 4_u16, 2_u16, 4_u16));
128     assert_eq!(v.ywzx(), u16vec4(2_u16, 4_u16, 3_u16, 1_u16));
129     assert_eq!(v.ywzy(), u16vec4(2_u16, 4_u16, 3_u16, 2_u16));
130     assert_eq!(v.ywzz(), u16vec4(2_u16, 4_u16, 3_u16, 3_u16));
131     assert_eq!(v.ywzw(), u16vec4(2_u16, 4_u16, 3_u16, 4_u16));
132     assert_eq!(v.ywwx(), u16vec4(2_u16, 4_u16, 4_u16, 1_u16));
133     assert_eq!(v.ywwy(), u16vec4(2_u16, 4_u16, 4_u16, 2_u16));
134     assert_eq!(v.ywwz(), u16vec4(2_u16, 4_u16, 4_u16, 3_u16));
135     assert_eq!(v.ywww(), u16vec4(2_u16, 4_u16, 4_u16, 4_u16));
136     assert_eq!(v.zxxx(), u16vec4(3_u16, 1_u16, 1_u16, 1_u16));
137     assert_eq!(v.zxxy(), u16vec4(3_u16, 1_u16, 1_u16, 2_u16));
138     assert_eq!(v.zxxz(), u16vec4(3_u16, 1_u16, 1_u16, 3_u16));
139     assert_eq!(v.zxxw(), u16vec4(3_u16, 1_u16, 1_u16, 4_u16));
140     assert_eq!(v.zxyx(), u16vec4(3_u16, 1_u16, 2_u16, 1_u16));
141     assert_eq!(v.zxyy(), u16vec4(3_u16, 1_u16, 2_u16, 2_u16));
142     assert_eq!(v.zxyz(), u16vec4(3_u16, 1_u16, 2_u16, 3_u16));
143     assert_eq!(v.zxyw(), u16vec4(3_u16, 1_u16, 2_u16, 4_u16));
144     assert_eq!(v.zxzx(), u16vec4(3_u16, 1_u16, 3_u16, 1_u16));
145     assert_eq!(v.zxzy(), u16vec4(3_u16, 1_u16, 3_u16, 2_u16));
146     assert_eq!(v.zxzz(), u16vec4(3_u16, 1_u16, 3_u16, 3_u16));
147     assert_eq!(v.zxzw(), u16vec4(3_u16, 1_u16, 3_u16, 4_u16));
148     assert_eq!(v.zxwx(), u16vec4(3_u16, 1_u16, 4_u16, 1_u16));
149     assert_eq!(v.zxwy(), u16vec4(3_u16, 1_u16, 4_u16, 2_u16));
150     assert_eq!(v.zxwz(), u16vec4(3_u16, 1_u16, 4_u16, 3_u16));
151     assert_eq!(v.zxww(), u16vec4(3_u16, 1_u16, 4_u16, 4_u16));
152     assert_eq!(v.zyxx(), u16vec4(3_u16, 2_u16, 1_u16, 1_u16));
153     assert_eq!(v.zyxy(), u16vec4(3_u16, 2_u16, 1_u16, 2_u16));
154     assert_eq!(v.zyxz(), u16vec4(3_u16, 2_u16, 1_u16, 3_u16));
155     assert_eq!(v.zyxw(), u16vec4(3_u16, 2_u16, 1_u16, 4_u16));
156     assert_eq!(v.zyyx(), u16vec4(3_u16, 2_u16, 2_u16, 1_u16));
157     assert_eq!(v.zyyy(), u16vec4(3_u16, 2_u16, 2_u16, 2_u16));
158     assert_eq!(v.zyyz(), u16vec4(3_u16, 2_u16, 2_u16, 3_u16));
159     assert_eq!(v.zyyw(), u16vec4(3_u16, 2_u16, 2_u16, 4_u16));
160     assert_eq!(v.zyzx(), u16vec4(3_u16, 2_u16, 3_u16, 1_u16));
161     assert_eq!(v.zyzy(), u16vec4(3_u16, 2_u16, 3_u16, 2_u16));
162     assert_eq!(v.zyzz(), u16vec4(3_u16, 2_u16, 3_u16, 3_u16));
163     assert_eq!(v.zyzw(), u16vec4(3_u16, 2_u16, 3_u16, 4_u16));
164     assert_eq!(v.zywx(), u16vec4(3_u16, 2_u16, 4_u16, 1_u16));
165     assert_eq!(v.zywy(), u16vec4(3_u16, 2_u16, 4_u16, 2_u16));
166     assert_eq!(v.zywz(), u16vec4(3_u16, 2_u16, 4_u16, 3_u16));
167     assert_eq!(v.zyww(), u16vec4(3_u16, 2_u16, 4_u16, 4_u16));
168     assert_eq!(v.zzxx(), u16vec4(3_u16, 3_u16, 1_u16, 1_u16));
169     assert_eq!(v.zzxy(), u16vec4(3_u16, 3_u16, 1_u16, 2_u16));
170     assert_eq!(v.zzxz(), u16vec4(3_u16, 3_u16, 1_u16, 3_u16));
171     assert_eq!(v.zzxw(), u16vec4(3_u16, 3_u16, 1_u16, 4_u16));
172     assert_eq!(v.zzyx(), u16vec4(3_u16, 3_u16, 2_u16, 1_u16));
173     assert_eq!(v.zzyy(), u16vec4(3_u16, 3_u16, 2_u16, 2_u16));
174     assert_eq!(v.zzyz(), u16vec4(3_u16, 3_u16, 2_u16, 3_u16));
175     assert_eq!(v.zzyw(), u16vec4(3_u16, 3_u16, 2_u16, 4_u16));
176     assert_eq!(v.zzzx(), u16vec4(3_u16, 3_u16, 3_u16, 1_u16));
177     assert_eq!(v.zzzy(), u16vec4(3_u16, 3_u16, 3_u16, 2_u16));
178     assert_eq!(v.zzzz(), u16vec4(3_u16, 3_u16, 3_u16, 3_u16));
179     assert_eq!(v.zzzw(), u16vec4(3_u16, 3_u16, 3_u16, 4_u16));
180     assert_eq!(v.zzwx(), u16vec4(3_u16, 3_u16, 4_u16, 1_u16));
181     assert_eq!(v.zzwy(), u16vec4(3_u16, 3_u16, 4_u16, 2_u16));
182     assert_eq!(v.zzwz(), u16vec4(3_u16, 3_u16, 4_u16, 3_u16));
183     assert_eq!(v.zzww(), u16vec4(3_u16, 3_u16, 4_u16, 4_u16));
184     assert_eq!(v.zwxx(), u16vec4(3_u16, 4_u16, 1_u16, 1_u16));
185     assert_eq!(v.zwxy(), u16vec4(3_u16, 4_u16, 1_u16, 2_u16));
186     assert_eq!(v.zwxz(), u16vec4(3_u16, 4_u16, 1_u16, 3_u16));
187     assert_eq!(v.zwxw(), u16vec4(3_u16, 4_u16, 1_u16, 4_u16));
188     assert_eq!(v.zwyx(), u16vec4(3_u16, 4_u16, 2_u16, 1_u16));
189     assert_eq!(v.zwyy(), u16vec4(3_u16, 4_u16, 2_u16, 2_u16));
190     assert_eq!(v.zwyz(), u16vec4(3_u16, 4_u16, 2_u16, 3_u16));
191     assert_eq!(v.zwyw(), u16vec4(3_u16, 4_u16, 2_u16, 4_u16));
192     assert_eq!(v.zwzx(), u16vec4(3_u16, 4_u16, 3_u16, 1_u16));
193     assert_eq!(v.zwzy(), u16vec4(3_u16, 4_u16, 3_u16, 2_u16));
194     assert_eq!(v.zwzz(), u16vec4(3_u16, 4_u16, 3_u16, 3_u16));
195     assert_eq!(v.zwzw(), u16vec4(3_u16, 4_u16, 3_u16, 4_u16));
196     assert_eq!(v.zwwx(), u16vec4(3_u16, 4_u16, 4_u16, 1_u16));
197     assert_eq!(v.zwwy(), u16vec4(3_u16, 4_u16, 4_u16, 2_u16));
198     assert_eq!(v.zwwz(), u16vec4(3_u16, 4_u16, 4_u16, 3_u16));
199     assert_eq!(v.zwww(), u16vec4(3_u16, 4_u16, 4_u16, 4_u16));
200     assert_eq!(v.wxxx(), u16vec4(4_u16, 1_u16, 1_u16, 1_u16));
201     assert_eq!(v.wxxy(), u16vec4(4_u16, 1_u16, 1_u16, 2_u16));
202     assert_eq!(v.wxxz(), u16vec4(4_u16, 1_u16, 1_u16, 3_u16));
203     assert_eq!(v.wxxw(), u16vec4(4_u16, 1_u16, 1_u16, 4_u16));
204     assert_eq!(v.wxyx(), u16vec4(4_u16, 1_u16, 2_u16, 1_u16));
205     assert_eq!(v.wxyy(), u16vec4(4_u16, 1_u16, 2_u16, 2_u16));
206     assert_eq!(v.wxyz(), u16vec4(4_u16, 1_u16, 2_u16, 3_u16));
207     assert_eq!(v.wxyw(), u16vec4(4_u16, 1_u16, 2_u16, 4_u16));
208     assert_eq!(v.wxzx(), u16vec4(4_u16, 1_u16, 3_u16, 1_u16));
209     assert_eq!(v.wxzy(), u16vec4(4_u16, 1_u16, 3_u16, 2_u16));
210     assert_eq!(v.wxzz(), u16vec4(4_u16, 1_u16, 3_u16, 3_u16));
211     assert_eq!(v.wxzw(), u16vec4(4_u16, 1_u16, 3_u16, 4_u16));
212     assert_eq!(v.wxwx(), u16vec4(4_u16, 1_u16, 4_u16, 1_u16));
213     assert_eq!(v.wxwy(), u16vec4(4_u16, 1_u16, 4_u16, 2_u16));
214     assert_eq!(v.wxwz(), u16vec4(4_u16, 1_u16, 4_u16, 3_u16));
215     assert_eq!(v.wxww(), u16vec4(4_u16, 1_u16, 4_u16, 4_u16));
216     assert_eq!(v.wyxx(), u16vec4(4_u16, 2_u16, 1_u16, 1_u16));
217     assert_eq!(v.wyxy(), u16vec4(4_u16, 2_u16, 1_u16, 2_u16));
218     assert_eq!(v.wyxz(), u16vec4(4_u16, 2_u16, 1_u16, 3_u16));
219     assert_eq!(v.wyxw(), u16vec4(4_u16, 2_u16, 1_u16, 4_u16));
220     assert_eq!(v.wyyx(), u16vec4(4_u16, 2_u16, 2_u16, 1_u16));
221     assert_eq!(v.wyyy(), u16vec4(4_u16, 2_u16, 2_u16, 2_u16));
222     assert_eq!(v.wyyz(), u16vec4(4_u16, 2_u16, 2_u16, 3_u16));
223     assert_eq!(v.wyyw(), u16vec4(4_u16, 2_u16, 2_u16, 4_u16));
224     assert_eq!(v.wyzx(), u16vec4(4_u16, 2_u16, 3_u16, 1_u16));
225     assert_eq!(v.wyzy(), u16vec4(4_u16, 2_u16, 3_u16, 2_u16));
226     assert_eq!(v.wyzz(), u16vec4(4_u16, 2_u16, 3_u16, 3_u16));
227     assert_eq!(v.wyzw(), u16vec4(4_u16, 2_u16, 3_u16, 4_u16));
228     assert_eq!(v.wywx(), u16vec4(4_u16, 2_u16, 4_u16, 1_u16));
229     assert_eq!(v.wywy(), u16vec4(4_u16, 2_u16, 4_u16, 2_u16));
230     assert_eq!(v.wywz(), u16vec4(4_u16, 2_u16, 4_u16, 3_u16));
231     assert_eq!(v.wyww(), u16vec4(4_u16, 2_u16, 4_u16, 4_u16));
232     assert_eq!(v.wzxx(), u16vec4(4_u16, 3_u16, 1_u16, 1_u16));
233     assert_eq!(v.wzxy(), u16vec4(4_u16, 3_u16, 1_u16, 2_u16));
234     assert_eq!(v.wzxz(), u16vec4(4_u16, 3_u16, 1_u16, 3_u16));
235     assert_eq!(v.wzxw(), u16vec4(4_u16, 3_u16, 1_u16, 4_u16));
236     assert_eq!(v.wzyx(), u16vec4(4_u16, 3_u16, 2_u16, 1_u16));
237     assert_eq!(v.wzyy(), u16vec4(4_u16, 3_u16, 2_u16, 2_u16));
238     assert_eq!(v.wzyz(), u16vec4(4_u16, 3_u16, 2_u16, 3_u16));
239     assert_eq!(v.wzyw(), u16vec4(4_u16, 3_u16, 2_u16, 4_u16));
240     assert_eq!(v.wzzx(), u16vec4(4_u16, 3_u16, 3_u16, 1_u16));
241     assert_eq!(v.wzzy(), u16vec4(4_u16, 3_u16, 3_u16, 2_u16));
242     assert_eq!(v.wzzz(), u16vec4(4_u16, 3_u16, 3_u16, 3_u16));
243     assert_eq!(v.wzzw(), u16vec4(4_u16, 3_u16, 3_u16, 4_u16));
244     assert_eq!(v.wzwx(), u16vec4(4_u16, 3_u16, 4_u16, 1_u16));
245     assert_eq!(v.wzwy(), u16vec4(4_u16, 3_u16, 4_u16, 2_u16));
246     assert_eq!(v.wzwz(), u16vec4(4_u16, 3_u16, 4_u16, 3_u16));
247     assert_eq!(v.wzww(), u16vec4(4_u16, 3_u16, 4_u16, 4_u16));
248     assert_eq!(v.wwxx(), u16vec4(4_u16, 4_u16, 1_u16, 1_u16));
249     assert_eq!(v.wwxy(), u16vec4(4_u16, 4_u16, 1_u16, 2_u16));
250     assert_eq!(v.wwxz(), u16vec4(4_u16, 4_u16, 1_u16, 3_u16));
251     assert_eq!(v.wwxw(), u16vec4(4_u16, 4_u16, 1_u16, 4_u16));
252     assert_eq!(v.wwyx(), u16vec4(4_u16, 4_u16, 2_u16, 1_u16));
253     assert_eq!(v.wwyy(), u16vec4(4_u16, 4_u16, 2_u16, 2_u16));
254     assert_eq!(v.wwyz(), u16vec4(4_u16, 4_u16, 2_u16, 3_u16));
255     assert_eq!(v.wwyw(), u16vec4(4_u16, 4_u16, 2_u16, 4_u16));
256     assert_eq!(v.wwzx(), u16vec4(4_u16, 4_u16, 3_u16, 1_u16));
257     assert_eq!(v.wwzy(), u16vec4(4_u16, 4_u16, 3_u16, 2_u16));
258     assert_eq!(v.wwzz(), u16vec4(4_u16, 4_u16, 3_u16, 3_u16));
259     assert_eq!(v.wwzw(), u16vec4(4_u16, 4_u16, 3_u16, 4_u16));
260     assert_eq!(v.wwwx(), u16vec4(4_u16, 4_u16, 4_u16, 1_u16));
261     assert_eq!(v.wwwy(), u16vec4(4_u16, 4_u16, 4_u16, 2_u16));
262     assert_eq!(v.wwwz(), u16vec4(4_u16, 4_u16, 4_u16, 3_u16));
263     assert_eq!(v.wwww(), u16vec4(4_u16, 4_u16, 4_u16, 4_u16));
264     assert_eq!(v.xxx(), u16vec3(1_u16, 1_u16, 1_u16));
265     assert_eq!(v.xxy(), u16vec3(1_u16, 1_u16, 2_u16));
266     assert_eq!(v.xxz(), u16vec3(1_u16, 1_u16, 3_u16));
267     assert_eq!(v.xxw(), u16vec3(1_u16, 1_u16, 4_u16));
268     assert_eq!(v.xyx(), u16vec3(1_u16, 2_u16, 1_u16));
269     assert_eq!(v.xyy(), u16vec3(1_u16, 2_u16, 2_u16));
270     assert_eq!(v.xyz(), u16vec3(1_u16, 2_u16, 3_u16));
271     assert_eq!(v.xyw(), u16vec3(1_u16, 2_u16, 4_u16));
272     assert_eq!(v.xzx(), u16vec3(1_u16, 3_u16, 1_u16));
273     assert_eq!(v.xzy(), u16vec3(1_u16, 3_u16, 2_u16));
274     assert_eq!(v.xzz(), u16vec3(1_u16, 3_u16, 3_u16));
275     assert_eq!(v.xzw(), u16vec3(1_u16, 3_u16, 4_u16));
276     assert_eq!(v.xwx(), u16vec3(1_u16, 4_u16, 1_u16));
277     assert_eq!(v.xwy(), u16vec3(1_u16, 4_u16, 2_u16));
278     assert_eq!(v.xwz(), u16vec3(1_u16, 4_u16, 3_u16));
279     assert_eq!(v.xww(), u16vec3(1_u16, 4_u16, 4_u16));
280     assert_eq!(v.yxx(), u16vec3(2_u16, 1_u16, 1_u16));
281     assert_eq!(v.yxy(), u16vec3(2_u16, 1_u16, 2_u16));
282     assert_eq!(v.yxz(), u16vec3(2_u16, 1_u16, 3_u16));
283     assert_eq!(v.yxw(), u16vec3(2_u16, 1_u16, 4_u16));
284     assert_eq!(v.yyx(), u16vec3(2_u16, 2_u16, 1_u16));
285     assert_eq!(v.yyy(), u16vec3(2_u16, 2_u16, 2_u16));
286     assert_eq!(v.yyz(), u16vec3(2_u16, 2_u16, 3_u16));
287     assert_eq!(v.yyw(), u16vec3(2_u16, 2_u16, 4_u16));
288     assert_eq!(v.yzx(), u16vec3(2_u16, 3_u16, 1_u16));
289     assert_eq!(v.yzy(), u16vec3(2_u16, 3_u16, 2_u16));
290     assert_eq!(v.yzz(), u16vec3(2_u16, 3_u16, 3_u16));
291     assert_eq!(v.yzw(), u16vec3(2_u16, 3_u16, 4_u16));
292     assert_eq!(v.ywx(), u16vec3(2_u16, 4_u16, 1_u16));
293     assert_eq!(v.ywy(), u16vec3(2_u16, 4_u16, 2_u16));
294     assert_eq!(v.ywz(), u16vec3(2_u16, 4_u16, 3_u16));
295     assert_eq!(v.yww(), u16vec3(2_u16, 4_u16, 4_u16));
296     assert_eq!(v.zxx(), u16vec3(3_u16, 1_u16, 1_u16));
297     assert_eq!(v.zxy(), u16vec3(3_u16, 1_u16, 2_u16));
298     assert_eq!(v.zxz(), u16vec3(3_u16, 1_u16, 3_u16));
299     assert_eq!(v.zxw(), u16vec3(3_u16, 1_u16, 4_u16));
300     assert_eq!(v.zyx(), u16vec3(3_u16, 2_u16, 1_u16));
301     assert_eq!(v.zyy(), u16vec3(3_u16, 2_u16, 2_u16));
302     assert_eq!(v.zyz(), u16vec3(3_u16, 2_u16, 3_u16));
303     assert_eq!(v.zyw(), u16vec3(3_u16, 2_u16, 4_u16));
304     assert_eq!(v.zzx(), u16vec3(3_u16, 3_u16, 1_u16));
305     assert_eq!(v.zzy(), u16vec3(3_u16, 3_u16, 2_u16));
306     assert_eq!(v.zzz(), u16vec3(3_u16, 3_u16, 3_u16));
307     assert_eq!(v.zzw(), u16vec3(3_u16, 3_u16, 4_u16));
308     assert_eq!(v.zwx(), u16vec3(3_u16, 4_u16, 1_u16));
309     assert_eq!(v.zwy(), u16vec3(3_u16, 4_u16, 2_u16));
310     assert_eq!(v.zwz(), u16vec3(3_u16, 4_u16, 3_u16));
311     assert_eq!(v.zww(), u16vec3(3_u16, 4_u16, 4_u16));
312     assert_eq!(v.wxx(), u16vec3(4_u16, 1_u16, 1_u16));
313     assert_eq!(v.wxy(), u16vec3(4_u16, 1_u16, 2_u16));
314     assert_eq!(v.wxz(), u16vec3(4_u16, 1_u16, 3_u16));
315     assert_eq!(v.wxw(), u16vec3(4_u16, 1_u16, 4_u16));
316     assert_eq!(v.wyx(), u16vec3(4_u16, 2_u16, 1_u16));
317     assert_eq!(v.wyy(), u16vec3(4_u16, 2_u16, 2_u16));
318     assert_eq!(v.wyz(), u16vec3(4_u16, 2_u16, 3_u16));
319     assert_eq!(v.wyw(), u16vec3(4_u16, 2_u16, 4_u16));
320     assert_eq!(v.wzx(), u16vec3(4_u16, 3_u16, 1_u16));
321     assert_eq!(v.wzy(), u16vec3(4_u16, 3_u16, 2_u16));
322     assert_eq!(v.wzz(), u16vec3(4_u16, 3_u16, 3_u16));
323     assert_eq!(v.wzw(), u16vec3(4_u16, 3_u16, 4_u16));
324     assert_eq!(v.wwx(), u16vec3(4_u16, 4_u16, 1_u16));
325     assert_eq!(v.wwy(), u16vec3(4_u16, 4_u16, 2_u16));
326     assert_eq!(v.wwz(), u16vec3(4_u16, 4_u16, 3_u16));
327     assert_eq!(v.www(), u16vec3(4_u16, 4_u16, 4_u16));
328     assert_eq!(v.xx(), u16vec2(1_u16, 1_u16));
329     assert_eq!(v.xy(), u16vec2(1_u16, 2_u16));
330     assert_eq!(v.xz(), u16vec2(1_u16, 3_u16));
331     assert_eq!(v.xw(), u16vec2(1_u16, 4_u16));
332     assert_eq!(v.yx(), u16vec2(2_u16, 1_u16));
333     assert_eq!(v.yy(), u16vec2(2_u16, 2_u16));
334     assert_eq!(v.yz(), u16vec2(2_u16, 3_u16));
335     assert_eq!(v.yw(), u16vec2(2_u16, 4_u16));
336     assert_eq!(v.zx(), u16vec2(3_u16, 1_u16));
337     assert_eq!(v.zy(), u16vec2(3_u16, 2_u16));
338     assert_eq!(v.zz(), u16vec2(3_u16, 3_u16));
339     assert_eq!(v.zw(), u16vec2(3_u16, 4_u16));
340     assert_eq!(v.wx(), u16vec2(4_u16, 1_u16));
341     assert_eq!(v.wy(), u16vec2(4_u16, 2_u16));
342     assert_eq!(v.wz(), u16vec2(4_u16, 3_u16));
343     assert_eq!(v.ww(), u16vec2(4_u16, 4_u16));
344 });
345 
346 glam_test!(test_u16vec3_swizzles, {
347     let v = u16vec3(1_u16, 2_u16, 3_u16);
348     assert_eq!(v, v.xyz());
349     assert_eq!(v.xxxx(), u16vec4(1_u16, 1_u16, 1_u16, 1_u16));
350     assert_eq!(v.xxxy(), u16vec4(1_u16, 1_u16, 1_u16, 2_u16));
351     assert_eq!(v.xxxz(), u16vec4(1_u16, 1_u16, 1_u16, 3_u16));
352     assert_eq!(v.xxyx(), u16vec4(1_u16, 1_u16, 2_u16, 1_u16));
353     assert_eq!(v.xxyy(), u16vec4(1_u16, 1_u16, 2_u16, 2_u16));
354     assert_eq!(v.xxyz(), u16vec4(1_u16, 1_u16, 2_u16, 3_u16));
355     assert_eq!(v.xxzx(), u16vec4(1_u16, 1_u16, 3_u16, 1_u16));
356     assert_eq!(v.xxzy(), u16vec4(1_u16, 1_u16, 3_u16, 2_u16));
357     assert_eq!(v.xxzz(), u16vec4(1_u16, 1_u16, 3_u16, 3_u16));
358     assert_eq!(v.xyxx(), u16vec4(1_u16, 2_u16, 1_u16, 1_u16));
359     assert_eq!(v.xyxy(), u16vec4(1_u16, 2_u16, 1_u16, 2_u16));
360     assert_eq!(v.xyxz(), u16vec4(1_u16, 2_u16, 1_u16, 3_u16));
361     assert_eq!(v.xyyx(), u16vec4(1_u16, 2_u16, 2_u16, 1_u16));
362     assert_eq!(v.xyyy(), u16vec4(1_u16, 2_u16, 2_u16, 2_u16));
363     assert_eq!(v.xyyz(), u16vec4(1_u16, 2_u16, 2_u16, 3_u16));
364     assert_eq!(v.xyzx(), u16vec4(1_u16, 2_u16, 3_u16, 1_u16));
365     assert_eq!(v.xyzy(), u16vec4(1_u16, 2_u16, 3_u16, 2_u16));
366     assert_eq!(v.xyzz(), u16vec4(1_u16, 2_u16, 3_u16, 3_u16));
367     assert_eq!(v.xzxx(), u16vec4(1_u16, 3_u16, 1_u16, 1_u16));
368     assert_eq!(v.xzxy(), u16vec4(1_u16, 3_u16, 1_u16, 2_u16));
369     assert_eq!(v.xzxz(), u16vec4(1_u16, 3_u16, 1_u16, 3_u16));
370     assert_eq!(v.xzyx(), u16vec4(1_u16, 3_u16, 2_u16, 1_u16));
371     assert_eq!(v.xzyy(), u16vec4(1_u16, 3_u16, 2_u16, 2_u16));
372     assert_eq!(v.xzyz(), u16vec4(1_u16, 3_u16, 2_u16, 3_u16));
373     assert_eq!(v.xzzx(), u16vec4(1_u16, 3_u16, 3_u16, 1_u16));
374     assert_eq!(v.xzzy(), u16vec4(1_u16, 3_u16, 3_u16, 2_u16));
375     assert_eq!(v.xzzz(), u16vec4(1_u16, 3_u16, 3_u16, 3_u16));
376     assert_eq!(v.yxxx(), u16vec4(2_u16, 1_u16, 1_u16, 1_u16));
377     assert_eq!(v.yxxy(), u16vec4(2_u16, 1_u16, 1_u16, 2_u16));
378     assert_eq!(v.yxxz(), u16vec4(2_u16, 1_u16, 1_u16, 3_u16));
379     assert_eq!(v.yxyx(), u16vec4(2_u16, 1_u16, 2_u16, 1_u16));
380     assert_eq!(v.yxyy(), u16vec4(2_u16, 1_u16, 2_u16, 2_u16));
381     assert_eq!(v.yxyz(), u16vec4(2_u16, 1_u16, 2_u16, 3_u16));
382     assert_eq!(v.yxzx(), u16vec4(2_u16, 1_u16, 3_u16, 1_u16));
383     assert_eq!(v.yxzy(), u16vec4(2_u16, 1_u16, 3_u16, 2_u16));
384     assert_eq!(v.yxzz(), u16vec4(2_u16, 1_u16, 3_u16, 3_u16));
385     assert_eq!(v.yyxx(), u16vec4(2_u16, 2_u16, 1_u16, 1_u16));
386     assert_eq!(v.yyxy(), u16vec4(2_u16, 2_u16, 1_u16, 2_u16));
387     assert_eq!(v.yyxz(), u16vec4(2_u16, 2_u16, 1_u16, 3_u16));
388     assert_eq!(v.yyyx(), u16vec4(2_u16, 2_u16, 2_u16, 1_u16));
389     assert_eq!(v.yyyy(), u16vec4(2_u16, 2_u16, 2_u16, 2_u16));
390     assert_eq!(v.yyyz(), u16vec4(2_u16, 2_u16, 2_u16, 3_u16));
391     assert_eq!(v.yyzx(), u16vec4(2_u16, 2_u16, 3_u16, 1_u16));
392     assert_eq!(v.yyzy(), u16vec4(2_u16, 2_u16, 3_u16, 2_u16));
393     assert_eq!(v.yyzz(), u16vec4(2_u16, 2_u16, 3_u16, 3_u16));
394     assert_eq!(v.yzxx(), u16vec4(2_u16, 3_u16, 1_u16, 1_u16));
395     assert_eq!(v.yzxy(), u16vec4(2_u16, 3_u16, 1_u16, 2_u16));
396     assert_eq!(v.yzxz(), u16vec4(2_u16, 3_u16, 1_u16, 3_u16));
397     assert_eq!(v.yzyx(), u16vec4(2_u16, 3_u16, 2_u16, 1_u16));
398     assert_eq!(v.yzyy(), u16vec4(2_u16, 3_u16, 2_u16, 2_u16));
399     assert_eq!(v.yzyz(), u16vec4(2_u16, 3_u16, 2_u16, 3_u16));
400     assert_eq!(v.yzzx(), u16vec4(2_u16, 3_u16, 3_u16, 1_u16));
401     assert_eq!(v.yzzy(), u16vec4(2_u16, 3_u16, 3_u16, 2_u16));
402     assert_eq!(v.yzzz(), u16vec4(2_u16, 3_u16, 3_u16, 3_u16));
403     assert_eq!(v.zxxx(), u16vec4(3_u16, 1_u16, 1_u16, 1_u16));
404     assert_eq!(v.zxxy(), u16vec4(3_u16, 1_u16, 1_u16, 2_u16));
405     assert_eq!(v.zxxz(), u16vec4(3_u16, 1_u16, 1_u16, 3_u16));
406     assert_eq!(v.zxyx(), u16vec4(3_u16, 1_u16, 2_u16, 1_u16));
407     assert_eq!(v.zxyy(), u16vec4(3_u16, 1_u16, 2_u16, 2_u16));
408     assert_eq!(v.zxyz(), u16vec4(3_u16, 1_u16, 2_u16, 3_u16));
409     assert_eq!(v.zxzx(), u16vec4(3_u16, 1_u16, 3_u16, 1_u16));
410     assert_eq!(v.zxzy(), u16vec4(3_u16, 1_u16, 3_u16, 2_u16));
411     assert_eq!(v.zxzz(), u16vec4(3_u16, 1_u16, 3_u16, 3_u16));
412     assert_eq!(v.zyxx(), u16vec4(3_u16, 2_u16, 1_u16, 1_u16));
413     assert_eq!(v.zyxy(), u16vec4(3_u16, 2_u16, 1_u16, 2_u16));
414     assert_eq!(v.zyxz(), u16vec4(3_u16, 2_u16, 1_u16, 3_u16));
415     assert_eq!(v.zyyx(), u16vec4(3_u16, 2_u16, 2_u16, 1_u16));
416     assert_eq!(v.zyyy(), u16vec4(3_u16, 2_u16, 2_u16, 2_u16));
417     assert_eq!(v.zyyz(), u16vec4(3_u16, 2_u16, 2_u16, 3_u16));
418     assert_eq!(v.zyzx(), u16vec4(3_u16, 2_u16, 3_u16, 1_u16));
419     assert_eq!(v.zyzy(), u16vec4(3_u16, 2_u16, 3_u16, 2_u16));
420     assert_eq!(v.zyzz(), u16vec4(3_u16, 2_u16, 3_u16, 3_u16));
421     assert_eq!(v.zzxx(), u16vec4(3_u16, 3_u16, 1_u16, 1_u16));
422     assert_eq!(v.zzxy(), u16vec4(3_u16, 3_u16, 1_u16, 2_u16));
423     assert_eq!(v.zzxz(), u16vec4(3_u16, 3_u16, 1_u16, 3_u16));
424     assert_eq!(v.zzyx(), u16vec4(3_u16, 3_u16, 2_u16, 1_u16));
425     assert_eq!(v.zzyy(), u16vec4(3_u16, 3_u16, 2_u16, 2_u16));
426     assert_eq!(v.zzyz(), u16vec4(3_u16, 3_u16, 2_u16, 3_u16));
427     assert_eq!(v.zzzx(), u16vec4(3_u16, 3_u16, 3_u16, 1_u16));
428     assert_eq!(v.zzzy(), u16vec4(3_u16, 3_u16, 3_u16, 2_u16));
429     assert_eq!(v.zzzz(), u16vec4(3_u16, 3_u16, 3_u16, 3_u16));
430     assert_eq!(v.xxx(), u16vec3(1_u16, 1_u16, 1_u16));
431     assert_eq!(v.xxy(), u16vec3(1_u16, 1_u16, 2_u16));
432     assert_eq!(v.xxz(), u16vec3(1_u16, 1_u16, 3_u16));
433     assert_eq!(v.xyx(), u16vec3(1_u16, 2_u16, 1_u16));
434     assert_eq!(v.xyy(), u16vec3(1_u16, 2_u16, 2_u16));
435     assert_eq!(v.xzx(), u16vec3(1_u16, 3_u16, 1_u16));
436     assert_eq!(v.xzy(), u16vec3(1_u16, 3_u16, 2_u16));
437     assert_eq!(v.xzz(), u16vec3(1_u16, 3_u16, 3_u16));
438     assert_eq!(v.yxx(), u16vec3(2_u16, 1_u16, 1_u16));
439     assert_eq!(v.yxy(), u16vec3(2_u16, 1_u16, 2_u16));
440     assert_eq!(v.yxz(), u16vec3(2_u16, 1_u16, 3_u16));
441     assert_eq!(v.yyx(), u16vec3(2_u16, 2_u16, 1_u16));
442     assert_eq!(v.yyy(), u16vec3(2_u16, 2_u16, 2_u16));
443     assert_eq!(v.yyz(), u16vec3(2_u16, 2_u16, 3_u16));
444     assert_eq!(v.yzx(), u16vec3(2_u16, 3_u16, 1_u16));
445     assert_eq!(v.yzy(), u16vec3(2_u16, 3_u16, 2_u16));
446     assert_eq!(v.yzz(), u16vec3(2_u16, 3_u16, 3_u16));
447     assert_eq!(v.zxx(), u16vec3(3_u16, 1_u16, 1_u16));
448     assert_eq!(v.zxy(), u16vec3(3_u16, 1_u16, 2_u16));
449     assert_eq!(v.zxz(), u16vec3(3_u16, 1_u16, 3_u16));
450     assert_eq!(v.zyx(), u16vec3(3_u16, 2_u16, 1_u16));
451     assert_eq!(v.zyy(), u16vec3(3_u16, 2_u16, 2_u16));
452     assert_eq!(v.zyz(), u16vec3(3_u16, 2_u16, 3_u16));
453     assert_eq!(v.zzx(), u16vec3(3_u16, 3_u16, 1_u16));
454     assert_eq!(v.zzy(), u16vec3(3_u16, 3_u16, 2_u16));
455     assert_eq!(v.zzz(), u16vec3(3_u16, 3_u16, 3_u16));
456     assert_eq!(v.xx(), u16vec2(1_u16, 1_u16));
457     assert_eq!(v.xy(), u16vec2(1_u16, 2_u16));
458     assert_eq!(v.xz(), u16vec2(1_u16, 3_u16));
459     assert_eq!(v.yx(), u16vec2(2_u16, 1_u16));
460     assert_eq!(v.yy(), u16vec2(2_u16, 2_u16));
461     assert_eq!(v.yz(), u16vec2(2_u16, 3_u16));
462     assert_eq!(v.zx(), u16vec2(3_u16, 1_u16));
463     assert_eq!(v.zy(), u16vec2(3_u16, 2_u16));
464     assert_eq!(v.zz(), u16vec2(3_u16, 3_u16));
465 });
466 
467 glam_test!(test_u16vec2_swizzles, {
468     let v = u16vec2(1_u16, 2_u16);
469     assert_eq!(v, v.xy());
470     assert_eq!(v.xxxx(), u16vec4(1_u16, 1_u16, 1_u16, 1_u16));
471     assert_eq!(v.xxxy(), u16vec4(1_u16, 1_u16, 1_u16, 2_u16));
472     assert_eq!(v.xxyx(), u16vec4(1_u16, 1_u16, 2_u16, 1_u16));
473     assert_eq!(v.xxyy(), u16vec4(1_u16, 1_u16, 2_u16, 2_u16));
474     assert_eq!(v.xyxx(), u16vec4(1_u16, 2_u16, 1_u16, 1_u16));
475     assert_eq!(v.xyxy(), u16vec4(1_u16, 2_u16, 1_u16, 2_u16));
476     assert_eq!(v.xyyx(), u16vec4(1_u16, 2_u16, 2_u16, 1_u16));
477     assert_eq!(v.xyyy(), u16vec4(1_u16, 2_u16, 2_u16, 2_u16));
478     assert_eq!(v.yxxx(), u16vec4(2_u16, 1_u16, 1_u16, 1_u16));
479     assert_eq!(v.yxxy(), u16vec4(2_u16, 1_u16, 1_u16, 2_u16));
480     assert_eq!(v.yxyx(), u16vec4(2_u16, 1_u16, 2_u16, 1_u16));
481     assert_eq!(v.yxyy(), u16vec4(2_u16, 1_u16, 2_u16, 2_u16));
482     assert_eq!(v.yyxx(), u16vec4(2_u16, 2_u16, 1_u16, 1_u16));
483     assert_eq!(v.yyxy(), u16vec4(2_u16, 2_u16, 1_u16, 2_u16));
484     assert_eq!(v.yyyx(), u16vec4(2_u16, 2_u16, 2_u16, 1_u16));
485     assert_eq!(v.yyyy(), u16vec4(2_u16, 2_u16, 2_u16, 2_u16));
486     assert_eq!(v.xxx(), u16vec3(1_u16, 1_u16, 1_u16));
487     assert_eq!(v.xxy(), u16vec3(1_u16, 1_u16, 2_u16));
488     assert_eq!(v.xyx(), u16vec3(1_u16, 2_u16, 1_u16));
489     assert_eq!(v.xyy(), u16vec3(1_u16, 2_u16, 2_u16));
490     assert_eq!(v.yxx(), u16vec3(2_u16, 1_u16, 1_u16));
491     assert_eq!(v.yxy(), u16vec3(2_u16, 1_u16, 2_u16));
492     assert_eq!(v.yyx(), u16vec3(2_u16, 2_u16, 1_u16));
493     assert_eq!(v.yyy(), u16vec3(2_u16, 2_u16, 2_u16));
494     assert_eq!(v.xx(), u16vec2(1_u16, 1_u16));
495     assert_eq!(v.yx(), u16vec2(2_u16, 1_u16));
496     assert_eq!(v.yy(), u16vec2(2_u16, 2_u16));
497 });
498