[][src]Struct safe_arch::m128i

#[repr(transparent)]pub struct m128i(pub __m128i);

The data for a 128-bit SSE register of integer data.

  • The exact layout to view the type as depends on the operation used.
  • From and Into impls are provided for all the relevant signed integer array types.
  • Formatting impls print as four i32 values just because they have to pick something. If you want an alternative you can turn it into an array and print as you like.

Trait Implementations

impl Binary for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

Binary formats each i32.

let f = format!("{:b}", m128i::default());
assert_eq!(&f, "(0, 0, 0, 0)");

impl BitAnd<m128i> for m128i[src]

type Output = Self

The resulting type after applying the & operator.

impl BitAndAssign<m128i> for m128i[src]

impl BitOr<m128i> for m128i[src]

type Output = Self

The resulting type after applying the | operator.

impl BitOrAssign<m128i> for m128i[src]

impl BitXor<m128i> for m128i[src]

type Output = Self

The resulting type after applying the ^ operator.

impl BitXorAssign<m128i> for m128i[src]

impl Clone for m128i[src]

impl Copy for m128i[src]

impl Debug for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

Debug formats each i32.

let f = format!("{:?}", m128i::default());
assert_eq!(&f, "m128i(0, 0, 0, 0)");

impl Default for m128i[src]

impl Display for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

Display formats each i32, and leaves the type name off of the font.

let f = format!("{}", m128i::default());
assert_eq!(&f, "(0, 0, 0, 0)");

impl Eq for m128i[src]

Unlike with the floating types, ints have absolute equality.

impl From<[i16; 8]> for m128i[src]

impl From<[i32; 4]> for m128i[src]

impl From<[i64; 2]> for m128i[src]

impl From<[i8; 16]> for m128i[src]

impl From<[u16; 8]> for m128i[src]

impl From<[u32; 4]> for m128i[src]

impl From<[u64; 2]> for m128i[src]

impl From<[u8; 16]> for m128i[src]

impl From<i128> for m128i[src]

impl From<m128i> for [i8; 16][src]

impl From<m128i> for [u8; 16][src]

impl From<m128i> for [i16; 8][src]

impl From<m128i> for [u16; 8][src]

impl From<m128i> for [i32; 4][src]

impl From<m128i> for [u32; 4][src]

impl From<m128i> for [i64; 2][src]

impl From<m128i> for [u64; 2][src]

impl From<m128i> for i128[src]

impl From<m128i> for u128[src]

impl From<u128> for m128i[src]

impl LowerExp for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

LowerExp formats each i32.

let f = format!("{:e}", m128i::default());
assert_eq!(&f, "(0e0, 0e0, 0e0, 0e0)");

impl LowerHex for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

LowerHex formats each i32.

let f = format!("{:x}", m128i::default());
assert_eq!(&f, "(0, 0, 0, 0)");

impl Not for m128i[src]

type Output = Self

The resulting type after applying the ! operator.

#[must_use]fn not(self) -> Self[src]

Not a direct intrinsic, but it's very useful and the implementation is simple enough.

Negates the bits by performing an xor with an all-1s bit pattern.

impl Octal for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

Octal formats each i32.

let f = format!("{:o}", m128i::default());
assert_eq!(&f, "(0, 0, 0, 0)");

impl PartialEq<m128i> for m128i[src]

#[must_use]fn eq(&self, other: &Self) -> bool[src]

Not a direct intrinsic, this is a cmp_eq_mask_i8_m128i and then a move_mask_i8_m128i.

impl Pod for m128i[src]

impl TransparentWrapper<__m128i> for m128i[src]

impl UpperExp for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

UpperExp formats each i32.

let f = format!("{:E}", m128i::default());
assert_eq!(&f, "(0E0, 0E0, 0E0, 0E0)");

impl UpperHex for m128i[src]

fn fmt(&self, f: &mut Formatter) -> Result[src]

UpperHex formats each i32.

let f = format!("{:X}", m128i::default());
assert_eq!(&f, "(0, 0, 0, 0)");

impl Zeroable for m128i[src]

Auto Trait Implementations

impl Send for m128i

impl Sync for m128i

impl Unpin for m128i

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.