glam/
deref.rs

1#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, PartialOrd)]
2#[cfg_attr(target_arch = "spirv", repr(simd))]
3#[cfg_attr(not(target_arch = "spirv"), repr(C))]
4pub struct XY<T> {
5    pub x: T,
6    pub y: T,
7}
8
9#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, PartialOrd)]
10#[cfg_attr(target_arch = "spirv", repr(simd))]
11#[cfg_attr(not(target_arch = "spirv"), repr(C))]
12pub struct Vec3<T> {
13    pub x: T,
14    pub y: T,
15    pub z: T,
16}
17
18#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, PartialOrd)]
19#[cfg_attr(target_arch = "spirv", repr(simd))]
20#[cfg_attr(not(target_arch = "spirv"), repr(C))]
21pub struct Vec4<T> {
22    pub x: T,
23    pub y: T,
24    pub z: T,
25    pub w: T,
26}
27
28#[derive(Clone, Copy, Default, PartialEq, Eq, PartialOrd)]
29#[cfg_attr(not(target_arch = "spirv"), repr(C))]
30pub struct Cols2<V> {
31    pub x_axis: V,
32    pub y_axis: V,
33}
34
35#[derive(Clone, Copy, Default, PartialEq, Eq, PartialOrd)]
36#[cfg_attr(not(target_arch = "spirv"), repr(C))]
37pub struct Cols3<V> {
38    pub x_axis: V,
39    pub y_axis: V,
40    pub z_axis: V,
41}
42
43#[derive(Clone, Copy, Default, PartialEq, Eq, PartialOrd)]
44#[cfg_attr(not(target_arch = "spirv"), repr(C))]
45pub struct Cols4<V> {
46    pub x_axis: V,
47    pub y_axis: V,
48    pub z_axis: V,
49    pub w_axis: V,
50}