Skip to main content

VectorScalarOps

Trait VectorScalarOps 

Source
pub trait VectorScalarOps<T: Scalar, const N: usize>: Vector<T, N> {
    // 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: Scalar, const N: usize, V: Vector<T, N>> VectorScalarOps<T, N> for V

Blanket implementation: every Vector gets scalar ops for free.