aboutsummaryrefslogtreecommitdiff
path: root/src/swizzles/vec2_impl.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/swizzles/vec2_impl.rs')
-rw-r--r--src/swizzles/vec2_impl.rs193
1 files changed, 193 insertions, 0 deletions
diff --git a/src/swizzles/vec2_impl.rs b/src/swizzles/vec2_impl.rs
new file mode 100644
index 0000000..4842194
--- /dev/null
+++ b/src/swizzles/vec2_impl.rs
@@ -0,0 +1,193 @@
+// Generated from swizzle_impl.rs.tera template. Edit the template, not the generated file.
+
+use crate::{Vec2, Vec2Swizzles, Vec3, Vec4};
+
+impl Vec2Swizzles for Vec2 {
+ type Vec3 = Vec3;
+
+ type Vec4 = Vec4;
+
+ #[inline]
+ fn xx(self) -> Vec2 {
+ Vec2 {
+ x: self.x,
+ y: self.x,
+ }
+ }
+
+ #[inline]
+ fn xy(self) -> Vec2 {
+ Vec2 {
+ x: self.x,
+ y: self.y,
+ }
+ }
+
+ #[inline]
+ fn yx(self) -> Vec2 {
+ Vec2 {
+ x: self.y,
+ y: self.x,
+ }
+ }
+
+ #[inline]
+ fn yy(self) -> Vec2 {
+ Vec2 {
+ x: self.y,
+ y: self.y,
+ }
+ }
+
+ #[inline]
+ fn xxx(self) -> Vec3 {
+ Vec3 {
+ x: self.x,
+ y: self.x,
+ z: self.x,
+ }
+ }
+
+ #[inline]
+ fn xxy(self) -> Vec3 {
+ Vec3 {
+ x: self.x,
+ y: self.x,
+ z: self.y,
+ }
+ }
+
+ #[inline]
+ fn xyx(self) -> Vec3 {
+ Vec3 {
+ x: self.x,
+ y: self.y,
+ z: self.x,
+ }
+ }
+
+ #[inline]
+ fn xyy(self) -> Vec3 {
+ Vec3 {
+ x: self.x,
+ y: self.y,
+ z: self.y,
+ }
+ }
+
+ #[inline]
+ fn yxx(self) -> Vec3 {
+ Vec3 {
+ x: self.y,
+ y: self.x,
+ z: self.x,
+ }
+ }
+
+ #[inline]
+ fn yxy(self) -> Vec3 {
+ Vec3 {
+ x: self.y,
+ y: self.x,
+ z: self.y,
+ }
+ }
+
+ #[inline]
+ fn yyx(self) -> Vec3 {
+ Vec3 {
+ x: self.y,
+ y: self.y,
+ z: self.x,
+ }
+ }
+
+ #[inline]
+ fn yyy(self) -> Vec3 {
+ Vec3 {
+ x: self.y,
+ y: self.y,
+ z: self.y,
+ }
+ }
+
+ #[inline]
+ fn xxxx(self) -> Vec4 {
+ Vec4::new(self.x, self.x, self.x, self.x)
+ }
+
+ #[inline]
+ fn xxxy(self) -> Vec4 {
+ Vec4::new(self.x, self.x, self.x, self.y)
+ }
+
+ #[inline]
+ fn xxyx(self) -> Vec4 {
+ Vec4::new(self.x, self.x, self.y, self.x)
+ }
+
+ #[inline]
+ fn xxyy(self) -> Vec4 {
+ Vec4::new(self.x, self.x, self.y, self.y)
+ }
+
+ #[inline]
+ fn xyxx(self) -> Vec4 {
+ Vec4::new(self.x, self.y, self.x, self.x)
+ }
+
+ #[inline]
+ fn xyxy(self) -> Vec4 {
+ Vec4::new(self.x, self.y, self.x, self.y)
+ }
+
+ #[inline]
+ fn xyyx(self) -> Vec4 {
+ Vec4::new(self.x, self.y, self.y, self.x)
+ }
+
+ #[inline]
+ fn xyyy(self) -> Vec4 {
+ Vec4::new(self.x, self.y, self.y, self.y)
+ }
+
+ #[inline]
+ fn yxxx(self) -> Vec4 {
+ Vec4::new(self.y, self.x, self.x, self.x)
+ }
+
+ #[inline]
+ fn yxxy(self) -> Vec4 {
+ Vec4::new(self.y, self.x, self.x, self.y)
+ }
+
+ #[inline]
+ fn yxyx(self) -> Vec4 {
+ Vec4::new(self.y, self.x, self.y, self.x)
+ }
+
+ #[inline]
+ fn yxyy(self) -> Vec4 {
+ Vec4::new(self.y, self.x, self.y, self.y)
+ }
+
+ #[inline]
+ fn yyxx(self) -> Vec4 {
+ Vec4::new(self.y, self.y, self.x, self.x)
+ }
+
+ #[inline]
+ fn yyxy(self) -> Vec4 {
+ Vec4::new(self.y, self.y, self.x, self.y)
+ }
+
+ #[inline]
+ fn yyyx(self) -> Vec4 {
+ Vec4::new(self.y, self.y, self.y, self.x)
+ }
+
+ #[inline]
+ fn yyyy(self) -> Vec4 {
+ Vec4::new(self.y, self.y, self.y, self.y)
+ }
+}