Struct slipstream::iterators::MutProxy[][src]

pub struct MutProxy<'a, B, V> where
    V: AsRef<[B]>,
    B: Copy
{ /* fields omitted */ }

A proxy object for iterating over mutable slices.

For technical reasons (mostly alignment and padding), it’s not possible to return a simple reference. This type is returned instead and it can be used to both read and write the vectors a slice is turned into.

Note that the data are written in the destructor. Usually, this should not matter, but if you forget, the changes will be lost (this is meant as a warning, not as a way to implement poor-man’s transactions).

Trait Implementations

impl<'a, B: Debug, V: Debug> Debug for MutProxy<'a, B, V> where
    V: AsRef<[B]>,
    B: Copy
[src]

impl<B, V> Deref for MutProxy<'_, B, V> where
    V: AsRef<[B]>,
    B: Copy
[src]

type Target = V

The resulting type after dereferencing.

impl<B, V> DerefMut for MutProxy<'_, B, V> where
    V: AsRef<[B]>,
    B: Copy
[src]

impl<B, V> Drop for MutProxy<'_, B, V> where
    V: AsRef<[B]>,
    B: Copy
[src]

impl<'a, A: Align, B: Repr, const S: usize> Vectorizable<MutProxy<'a, B, Vector<A, B, S>>> for &'a mut [B][src]

type Vectorizer = WriteVectorizer<'a, A, B, S>

An internal type managing the splitting into vectors. Read more

type Padding = Vector<A, B, S>

The input type provided by user to fill in the padding/uneven end. Read more

Auto Trait Implementations

impl<'a, B, V> Send for MutProxy<'a, B, V> where
    B: Send,
    V: Send

impl<'a, B, V> Sync for MutProxy<'a, B, V> where
    B: Sync,
    V: Sync

impl<'a, B, V> Unpin for MutProxy<'a, B, V> where
    V: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.