Trait SimdConstPtr
pub trait SimdConstPtr: Copy
Operations on SIMD vectors of constant pointers.
Associated Types
type Usize;Vector of
usizewith the same number of elements.type Isize;Vector of
isizewith the same number of elements.type CastPtr<T>;Vector of const pointers with the same number of elements.
type MutPtr;Vector of mutable pointers to the same type.
type Mask;Mask type used for manipulating this SIMD vector type.
Required Methods
fn is_null(self) -> Self::MaskReturns
truefor each element that is null.fn cast<T>(self) -> Self::CastPtr<T>Casts to a pointer of another type.
Equivalent to calling
pointer::caston each element.fn cast_mut(self) -> Self::MutPtrChanges constness without changing the type.
Equivalent to calling
pointer::cast_muton each element.fn addr(self) -> Self::UsizeGets the "address" portion of the pointer.
Equivalent to calling
pointer::addron each element.fn with_addr(self, addr: Self::Usize) -> SelfCreates a new pointer with the given address.
Equivalent to calling
pointer::with_addron each element.fn expose_provenance(self) -> Self::UsizeExposes the "provenance" part of the pointer for future use in
super::with_exposed_provenanceand returns the "address" portion.Equivalent to calling
pointer::expose_provenanceon each element.See
super::with_exposed_provenancefor the matching constructor.fn wrapping_offset(self, offset: Self::Isize) -> SelfCalculates the offset from a pointer using wrapping arithmetic.
Equivalent to calling
pointer::wrapping_offseton each element.fn wrapping_add(self, count: Self::Usize) -> SelfCalculates the offset from a pointer using wrapping arithmetic.
Equivalent to calling
pointer::wrapping_addon each element.fn wrapping_sub(self, count: Self::Usize) -> SelfCalculates the offset from a pointer using wrapping arithmetic.
Equivalent to calling
pointer::wrapping_subon each element.
Implementors
impl<T, const N: usize> SimdConstPtr for Simd<*const T, N>