[−][src]Type Definition packed_simd_2::m8x4
type m8x4 = Simd<[m8; 4]>;
A 32-bit vector mask with 4 m8 lanes.
Implementations
impl m8x4[src]
pub const fn new(x0: bool, x1: bool, x2: bool, x3: bool) -> Self[src]
Creates a new instance with each vector elements initialized with the provided values.
pub const fn lanes() -> usize[src]
Returns the number of vector lanes.
pub const fn splat(value: bool) -> Self[src]
Constructs a new instance with each element initialized to
value.
pub fn extract(self, index: usize) -> bool[src]
pub unsafe fn extract_unchecked(self, index: usize) -> bool[src]
#[must_use =
"replace does not modify the original value - \
it returns a new vector with the value at `index` \
replaced by `new_value`d"]pub fn replace(self, index: usize, new_value: bool) -> Self[src]
Returns a new vector where the value at index is replaced by
new_value.
Panics
If index >= Self::lanes().
#[must_use =
"replace_unchecked does not modify the original value - \
it returns a new vector with the value at `index` \
replaced by `new_value`d"]pub unsafe fn replace_unchecked(self, index: usize, new_value: bool) -> Self[src]
Returns a new vector where the value at index is replaced by
new_value.
Safety
If index >= Self::lanes() the behavior is undefined.
impl m8x4[src]
pub fn and(self) -> bool[src]
Lane-wise bitwise and of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
pub fn or(self) -> bool[src]
Lane-wise bitwise or of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
pub fn xor(self) -> bool[src]
Lane-wise bitwise xor of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
impl m8x4[src]
pub fn all(self) -> bool[src]
Are all vector lanes true?
pub fn any(self) -> bool[src]
Is any vector lane true?
pub fn none(self) -> bool[src]
Are all vector lanes false?
impl m8x4[src]
pub fn eq(self, other: Self) -> m8x4[src]
Lane-wise equality comparison.
pub fn ne(self, other: Self) -> m8x4[src]
Lane-wise inequality comparison.
pub fn lt(self, other: Self) -> m8x4[src]
Lane-wise less-than comparison.
pub fn le(self, other: Self) -> m8x4[src]
Lane-wise less-than-or-equals comparison.
pub fn gt(self, other: Self) -> m8x4[src]
Lane-wise greater-than comparison.
pub fn ge(self, other: Self) -> m8x4[src]
Lane-wise greater-than-or-equals comparison.
impl m8x4[src]
pub fn select<T>(self, a: Simd<T>, b: Simd<T>) -> Simd<T> where
T: SimdArray<NT = <[m8; 4] as SimdArray>::NT>, [src]
T: SimdArray<NT = <[m8; 4] as SimdArray>::NT>,
Selects elements of a and b using mask.
The lanes of the result for which the mask is true contain
the values of a. The remaining lanes contain the values of
b.
impl m8x4[src]
pub fn partial_lex_ord(&self) -> LexicographicallyOrdered<m8x4>[src]
Returns a wrapper that implements PartialOrd.
impl m8x4[src]
pub fn lex_ord(&self) -> LexicographicallyOrdered<m8x4>[src]
Returns a wrapper that implements Ord.
impl m8x4[src]
pub fn shuffle1_dyn<I>(self, indices: I) -> Self where
Self: Shuffle1Dyn<Indices = I>, [src]
Self: Shuffle1Dyn<Indices = I>,
Shuffle vector elements according to indices.
impl m8x4[src]
pub fn bitmask(self) -> u8[src]
Creates a bitmask with the MSB of each vector lane.
If the vector has less than 8 lanes, the bits that do not correspond to any vector lanes are cleared.
Trait Implementations
impl BitAnd<Simd<[m8; 4]>> for m8x4[src]
type Output = Self
The resulting type after applying the & operator.
fn bitand(self, other: Self) -> Self[src]
impl BitAnd<bool> for m8x4[src]
type Output = Self
The resulting type after applying the & operator.
fn bitand(self, other: bool) -> Self[src]
impl BitAndAssign<Simd<[m8; 4]>> for m8x4[src]
fn bitand_assign(&mut self, other: Self)[src]
impl BitAndAssign<bool> for m8x4[src]
fn bitand_assign(&mut self, other: bool)[src]
impl BitOr<Simd<[m8; 4]>> for m8x4[src]
type Output = Self
The resulting type after applying the | operator.
fn bitor(self, other: Self) -> Self[src]
impl BitOr<bool> for m8x4[src]
type Output = Self
The resulting type after applying the | operator.
fn bitor(self, other: bool) -> Self[src]
impl BitOrAssign<Simd<[m8; 4]>> for m8x4[src]
fn bitor_assign(&mut self, other: Self)[src]
impl BitOrAssign<bool> for m8x4[src]
fn bitor_assign(&mut self, other: bool)[src]
impl BitXor<Simd<[m8; 4]>> for m8x4[src]
type Output = Self
The resulting type after applying the ^ operator.
fn bitxor(self, other: Self) -> Self[src]
impl BitXor<bool> for m8x4[src]
type Output = Self
The resulting type after applying the ^ operator.