Skip to main content

VectorScalarOps

Trait VectorScalarOps 

Source
pub trait VectorScalarOps<T, const N: usize>: Vector<T, N>
where T: Scalar,
{ // Provided methods fn add_scalar(&self, scalar: T) -> Self { ... } fn sub_scalar(&self, scalar: T) -> Self { ... } fn mul_scalar(&self, scalar: T) -> Self { ... } fn div_scalar(&self, scalar: T) -> Self { ... } fn rem_scalar(&self, scalar: T) -> Self { ... } }
Expand description

Scalar-vector arithmetic operations.

Each method broadcasts the scalar across all lanes. Blanket-implemented for all Vector types.

Provided Methods§

Source

fn add_scalar(&self, scalar: T) -> Self

Add a scalar to every lane.

Source

fn sub_scalar(&self, scalar: T) -> Self

Subtract a scalar from every lane.

Source

fn mul_scalar(&self, scalar: T) -> Self

Multiply every lane by a scalar.

Source

fn div_scalar(&self, scalar: T) -> Self

Divide every lane by a scalar.

Source

fn rem_scalar(&self, scalar: T) -> Self

Compute the remainder of every lane divided by a scalar.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<T, const N: usize, V> VectorScalarOps<T, N> for V
where T: Scalar, V: Vector<T, N>,

Blanket implementation: every Vector gets scalar ops for free.