Macro adi_gpu_base::dvec4[]

macro_rules! dvec4 {
    (  ) => { ... };
    ( $ expr : expr ) => { ... };
    ( $ xyz : expr , $ w : expr ) => { ... };
    (
$ xy : expr , $ z : expr , $ w : expr ) => { ... };
    (
$ x : expr , $ y : expr , $ z : expr , $ w : expr ) => { ... };
}

Double-precision 4D vector macro constructor.

Examples

Zeros

let zeros = dvec4!();
assert_eq!(zeros.as_ref(), &[0.0, 0.0, 0.0, 0.0]);

Ones

let ones = dvec4!(1.0);
assert_eq!(ones.as_ref(), &[1.0, 1.0, 1.0, 1.0]);

Full

let full = dvec4!(1.2, 3.4, 5.6, 7.8);
assert_eq!(full.as_ref(), &[1.2, 3.4, 5.6, 7.8]);

From vec2

let vec2 = dvec2!(1.2, 3.4);
let vec4 = dvec4!(vec2, 5.6, 7.8);
assert_eq!(vec4.as_ref(), &[1.2, 3.4, 5.6, 7.8]);

From vec3

let vec3 = dvec3!(1.2, 3.4, 5.6);
let vec4 = dvec4!(vec3, 7.8);
assert_eq!(vec4.as_ref(), &[1.2, 3.4, 5.6, 7.8]);