Struct slice_utils::Interleave
source · pub struct Interleave<T, A, B> {
pub left: A,
pub right: B,
/* private fields */
}
Expand description
Two interleaved slices, from Slice::interleave
.
Fields§
§left: A
§right: B
Implementations§
Trait Implementations§
source§impl<T, A, B> Debug for Interleave<T, A, B>
impl<T, A, B> Debug for Interleave<T, A, B>
source§impl<T, A, B> Index<usize> for Interleave<T, A, B>
impl<T, A, B> Index<usize> for Interleave<T, A, B>
source§impl<T, A, B> IndexMut<usize> for Interleave<T, A, B>
impl<T, A, B> IndexMut<usize> for Interleave<T, A, B>
source§impl<'a, T, A, B> PartialEq<&'a [T]> for Interleave<T, A, B>
impl<'a, T, A, B> PartialEq<&'a [T]> for Interleave<T, A, B>
source§impl<T, A, B> PartialEq<[T]> for Interleave<T, A, B>
impl<T, A, B> PartialEq<[T]> for Interleave<T, A, B>
source§impl<T, A, B, const N: usize> PartialEq<[T; N]> for Interleave<T, A, B>
impl<T, A, B, const N: usize> PartialEq<[T; N]> for Interleave<T, A, B>
source§impl<T, A, B> Slice<T> for Interleave<T, A, B>
impl<T, A, B> Slice<T> for Interleave<T, A, B>
source§fn slice<R: RangeBounds<usize>>(self, range: R) -> Option<SliceOf<T, Self>>
fn slice<R: RangeBounds<usize>>(self, range: R) -> Option<SliceOf<T, Self>>
Takes a sub-slice, returning
None
if the range is out-of-bounds. Read moresource§fn chain<O: Slice<T>>(self, other: O) -> Chain<T, Self, O>
fn chain<O: Slice<T>>(self, other: O) -> Chain<T, Self, O>
Chains two slices together, back-to-back: the equivalent of
Iterator::chain
. Read moresource§fn cycle(self) -> Cycle<T, Self>
fn cycle(self) -> Cycle<T, Self>
Repeats the slice forever: the equivalent of
Iterator::cycle
. Read moresource§fn interleave<O: Slice<T>>(self, other: O) -> Interleave<T, Self, O>
fn interleave<O: Slice<T>>(self, other: O) -> Interleave<T, Self, O>
Interleaves two slices, e.g. [A, B, A, B, …]. Read more
source§fn reverse(self) -> Reverse<T, Self>
fn reverse(self) -> Reverse<T, Self>
Reverses the slice: the equivalent of
Iterator::rev
. Read moresource§impl<T, A, B> SliceMut<T> for Interleave<T, A, B>
impl<T, A, B> SliceMut<T> for Interleave<T, A, B>
source§fn slice_mut<R: RangeBounds<usize>>(
self,
range: R
) -> Option<SliceOfMut<T, Self>>
fn slice_mut<R: RangeBounds<usize>>( self, range: R ) -> Option<SliceOfMut<T, Self>>
Takes a mutable sub-slice, returning
None
if the range is out-of-bounds. Read moreAuto Trait Implementations§
impl<T, A, B> Freeze for Interleave<T, A, B>
impl<T, A, B> RefUnwindSafe for Interleave<T, A, B>where
A: RefUnwindSafe,
B: RefUnwindSafe,
impl<T, A, B> Send for Interleave<T, A, B>
impl<T, A, B> Sync for Interleave<T, A, B>
impl<T, A, B> Unpin for Interleave<T, A, B>
impl<T, A, B> UnwindSafe for Interleave<T, A, B>where
A: UnwindSafe,
B: 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