Struct aligned_array::Aligned [−][src]
A newtype with alignment of at least A
bytes
Trait Implementations
impl<A, A2, N, M> AsAlignedChunks<A2, M> for Aligned<A, GenericArray<u8, N>> where
A: Alignment,
A2: Alignment,
A2::Num: IsLessOrEqual<A::Num, Output = B1>,
N: ArrayLength<u8>,
M: ArrayLength<u8> + PartialDiv<A2::Num>,
[src]
A: Alignment,
A2: Alignment,
A2::Num: IsLessOrEqual<A::Num, Output = B1>,
N: ArrayLength<u8>,
M: ArrayLength<u8> + PartialDiv<A2::Num>,
fn as_aligned_chunks(&self) -> &[Aligned<A2, GenericArray<u8, M>>]
[src]
fn as_mut_aligned_chunks(&mut self) -> &mut [Aligned<A2, GenericArray<u8, M>>]
[src]
impl<'a, A, A2, T> AsMut<Aligned<A, T>> for &'a mut Aligned<A2, T> where
A: Alignment,
A2: Alignment,
A::Num: IsLessOrEqual<A2::Num, Output = B1>,
[src]
A: Alignment,
A2: Alignment,
A::Num: IsLessOrEqual<A2::Num, Output = B1>,
impl<A, N> AsNeSlice for Aligned<A, GenericArray<u8, N>> where
A: Alignment,
A::Num: IsGreaterOrEqual<U8, Output = B1>,
N: ArrayLength<u8> + PartialDiv<U8>,
[src]
A: Alignment,
A::Num: IsGreaterOrEqual<U8, Output = B1>,
N: ArrayLength<u8> + PartialDiv<U8>,
fn as_ne_u16_slice(&self) -> &[u16]
[src]
fn as_mut_ne_u16_slice(&mut self) -> &mut [u16]
[src]
fn as_ne_u32_slice(&self) -> &[u32]
[src]
fn as_mut_ne_u32_slice(&mut self) -> &mut [u32]
[src]
fn as_ne_u64_slice(&self) -> &[u64]
[src]
fn as_mut_ne_u64_slice(&mut self) -> &mut [u64]
[src]
impl<'a, A, A2, T> AsRef<Aligned<A, T>> for &'a Aligned<A2, T> where
A: Alignment,
A2: Alignment,
A::Num: IsLessOrEqual<A2::Num, Output = B1>,
[src]
A: Alignment,
A2: Alignment,
A::Num: IsLessOrEqual<A2::Num, Output = B1>,
impl<A, T> Clone for Aligned<A, T> where
A: Alignment,
T: Clone,
[src]
A: Alignment,
T: Clone,
fn clone(&self) -> Self
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<A, T> Debug for Aligned<A, T> where
A: Alignment,
T: Debug,
[src]
A: Alignment,
T: Debug,
impl<A, T> Default for Aligned<A, T> where
A: Alignment,
T: Default,
[src]
A: Alignment,
T: Default,
impl<A, T> Deref for Aligned<A, T> where
A: Alignment,
T: ?Sized,
[src]
A: Alignment,
T: ?Sized,
impl<A, T> DerefMut for Aligned<A, T> where
A: Alignment,
T: ?Sized,
[src]
A: Alignment,
T: ?Sized,
impl<A, T> Display for Aligned<A, T> where
A: Alignment,
T: Display,
[src]
A: Alignment,
T: Display,
impl<A, T> Eq for Aligned<A, T> where
A: Alignment,
T: Eq,
[src]
A: Alignment,
T: Eq,
impl<A, T, V> FromIterator<V> for Aligned<A, T> where
A: Alignment,
T: FromIterator<V>,
[src]
A: Alignment,
T: FromIterator<V>,
fn from_iter<U: IntoIterator<Item = V>>(iter: U) -> Self
[src]
impl<A, T, N> GenericSequence<T> for Aligned<A, GenericArray<T, N>> where
N: ArrayLength<T>,
A: Alignment,
[src]
N: ArrayLength<T>,
A: Alignment,
Implement generic_array::GenericSequence for Aligned sequences
type Length = N
GenericArray
associated length
type Sequence = Self
Concrete sequence type used in conjuction with reference implementations of GenericSequence
fn generate<F>(f: F) -> Self::Sequence where
F: FnMut(usize) -> T,
[src]
F: FnMut(usize) -> T,
impl<A, T> Hash for Aligned<A, T> where
A: Alignment,
T: Hash,
[src]
A: Alignment,
T: Hash,
fn hash<H: Hasher>(&self, state: &mut H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<A, T> Index<RangeTo<usize>> for Aligned<A, [T]> where
A: Alignment,
[src]
A: Alignment,
type Output = Aligned<A, [T]>
The returned type after indexing.
fn index(&self, range: RangeTo<usize>) -> &Aligned<A, [T]>
[src]
impl<A, T> IntoIterator for Aligned<A, T> where
A: Alignment,
T: IntoIterator,
[src]
A: Alignment,
T: IntoIterator,
type Item = T::Item
The type of the elements being iterated over.
type IntoIter = T::IntoIter
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<'a, A, T> IntoIterator for &'a Aligned<A, T> where
A: Alignment,
&'a T: IntoIterator,
[src]
A: Alignment,
&'a T: IntoIterator,
type Item = <&'a T as IntoIterator>::Item
The type of the elements being iterated over.
type IntoIter = <&'a T as IntoIterator>::IntoIter
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<'a, A, T> IntoIterator for &'a mut Aligned<A, T> where
A: Alignment,
&'a mut T: IntoIterator,
[src]
A: Alignment,
&'a mut T: IntoIterator,
type Item = <&'a mut T as IntoIterator>::Item
The type of the elements being iterated over.
type IntoIter = <&'a mut T as IntoIterator>::IntoIter
Which kind of iterator are we turning this into?
fn into_iter(self) -> Self::IntoIter
[src]
impl<A, T> Ord for Aligned<A, T> where
A: Alignment,
T: Ord,
[src]
A: Alignment,
T: Ord,
fn cmp(&self, other: &Self) -> Ordering
[src]
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl<A, T> PartialEq<Aligned<A, T>> for Aligned<A, T> where
A: Alignment,
T: PartialEq,
[src]
A: Alignment,
T: PartialEq,
impl<A, T> PartialOrd<Aligned<A, T>> for Aligned<A, T> where
A: Alignment,
T: PartialOrd,
[src]
A: Alignment,
T: PartialOrd,
fn partial_cmp(&self, other: &Self) -> Option<Ordering>
[src]
#[must_use]pub fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]pub fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl<'a, A, N, K> Split<u8, K> for &'a Aligned<A, GenericArray<u8, N>> where
A: Alignment,
N: ArrayLength<u8> + Sub<K>,
K: ArrayLength<u8> + PartialDiv<A::Num> + 'static,
Diff<N, K>: ArrayLength<u8>,
[src]
A: Alignment,
N: ArrayLength<u8> + Sub<K>,
K: ArrayLength<u8> + PartialDiv<A::Num> + 'static,
Diff<N, K>: ArrayLength<u8>,
Implement generic_array::Split api for aligned bytes in a way that preserves aligment info TODO: This could be more generic, but we didn't need it yet. Instead of u8, a generic value T?
type First = &'a Aligned<A, GenericArray<u8, K>>
First part of the resulting split array
type Second = &'a Aligned<A, GenericArray<u8, Diff<N, K>>>
Second part of the resulting split array
fn split(self) -> (Self::First, Self::Second)
[src]
impl<'a, A, N, K> Split<u8, K> for &'a mut Aligned<A, GenericArray<u8, N>> where
A: Alignment,
N: ArrayLength<u8> + Sub<K>,
K: ArrayLength<u8> + PartialDiv<A::Num> + 'static,
Diff<N, K>: ArrayLength<u8>,
[src]
A: Alignment,
N: ArrayLength<u8> + Sub<K>,
K: ArrayLength<u8> + PartialDiv<A::Num> + 'static,
Diff<N, K>: ArrayLength<u8>,
Implement generic_array::Split API for aligned bytes in a way that preserves aligment info TODO: This could be more generic, but we didn't need it yet. Instead of u8, a generic value T?
type First = &'a mut Aligned<A, GenericArray<u8, K>>
First part of the resulting split array
type Second = &'a mut Aligned<A, GenericArray<u8, Diff<N, K>>>
Second part of the resulting split array
fn split(self) -> (Self::First, Self::Second)
[src]
Auto Trait Implementations
impl<A, T: ?Sized> Send for Aligned<A, T> where
A: Send,
T: Send,
[src]
A: Send,
T: Send,
impl<A, T: ?Sized> Sync for Aligned<A, T> where
A: Sync,
T: Sync,
[src]
A: Sync,
T: Sync,
impl<A, T: ?Sized> Unpin for Aligned<A, T> where
A: Unpin,
T: Unpin,
[src]
A: Unpin,
T: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,