Struct slice_utils::Interleave 
source · pub struct Interleave<S1, S2>(pub S1, pub S2);Expand description
Two interleaved slices; see Slice::interleave.
Tuple Fields§
§0: S1§1: S2Trait Implementations§
source§impl<T, S, S2> Debug for Interleave<S, S2>
 
impl<T, S, S2> Debug for Interleave<S, S2>
source§impl<T, S, S2> Index<usize> for Interleave<S, S2>where
    S: SliceBorrowed<Output = T>,
    S2: SliceBorrowed<Output = T>,
 
impl<T, S, S2> Index<usize> for Interleave<S, S2>where
    S: SliceBorrowed<Output = T>,
    S2: SliceBorrowed<Output = T>,
source§impl<T, S, S2> IndexMut<usize> for Interleave<S, S2>
 
impl<T, S, S2> IndexMut<usize> for Interleave<S, S2>
source§impl<T, S, O, V, S2> PartialEq<O> for Interleave<S, S2>
 
impl<T, S, O, V, S2> PartialEq<O> for Interleave<S, S2>
source§impl<S1, S2> Slice for Interleave<S1, S2>
 
impl<S1, S2> Slice for Interleave<S1, S2>
§type Output = <S1 as Slice>::Output
 
type Output = <S1 as Slice>::Output
The type this slice returns; analagous to
Index::Output.source§fn get_with<W: FnMut(&Self::Output) -> R, R>(
    &self,
    index: usize,
    f: &mut W
) -> Option<R>
 
fn get_with<W: FnMut(&Self::Output) -> R, R>( &self, index: usize, f: &mut W ) -> Option<R>
Call a closure with the indicated element, returning the result or
None if the index was out-of-bounds. Read moresource§fn chain<S: Slice<Output = Self::Output>>(self, other: S) -> Chain<Self, S>where
    Self: Sized,
 
fn chain<S: Slice<Output = Self::Output>>(self, other: S) -> Chain<Self, S>where
    Self: Sized,
Chains two slices together, back-to-back. Read more
source§fn interleave<S: Slice<Output = Self::Output>>(
    self,
    other: S
) -> Interleave<Self, S>where
    Self: Sized,
 
fn interleave<S: Slice<Output = Self::Output>>(
    self,
    other: S
) -> Interleave<Self, S>where
    Self: Sized,
Interleaves two slices, e.g. [A, B, A, B, …]. Read more
source§impl<S1, S2> SliceBorrowed for Interleave<S1, S2>
 
impl<S1, S2> SliceBorrowed for Interleave<S1, S2>
source§fn get(&self, index: usize) -> Option<&Self::Output>
 
fn get(&self, index: usize) -> Option<&Self::Output>
Index the slice, returning a borrowed value.
source§fn array_chunks<const N: usize>(&self) -> ArrayChunksBorrowed<'_, Self, N> ⓘ
 
fn array_chunks<const N: usize>(&self) -> ArrayChunksBorrowed<'_, Self, N> ⓘ
Return an iterator over arrays covering consecutive portions of the
slice. Read more
source§fn array_windows<const N: usize>(&self) -> ArrayWindowsBorrowed<'_, Self, N> ⓘ
 
fn array_windows<const N: usize>(&self) -> ArrayWindowsBorrowed<'_, Self, N> ⓘ
Return a slice/iterator over arrays covering overlapping portions of the
slice. Read more
source§fn chunks(&self, size: usize) -> ChunksBorrowed<'_, Self> ⓘ
 
fn chunks(&self, size: usize) -> ChunksBorrowed<'_, Self> ⓘ
Return an iterator over slices covering consecutive portions of the
slice. Read more
source§impl<S1, S2> SliceMut for Interleave<S1, S2>
 
impl<S1, S2> SliceMut for Interleave<S1, S2>
source§impl<S1, S2> SliceOwned for Interleave<S1, S2>
 
impl<S1, S2> SliceOwned for Interleave<S1, S2>
source§fn get_owned(&self, index: usize) -> Option<Self::Output>
 
fn get_owned(&self, index: usize) -> Option<Self::Output>
Index the slice, returning an owned value.
source§fn array_chunks<const N: usize>(self) -> ArrayChunksOwned<Self, N> ⓘwhere
    Self: Sized,
 
fn array_chunks<const N: usize>(self) -> ArrayChunksOwned<Self, N> ⓘwhere
    Self: Sized,
Return an iterator over arrays covering consecutive portions of the
slice. Read more
source§fn array_windows<const N: usize>(self) -> ArrayWindowsOwned<Self, N> ⓘwhere
    Self: Sized,
 
fn array_windows<const N: usize>(self) -> ArrayWindowsOwned<Self, N> ⓘwhere
    Self: Sized,
Return a slice/iterator over arrays covering overlapping portions of the
slice. Read more
source§fn chunks(&self, size: usize) -> ChunksOwned<'_, Self> ⓘ
 
fn chunks(&self, size: usize) -> ChunksOwned<'_, Self> ⓘ
Return an iterator over slices covering consecutive portions of the
slice. Read more
source§fn map<F: Fn(Self::Output) -> R, R>(self, f: F) -> MapOwned<Self, F>where
    Self: Sized,
 
fn map<F: Fn(Self::Output) -> R, R>(self, f: F) -> MapOwned<Self, F>where
    Self: Sized,
Call a closure on index, returning a new type. Read more
source§fn iter(self) -> IterOwned<Self> ⓘwhere
    Self: Sized,
 
fn iter(self) -> IterOwned<Self> ⓘwhere
    Self: Sized,
Creates an iterator over the slice. Read more
source§fn try_array<const N: usize>(&self) -> Option<[Self::Output; N]>
 
fn try_array<const N: usize>(&self) -> Option<[Self::Output; N]>
Try to collect the slice into an array, failing if the lengths don’t
match up. Read more
Auto Trait Implementations§
impl<S1, S2> Freeze for Interleave<S1, S2>
impl<S1, S2> RefUnwindSafe for Interleave<S1, S2>where
    S1: RefUnwindSafe,
    S2: RefUnwindSafe,
impl<S1, S2> Send for Interleave<S1, S2>
impl<S1, S2> Sync for Interleave<S1, S2>
impl<S1, S2> Unpin for Interleave<S1, S2>
impl<S1, S2> UnwindSafe for Interleave<S1, S2>where
    S1: UnwindSafe,
    S2: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more