hexga_math/geometry/vector/
array_extension.rs1use super::*;
2
3impl<S, T, const N: usize> ToDimension<T, N> for S where S: ArrayWithSize<T, N> {}
4pub trait ToDimension<T, const N: usize>: ArrayWithSize<T, N>
5{
6 fn to_1d(self) -> Self::WithSize<1>
7 where
8 T: Default,
9 {
10 self.resize::<1>()
11 }
12 fn to_2d(self) -> Self::WithSize<2>
13 where
14 T: Default,
15 {
16 self.resize::<2>()
17 }
18 fn to_3d(self) -> Self::WithSize<3>
19 where
20 T: Default,
21 {
22 self.resize::<3>()
23 }
24 fn to_4d(self) -> Self::WithSize<4>
25 where
26 T: Default,
27 {
28 self.resize::<4>()
29 }
30}