[][src]Macro wide::const_f32_as_f32x4

macro_rules! const_f32_as_f32x4 {
    ($(#[$attrs:meta])* $v:vis $i:ident, $val:expr) => { ... };
    ($(#[$attrs:meta])* $v:vis $i:ident, $a:expr, $b:expr, $c:expr, $d:expr) => { ... };
}

Declares an f32x4 const identifier.

Broadcast A Single Value

  • Usage: const_f32_as_f32x4!(#[meta]* vis ident, val);

The value should be a single f32 expression, which is then duplicated into all lanes of the constant declaration.

use wide::*;
const_f32_as_f32x4!(
  /// Machine epsilon value for `f32`.
  pub EPSILON, core::f32::EPSILON
);

Select Each Lane

  • Usage: const_f32_as_f32x4!(#[meta]* vis ident, a, b, c, d);

Each of a, b, c, and d are an f32 expression when are then placed into the constant declaration (low lane to high lane).

use wide::*;
const_f32_as_f32x4!(
  /// 1, 2, 3, 4
  pub ONE_TWO_THREE_FOUR, 1.0, 2.0, 3.0, 4.0
);