Trait Pointer

Source
pub trait Pointer<Token, Width>: Copy
where Token: Token, Width: Width,
{ type Vector: Vector<Token = Token, Width = Width>; // Required methods unsafe fn vector_read(self, token: Token) -> Self::Vector; unsafe fn vector_read_aligned(self, token: Token) -> Self::Vector; }
Expand description

A pointer to a vector.

Required Associated Types§

Source

type Vector: Vector<Token = Token, Width = Width>

Required Methods§

Source

unsafe fn vector_read(self, token: Token) -> Self::Vector

Read a vector from a pointer.

§Safety

See read_ptr.

Source

unsafe fn vector_read_aligned(self, token: Token) -> Self::Vector

Read a vector from a vector-aligned pointer.

§Safety

See read_aligned_ptr.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T, Token, Width> Pointer<Token, Width> for *const T
where T: Scalar<Token, Width>, Token: Token, Width: Width,

Source§

type Vector = <T as Scalar<Token, Width>>::Vector

Source§

unsafe fn vector_read(self, token: Token) -> Self::Vector

Source§

unsafe fn vector_read_aligned(self, token: Token) -> Self::Vector

Source§

impl<T, Token, Width> Pointer<Token, Width> for *mut T
where T: Scalar<Token, Width>, Token: Token, Width: Width,

Source§

type Vector = <T as Scalar<Token, Width>>::Vector

Source§

unsafe fn vector_read(self, token: Token) -> Self::Vector

Source§

unsafe fn vector_read_aligned(self, token: Token) -> Self::Vector

Implementors§