Trait ScalarExt

Source
pub trait ScalarExt<Token>:
    Native<Token>
    + Scalar<Token, W1>
    + Scalar<Token, W2>
    + Scalar<Token, W4>
    + Scalar<Token, W8>
    + Scalar<Token, NativeWidth<Self, Token>>
where Token: Token + From<Token> + Into<Token>,
{ // Provided methods fn zeroed_native( token: Token, ) -> <Self as Scalar<Token, <Self as Native<Token>>::Width>>::Vector { ... } fn splat_native( self, token: Token, ) -> <Self as Scalar<Token, <Self as Native<Token>>::Width>>::Vector { ... } fn zeroed1(token: Token) -> <Self as Scalar<Token, W1>>::Vector { ... } fn splat1(self, token: Token) -> <Self as Scalar<Token, W1>>::Vector { ... } fn zeroed2(token: Token) -> <Self as Scalar<Token, W2>>::Vector { ... } fn splat2(self, token: Token) -> <Self as Scalar<Token, W2>>::Vector { ... } fn zeroed4(token: Token) -> <Self as Scalar<Token, W4>>::Vector { ... } fn splat4(self, token: Token) -> <Self as Scalar<Token, W4>>::Vector { ... } fn zeroed8(token: Token) -> <Self as Scalar<Token, W8>>::Vector { ... } fn splat8(self, token: Token) -> <Self as Scalar<Token, W8>>::Vector { ... } }
Expand description

A scalar value, supporting all vector widths.

Provided Methods§

Source

fn zeroed_native( token: Token, ) -> <Self as Scalar<Token, <Self as Native<Token>>::Width>>::Vector

Create a vector with the native number of lanes set to zero.

See zeroed.

Source

fn splat_native( self, token: Token, ) -> <Self as Scalar<Token, <Self as Native<Token>>::Width>>::Vector

Splat a scalar to the native number of lanes .

See splat.

Source

fn zeroed1(token: Token) -> <Self as Scalar<Token, W1>>::Vector

Create a vector with 1 lane set to zero.

See zeroed.

Source

fn splat1(self, token: Token) -> <Self as Scalar<Token, W1>>::Vector

Splat a scalar to 1 lane .

See splat.

Source

fn zeroed2(token: Token) -> <Self as Scalar<Token, W2>>::Vector

Create a vector with 2 lanes set to zero.

See zeroed.

Source

fn splat2(self, token: Token) -> <Self as Scalar<Token, W2>>::Vector

Splat a scalar to 2 lanes .

See splat.

Source

fn zeroed4(token: Token) -> <Self as Scalar<Token, W4>>::Vector

Create a vector with 4 lanes set to zero.

See zeroed.

Source

fn splat4(self, token: Token) -> <Self as Scalar<Token, W4>>::Vector

Splat a scalar to 4 lanes .

See splat.

Source

fn zeroed8(token: Token) -> <Self as Scalar<Token, W8>>::Vector

Create a vector with 8 lanes set to zero.

See zeroed.

Source

fn splat8(self, token: Token) -> <Self as Scalar<Token, W8>>::Vector

Splat a scalar to 8 lanes .

See splat.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<Token, Scalar> ScalarExt<Token> for Scalar
where Token: Token, Scalar: Native<Token> + Scalar<Token, W1> + Scalar<Token, W2> + Scalar<Token, W4> + Scalar<Token, W8> + Scalar<Token, NativeWidth<Self, Token>>,