pub trait PointerExt<Token>:
Native<Token>
+ Pointer<Token, W1>
+ Pointer<Token, W2>
+ Pointer<Token, W4>
+ Pointer<Token, W8>
+ Pointer<Token, NativeWidth<Self, Token>>where
Token: Token,{
// Provided methods
unsafe fn vector_read_native(
self,
token: Token,
) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector { ... }
unsafe fn vector_read_aligned_native(
self,
token: Token,
) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector { ... }
unsafe fn vector_read1(
self,
token: Token,
) -> <Self as Pointer<Token, W1>>::Vector { ... }
unsafe fn vector_read1_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W1>>::Vector { ... }
unsafe fn vector_read2(
self,
token: Token,
) -> <Self as Pointer<Token, W2>>::Vector { ... }
unsafe fn vector_read2_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W2>>::Vector { ... }
unsafe fn vector_read4(
self,
token: Token,
) -> <Self as Pointer<Token, W4>>::Vector { ... }
unsafe fn vector_read4_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W4>>::Vector { ... }
unsafe fn vector_read8(
self,
token: Token,
) -> <Self as Pointer<Token, W8>>::Vector { ... }
unsafe fn vector_read8_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W8>>::Vector { ... }
}
Expand description
A pointer to a vector, supporting all vector widths.
Provided Methods§
Sourceunsafe fn vector_read_native(
self,
token: Token,
) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector
unsafe fn vector_read_native( self, token: Token, ) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector
Sourceunsafe fn vector_read_aligned_native(
self,
token: Token,
) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector
unsafe fn vector_read_aligned_native( self, token: Token, ) -> <Self as Pointer<Token, <Self as Native<Token>>::Width>>::Vector
Read a vector with the native number of lanes from a vector-aligned pointer.
§Safety
See read_aligned_ptr
.
Sourceunsafe fn vector_read1(
self,
token: Token,
) -> <Self as Pointer<Token, W1>>::Vector
unsafe fn vector_read1( self, token: Token, ) -> <Self as Pointer<Token, W1>>::Vector
Sourceunsafe fn vector_read1_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W1>>::Vector
unsafe fn vector_read1_aligned( self, token: Token, ) -> <Self as Pointer<Token, W1>>::Vector
Sourceunsafe fn vector_read2(
self,
token: Token,
) -> <Self as Pointer<Token, W2>>::Vector
unsafe fn vector_read2( self, token: Token, ) -> <Self as Pointer<Token, W2>>::Vector
Sourceunsafe fn vector_read2_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W2>>::Vector
unsafe fn vector_read2_aligned( self, token: Token, ) -> <Self as Pointer<Token, W2>>::Vector
Sourceunsafe fn vector_read4(
self,
token: Token,
) -> <Self as Pointer<Token, W4>>::Vector
unsafe fn vector_read4( self, token: Token, ) -> <Self as Pointer<Token, W4>>::Vector
Sourceunsafe fn vector_read4_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W4>>::Vector
unsafe fn vector_read4_aligned( self, token: Token, ) -> <Self as Pointer<Token, W4>>::Vector
Sourceunsafe fn vector_read8(
self,
token: Token,
) -> <Self as Pointer<Token, W8>>::Vector
unsafe fn vector_read8( self, token: Token, ) -> <Self as Pointer<Token, W8>>::Vector
Sourceunsafe fn vector_read8_aligned(
self,
token: Token,
) -> <Self as Pointer<Token, W8>>::Vector
unsafe fn vector_read8_aligned( self, token: Token, ) -> <Self as Pointer<Token, W8>>::Vector
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.