glam/swizzles/
dvec2_impl.rs

1// Generated from swizzle_impl.rs.tera template. Edit the template, not the generated file.
2
3use crate::{DVec2, DVec3, DVec4, Vec2Swizzles};
4
5impl Vec2Swizzles for DVec2 {
6    type Vec3 = DVec3;
7
8    type Vec4 = DVec4;
9
10    #[inline]
11    #[must_use]
12    fn xx(self) -> DVec2 {
13        DVec2 {
14            x: self.x,
15            y: self.x,
16        }
17    }
18
19    #[inline]
20    #[must_use]
21    fn xy(self) -> DVec2 {
22        DVec2 {
23            x: self.x,
24            y: self.y,
25        }
26    }
27
28    #[inline]
29    #[must_use]
30    fn yx(self) -> DVec2 {
31        DVec2 {
32            x: self.y,
33            y: self.x,
34        }
35    }
36
37    #[inline]
38    #[must_use]
39    fn yy(self) -> DVec2 {
40        DVec2 {
41            x: self.y,
42            y: self.y,
43        }
44    }
45
46    #[inline]
47    #[must_use]
48    fn xxx(self) -> DVec3 {
49        DVec3 {
50            x: self.x,
51            y: self.x,
52            z: self.x,
53        }
54    }
55
56    #[inline]
57    #[must_use]
58    fn xxy(self) -> DVec3 {
59        DVec3 {
60            x: self.x,
61            y: self.x,
62            z: self.y,
63        }
64    }
65
66    #[inline]
67    #[must_use]
68    fn xyx(self) -> DVec3 {
69        DVec3 {
70            x: self.x,
71            y: self.y,
72            z: self.x,
73        }
74    }
75
76    #[inline]
77    #[must_use]
78    fn xyy(self) -> DVec3 {
79        DVec3 {
80            x: self.x,
81            y: self.y,
82            z: self.y,
83        }
84    }
85
86    #[inline]
87    #[must_use]
88    fn yxx(self) -> DVec3 {
89        DVec3 {
90            x: self.y,
91            y: self.x,
92            z: self.x,
93        }
94    }
95
96    #[inline]
97    #[must_use]
98    fn yxy(self) -> DVec3 {
99        DVec3 {
100            x: self.y,
101            y: self.x,
102            z: self.y,
103        }
104    }
105
106    #[inline]
107    #[must_use]
108    fn yyx(self) -> DVec3 {
109        DVec3 {
110            x: self.y,
111            y: self.y,
112            z: self.x,
113        }
114    }
115
116    #[inline]
117    #[must_use]
118    fn yyy(self) -> DVec3 {
119        DVec3 {
120            x: self.y,
121            y: self.y,
122            z: self.y,
123        }
124    }
125
126    #[inline]
127    #[must_use]
128    fn xxxx(self) -> DVec4 {
129        DVec4::new(self.x, self.x, self.x, self.x)
130    }
131
132    #[inline]
133    #[must_use]
134    fn xxxy(self) -> DVec4 {
135        DVec4::new(self.x, self.x, self.x, self.y)
136    }
137
138    #[inline]
139    #[must_use]
140    fn xxyx(self) -> DVec4 {
141        DVec4::new(self.x, self.x, self.y, self.x)
142    }
143
144    #[inline]
145    #[must_use]
146    fn xxyy(self) -> DVec4 {
147        DVec4::new(self.x, self.x, self.y, self.y)
148    }
149
150    #[inline]
151    #[must_use]
152    fn xyxx(self) -> DVec4 {
153        DVec4::new(self.x, self.y, self.x, self.x)
154    }
155
156    #[inline]
157    #[must_use]
158    fn xyxy(self) -> DVec4 {
159        DVec4::new(self.x, self.y, self.x, self.y)
160    }
161
162    #[inline]
163    #[must_use]
164    fn xyyx(self) -> DVec4 {
165        DVec4::new(self.x, self.y, self.y, self.x)
166    }
167
168    #[inline]
169    #[must_use]
170    fn xyyy(self) -> DVec4 {
171        DVec4::new(self.x, self.y, self.y, self.y)
172    }
173
174    #[inline]
175    #[must_use]
176    fn yxxx(self) -> DVec4 {
177        DVec4::new(self.y, self.x, self.x, self.x)
178    }
179
180    #[inline]
181    #[must_use]
182    fn yxxy(self) -> DVec4 {
183        DVec4::new(self.y, self.x, self.x, self.y)
184    }
185
186    #[inline]
187    #[must_use]
188    fn yxyx(self) -> DVec4 {
189        DVec4::new(self.y, self.x, self.y, self.x)
190    }
191
192    #[inline]
193    #[must_use]
194    fn yxyy(self) -> DVec4 {
195        DVec4::new(self.y, self.x, self.y, self.y)
196    }
197
198    #[inline]
199    #[must_use]
200    fn yyxx(self) -> DVec4 {
201        DVec4::new(self.y, self.y, self.x, self.x)
202    }
203
204    #[inline]
205    #[must_use]
206    fn yyxy(self) -> DVec4 {
207        DVec4::new(self.y, self.y, self.x, self.y)
208    }
209
210    #[inline]
211    #[must_use]
212    fn yyyx(self) -> DVec4 {
213        DVec4::new(self.y, self.y, self.y, self.x)
214    }
215
216    #[inline]
217    #[must_use]
218    fn yyyy(self) -> DVec4 {
219        DVec4::new(self.y, self.y, self.y, self.y)
220    }
221}