#[repr(simd)]pub(crate) struct Simd<T: SimdElement, const N: usize>([T; N]);Tuple Fields§
§0: [T; N]Implementations§
Source§impl<T: SimdElement, const N: usize> Simd<T, N>
impl<T: SimdElement, const N: usize> Simd<T, N>
pub(crate) const fn from_array(elements: [T; N]) -> Self
pub(crate) const fn splat(value: T) -> Self
Sourcepub(crate) const fn extract_dyn(&self, index: usize) -> T
pub(crate) const fn extract_dyn(&self, index: usize) -> T
Extract the element at position index. Note that index is not a constant so this
operation is not efficient on most platforms. Use for testing only.
pub(crate) const fn as_array(&self) -> &[T; N]
Source§impl Simd<u8, 32>
impl Simd<u8, 32>
pub(crate) const fn new( x0: u8, x1: u8, x2: u8, x3: u8, x4: u8, x5: u8, x6: u8, x7: u8, x8: u8, x9: u8, x10: u8, x11: u8, x12: u8, x13: u8, x14: u8, x15: u8, x16: u8, x17: u8, x18: u8, x19: u8, x20: u8, x21: u8, x22: u8, x23: u8, x24: u8, x25: u8, x26: u8, x27: u8, x28: u8, x29: u8, x30: u8, x31: u8, ) -> Self
Source§impl Simd<i8, 32>
impl Simd<i8, 32>
pub(crate) const fn new( x0: i8, x1: i8, x2: i8, x3: i8, x4: i8, x5: i8, x6: i8, x7: i8, x8: i8, x9: i8, x10: i8, x11: i8, x12: i8, x13: i8, x14: i8, x15: i8, x16: i8, x17: i8, x18: i8, x19: i8, x20: i8, x21: i8, x22: i8, x23: i8, x24: i8, x25: i8, x26: i8, x27: i8, x28: i8, x29: i8, x30: i8, x31: i8, ) -> Self
Source§impl Simd<i8, 64>
impl Simd<i8, 64>
pub(crate) const fn new( x0: i8, x1: i8, x2: i8, x3: i8, x4: i8, x5: i8, x6: i8, x7: i8, x8: i8, x9: i8, x10: i8, x11: i8, x12: i8, x13: i8, x14: i8, x15: i8, x16: i8, x17: i8, x18: i8, x19: i8, x20: i8, x21: i8, x22: i8, x23: i8, x24: i8, x25: i8, x26: i8, x27: i8, x28: i8, x29: i8, x30: i8, x31: i8, x32: i8, x33: i8, x34: i8, x35: i8, x36: i8, x37: i8, x38: i8, x39: i8, x40: i8, x41: i8, x42: i8, x43: i8, x44: i8, x45: i8, x46: i8, x47: i8, x48: i8, x49: i8, x50: i8, x51: i8, x52: i8, x53: i8, x54: i8, x55: i8, x56: i8, x57: i8, x58: i8, x59: i8, x60: i8, x61: i8, x62: i8, x63: i8, ) -> Self
Source§impl Simd<u8, 64>
impl Simd<u8, 64>
pub(crate) const fn new( x0: u8, x1: u8, x2: u8, x3: u8, x4: u8, x5: u8, x6: u8, x7: u8, x8: u8, x9: u8, x10: u8, x11: u8, x12: u8, x13: u8, x14: u8, x15: u8, x16: u8, x17: u8, x18: u8, x19: u8, x20: u8, x21: u8, x22: u8, x23: u8, x24: u8, x25: u8, x26: u8, x27: u8, x28: u8, x29: u8, x30: u8, x31: u8, x32: u8, x33: u8, x34: u8, x35: u8, x36: u8, x37: u8, x38: u8, x39: u8, x40: u8, x41: u8, x42: u8, x43: u8, x44: u8, x45: u8, x46: u8, x47: u8, x48: u8, x49: u8, x50: u8, x51: u8, x52: u8, x53: u8, x54: u8, x55: u8, x56: u8, x57: u8, x58: u8, x59: u8, x60: u8, x61: u8, x62: u8, x63: u8, ) -> Self
Source§impl Simd<i16, 32>
impl Simd<i16, 32>
pub(crate) const fn new( x0: i16, x1: i16, x2: i16, x3: i16, x4: i16, x5: i16, x6: i16, x7: i16, x8: i16, x9: i16, x10: i16, x11: i16, x12: i16, x13: i16, x14: i16, x15: i16, x16: i16, x17: i16, x18: i16, x19: i16, x20: i16, x21: i16, x22: i16, x23: i16, x24: i16, x25: i16, x26: i16, x27: i16, x28: i16, x29: i16, x30: i16, x31: i16, ) -> Self
Source§impl Simd<u16, 32>
impl Simd<u16, 32>
pub(crate) const fn new( x0: u16, x1: u16, x2: u16, x3: u16, x4: u16, x5: u16, x6: u16, x7: u16, x8: u16, x9: u16, x10: u16, x11: u16, x12: u16, x13: u16, x14: u16, x15: u16, x16: u16, x17: u16, x18: u16, x19: u16, x20: u16, x21: u16, x22: u16, x23: u16, x24: u16, x25: u16, x26: u16, x27: u16, x28: u16, x29: u16, x30: u16, x31: u16, ) -> Self
Source§impl Simd<f16, 32>
impl Simd<f16, 32>
pub(crate) const fn new( x0: f16, x1: f16, x2: f16, x3: f16, x4: f16, x5: f16, x6: f16, x7: f16, x8: f16, x9: f16, x10: f16, x11: f16, x12: f16, x13: f16, x14: f16, x15: f16, x16: f16, x17: f16, x18: f16, x19: f16, x20: f16, x21: f16, x22: f16, x23: f16, x24: f16, x25: f16, x26: f16, x27: f16, x28: f16, x29: f16, x30: f16, x31: f16, ) -> Self
Source§impl Simd<u16, 64>
impl Simd<u16, 64>
pub(crate) const fn new( x0: u16, x1: u16, x2: u16, x3: u16, x4: u16, x5: u16, x6: u16, x7: u16, x8: u16, x9: u16, x10: u16, x11: u16, x12: u16, x13: u16, x14: u16, x15: u16, x16: u16, x17: u16, x18: u16, x19: u16, x20: u16, x21: u16, x22: u16, x23: u16, x24: u16, x25: u16, x26: u16, x27: u16, x28: u16, x29: u16, x30: u16, x31: u16, x32: u16, x33: u16, x34: u16, x35: u16, x36: u16, x37: u16, x38: u16, x39: u16, x40: u16, x41: u16, x42: u16, x43: u16, x44: u16, x45: u16, x46: u16, x47: u16, x48: u16, x49: u16, x50: u16, x51: u16, x52: u16, x53: u16, x54: u16, x55: u16, x56: u16, x57: u16, x58: u16, x59: u16, x60: u16, x61: u16, x62: u16, x63: u16, ) -> Self
Source§impl Simd<i32, 32>
impl Simd<i32, 32>
pub(crate) const fn new( x0: i32, x1: i32, x2: i32, x3: i32, x4: i32, x5: i32, x6: i32, x7: i32, x8: i32, x9: i32, x10: i32, x11: i32, x12: i32, x13: i32, x14: i32, x15: i32, x16: i32, x17: i32, x18: i32, x19: i32, x20: i32, x21: i32, x22: i32, x23: i32, x24: i32, x25: i32, x26: i32, x27: i32, x28: i32, x29: i32, x30: i32, x31: i32, ) -> Self
Source§impl Simd<u32, 32>
impl Simd<u32, 32>
pub(crate) const fn new( x0: u32, x1: u32, x2: u32, x3: u32, x4: u32, x5: u32, x6: u32, x7: u32, x8: u32, x9: u32, x10: u32, x11: u32, x12: u32, x13: u32, x14: u32, x15: u32, x16: u32, x17: u32, x18: u32, x19: u32, x20: u32, x21: u32, x22: u32, x23: u32, x24: u32, x25: u32, x26: u32, x27: u32, x28: u32, x29: u32, x30: u32, x31: u32, ) -> Self
Trait Implementations§
impl<T: Copy + SimdElement, const N: usize> Copy for Simd<T, N>
Auto Trait Implementations§
impl<T, const N: usize> Freeze for Simd<T, N>where
T: Freeze,
impl<T, const N: usize> RefUnwindSafe for Simd<T, N>where
T: RefUnwindSafe,
impl<T, const N: usize> Send for Simd<T, N>where
T: Send,
impl<T, const N: usize> Sync for Simd<T, N>where
T: Sync,
impl<T, const N: usize> Unpin for Simd<T, N>where
T: Unpin,
impl<T, const N: usize> UnsafeUnpin for Simd<T, N>where
T: UnsafeUnpin,
impl<T, const N: usize> UnwindSafe for Simd<T, N>where
T: 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)]const SIZE: usize = _
#[doc(hidden)]const SIZE: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGN: usize = _
#[doc(hidden)]const ALIGN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const ALIGNMENT: Alignment = _
#[doc(hidden)]const ALIGNMENT: Alignment = _
🔬This is a nightly-only experimental API. (
ptr_alignment_type #102070)Source§#[doc(hidden)]const IS_ZST: bool = _
#[doc(hidden)]const IS_ZST: bool = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const LAYOUT: Layout = _
#[doc(hidden)]const LAYOUT: Layout = _
🔬This is a nightly-only experimental API. (
sized_type_properties)Source§#[doc(hidden)]const MAX_SLICE_LEN: usize = _
#[doc(hidden)]const MAX_SLICE_LEN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties)The largest safe length for a
[Self]. Read more