1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#[macro_export]
#[allow(unused_macros)]
macro_rules! vec1 {
    ($x:expr) => (
        Vec1::new($x)
    );

    ($arr:expr) => (
        Vec1::from($arr)
    );
}


#[macro_export]
#[allow(unused_macros)]
macro_rules! vec2 {
    ($x:expr, $y:expr) => (
        Vec2::new($x, $y)
    );

    ($arr:expr) => (
        Vec2::from($arr)
    );
}

#[macro_export]
#[allow(unused_macros)]
macro_rules! vec3 {
    ($x:expr, $y:expr, $z:expr) => (
        Vec3::new($x, $y, $z)
    );

    ($arr:expr) => (
        Vec3::from($arr)
    );
}

#[macro_export]
#[allow(unused_macros)]
macro_rules! vec4 {
    ($x:expr, $y:expr, $z:expr, $w:expr) => (
        Vec4::new($x, $y, $z, $w)
    );

    ($arr:expr) => (
        Vec4::from($arr)
    );
}