#[repr(transparent)]pub struct x4<W>(pub [W; 4]);
Tuple Fields§
§0: [W; 4]
Implementations§
Trait Implementations§
Source§impl<W: AddAssign + Copy> AddAssign for x4<W>
impl<W: AddAssign + Copy> AddAssign for x4<W>
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+=
operation. Read moreSource§impl<W: BitAndAssign + Copy> BitAndAssign for x4<W>
impl<W: BitAndAssign + Copy> BitAndAssign for x4<W>
Source§fn bitand_assign(&mut self, rhs: Self)
fn bitand_assign(&mut self, rhs: Self)
Performs the
&=
operation. Read moreSource§impl<W: BitOrAssign + Copy> BitOrAssign for x4<W>
impl<W: BitOrAssign + Copy> BitOrAssign for x4<W>
Source§fn bitor_assign(&mut self, rhs: Self)
fn bitor_assign(&mut self, rhs: Self)
Performs the
|=
operation. Read moreSource§impl<W: BitXorAssign + Copy> BitXorAssign for x4<W>
impl<W: BitXorAssign + Copy> BitXorAssign for x4<W>
Source§fn bitxor_assign(&mut self, rhs: Self)
fn bitxor_assign(&mut self, rhs: Self)
Performs the
^=
operation. Read moreSource§impl<W> From<x4<W>> for vec512_storage
impl<W> From<x4<W>> for vec512_storage
Source§impl<S3: Copy, S4: Copy, NI: Copy> From<x4<u128x1_sse2<S3, S4, NI>>> for x4<u32x4_sse2<S3, S4, NI>>
impl<S3: Copy, S4: Copy, NI: Copy> From<x4<u128x1_sse2<S3, S4, NI>>> for x4<u32x4_sse2<S3, S4, NI>>
Source§fn from(x: x4<u128x1_sse2<S3, S4, NI>>) -> Self
fn from(x: x4<u128x1_sse2<S3, S4, NI>>) -> Self
Converts to this type from the input type.
Source§impl<S3: Copy, S4: Copy, NI: Copy> From<x4<u128x1_sse2<S3, S4, NI>>> for x4<u64x2_sse2<S3, S4, NI>>
impl<S3: Copy, S4: Copy, NI: Copy> From<x4<u128x1_sse2<S3, S4, NI>>> for x4<u64x2_sse2<S3, S4, NI>>
Source§fn from(x: x4<u128x1_sse2<S3, S4, NI>>) -> Self
fn from(x: x4<u128x1_sse2<S3, S4, NI>>) -> Self
Converts to this type from the input type.
Source§impl<W> FromBytes for x4<W>
impl<W> FromBytes for x4<W>
Source§impl<W> IntoBytes for x4<W>
impl<W> IntoBytes for x4<W>
Source§fn as_mut_bytes(&mut self) -> &mut [u8]where
Self: FromBytes,
fn as_mut_bytes(&mut self) -> &mut [u8]where
Self: FromBytes,
Gets the bytes of this value mutably. Read more
Source§fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
fn write_to(&self, dst: &mut [u8]) -> Result<(), SizeError<&Self, &mut [u8]>>where
Self: Immutable,
Source§impl<W: Copy + LaneWords4> LaneWords4 for x4<W>
impl<W: Copy + LaneWords4> LaneWords4 for x4<W>
fn shuffle_lane_words2301(self) -> Self
fn shuffle_lane_words1230(self) -> Self
fn shuffle_lane_words3012(self) -> Self
Source§impl<W> RotateEachWord32 for x4<W>where
W: Copy + RotateEachWord32,
impl<W> RotateEachWord32 for x4<W>where
W: Copy + RotateEachWord32,
fn rotate_each_word_right7(self) -> Self
fn rotate_each_word_right8(self) -> Self
fn rotate_each_word_right11(self) -> Self
fn rotate_each_word_right12(self) -> Self
fn rotate_each_word_right16(self) -> Self
fn rotate_each_word_right20(self) -> Self
fn rotate_each_word_right24(self) -> Self
fn rotate_each_word_right25(self) -> Self
Source§impl<W> RotateEachWord64 for x4<W>where
W: Copy + RotateEachWord64,
impl<W> RotateEachWord64 for x4<W>where
W: Copy + RotateEachWord64,
fn rotate_each_word_right32(self) -> Self
Source§impl<W: Copy + Store<vec128_storage>> Store<vec512_storage> for x4<W>
impl<W: Copy + Store<vec128_storage>> Store<vec512_storage> for x4<W>
Source§unsafe fn unpack(p: vec512_storage) -> Self
unsafe fn unpack(p: vec512_storage) -> Self
Safety Read more
Source§impl<W: StoreBytes + BSwap + Copy> StoreBytes for x4<W>
impl<W: StoreBytes + BSwap + Copy> StoreBytes for x4<W>
Source§impl<W> TryFromBytes for x4<W>
impl<W> TryFromBytes for x4<W>
Source§fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_bytes(
source: &[u8],
) -> Result<Self, ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_prefix(
source: &[u8],
) -> Result<(Self, &[u8]), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
fn try_read_from_suffix(
source: &[u8],
) -> Result<(&[u8], Self), ConvertError<Infallible, SizeError<&[u8], Self>, ValidityError<&[u8], Self>>>where
Self: Sized,
Source§impl<W> UnsafeFrom<[W; 4]> for x4<W>
impl<W> UnsafeFrom<[W; 4]> for x4<W>
unsafe fn unsafe_from(xs: [W; 4]) -> Self
Source§impl<W: Copy> Vec4Ext<W> for x4<W>
impl<W: Copy> Vec4Ext<W> for x4<W>
fn transpose4(a: Self, b: Self, c: Self, d: Self) -> (Self, Self, Self, Self)where
Self: Sized,
Source§impl<S3, S4, NI> Vector<[u32; 16]> for x4<u32x4_sse2<S3, S4, NI>>
impl<S3, S4, NI> Vector<[u32; 16]> for x4<u32x4_sse2<S3, S4, NI>>
fn to_scalars(self) -> [u32; 16]
impl<W> ArithOps for x4<W>where
W: ArithOps,
impl<W> BitOps0 for x4<W>where
W: BitOps0,
impl<W> BitOps128 for x4<W>
impl<W> BitOps32 for x4<W>
impl<W> BitOps64 for x4<W>
impl<W: Copy> Copy for x4<W>
impl<W> Immutable for x4<W>
impl<W> RotateEachWord128 for x4<W>where
W: RotateEachWord128,
impl<NI: Copy> u128x4<Avx2Machine<NI>> for x4<u128x1_sse2<YesS3, YesS4, NI>>where
u128x1_sse2<YesS3, YesS4, NI>: Swap64 + BSwap,
Avx2Machine<NI>: Machine,
x4<u128x1_sse2<YesS3, YesS4, NI>>: MultiLane<[<Avx2Machine<NI> as Machine>::u128x1; 4]> + Vec4<<Avx2Machine<NI> as Machine>::u128x1> + Into<<Avx2Machine<NI> as Machine>::u32x4x4> + Into<<Avx2Machine<NI> as Machine>::u64x2x4>,
impl<S3: Copy, S4: Copy, NI: Copy> u128x4<SseMachine<S3, S4, NI>> for x4<u128x1_sse2<S3, S4, NI>>where
u128x1_sse2<S3, S4, NI>: Swap64 + BSwap,
SseMachine<S3, S4, NI>: Machine,
x4<u128x1_sse2<S3, S4, NI>>: MultiLane<[<SseMachine<S3, S4, NI> as Machine>::u128x1; 4]> + Vec4<<SseMachine<S3, S4, NI> as Machine>::u128x1> + Into<<SseMachine<S3, S4, NI> as Machine>::u32x4x4> + Into<<SseMachine<S3, S4, NI> as Machine>::u64x2x4>,
impl<S3: Copy, S4: Copy, NI: Copy> u32x4x4<SseMachine<S3, S4, NI>> for x4<u32x4_sse2<S3, S4, NI>>where
u32x4_sse2<S3, S4, NI>: RotateEachWord32 + BSwap,
SseMachine<S3, S4, NI>: Machine,
x4<u32x4_sse2<S3, S4, NI>>: MultiLane<[<SseMachine<S3, S4, NI> as Machine>::u32x4; 4]> + Vec4<<SseMachine<S3, S4, NI> as Machine>::u32x4> + Vec4Ext<<SseMachine<S3, S4, NI> as Machine>::u32x4> + Vector<[u32; 16]>,
impl<NI: Copy> u64x2x4<Avx2Machine<NI>> for x4<u64x2_sse2<YesS3, YesS4, NI>>where
u64x2_sse2<YesS3, YesS4, NI>: RotateEachWord64 + RotateEachWord32 + BSwap,
Avx2Machine<NI>: Machine,
x4<u64x2_sse2<YesS3, YesS4, NI>>: MultiLane<[<Avx2Machine<NI> as Machine>::u64x2; 4]> + Vec4<<Avx2Machine<NI> as Machine>::u64x2>,
impl<S3: Copy, S4: Copy, NI: Copy> u64x2x4<SseMachine<S3, S4, NI>> for x4<u64x2_sse2<S3, S4, NI>>where
u64x2_sse2<S3, S4, NI>: RotateEachWord64 + RotateEachWord32 + BSwap,
SseMachine<S3, S4, NI>: Machine,
x4<u64x2_sse2<S3, S4, NI>>: MultiLane<[<SseMachine<S3, S4, NI> as Machine>::u64x2; 4]> + Vec4<<SseMachine<S3, S4, NI> as Machine>::u64x2>,
Auto Trait Implementations§
impl<W> Freeze for x4<W>where
W: Freeze,
impl<W> RefUnwindSafe for x4<W>where
W: RefUnwindSafe,
impl<W> Send for x4<W>where
W: Send,
impl<W> Sync for x4<W>where
W: Sync,
impl<W> Unpin for x4<W>where
W: Unpin,
impl<W> UnwindSafe for x4<W>where
W: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more