Trait SimdMutPtr

pub trait SimdMutPtr: Copy

Operations on SIMD vectors of mutable pointers.

Associated Types

type Usize;

Vector of usize with the same number of elements.

type Isize;

Vector of isize with the same number of elements.

type CastPtr<T>;

Vector of const pointers with the same number of elements.

type ConstPtr;

Vector of constant pointers to the same type.

type Mask;

Mask type used for manipulating this SIMD vector type.

Required Methods

fn is_null(self) -> Self::Mask

Returns true for each element that is null.

fn cast<T>(self) -> Self::CastPtr<T>

Casts to a pointer of another type.

Equivalent to calling pointer::cast on each element.

fn cast_const(self) -> Self::ConstPtr

Changes constness without changing the type.

Equivalent to calling pointer::cast_const on each element.

fn addr(self) -> Self::Usize

Gets the "address" portion of the pointer.

Equivalent to calling pointer::addr on each element.

fn with_addr(self, addr: Self::Usize) -> Self

Creates a new pointer with the given address.

Equivalent to calling pointer::with_addr on each element.

fn expose_provenance(self) -> Self::Usize

Exposes the "provenance" part of the pointer for future use in super::with_exposed_provenance_mut and returns the "address" portion.

Equivalent to calling pointer::expose_provenance on each element.

See super::with_exposed_provenance_mut for the matching constructor.

fn wrapping_offset(self, offset: Self::Isize) -> Self

Calculates the offset from a pointer using wrapping arithmetic.

Equivalent to calling pointer::wrapping_offset on each element.

fn wrapping_add(self, count: Self::Usize) -> Self

Calculates the offset from a pointer using wrapping arithmetic.

Equivalent to calling pointer::wrapping_add on each element.

fn wrapping_sub(self, count: Self::Usize) -> Self

Calculates the offset from a pointer using wrapping arithmetic.

Equivalent to calling pointer::wrapping_sub on each element.

Implementors