Struct imbl_sized_chunks::ring_buffer::SliceMut
source · pub struct SliceMut<'a, A, const N: usize> { /* private fields */ }
Expand description
An indexable representation of a mutable subset of a RingBuffer
.
Implementations§
source§impl<'a, A: 'a, const N: usize> SliceMut<'a, A, N>
impl<'a, A: 'a, const N: usize> SliceMut<'a, A, N>
sourcepub unsafe fn get_unchecked(&self, index: usize) -> &A
pub unsafe fn get_unchecked(&self, index: usize) -> &A
Get an unchecked reference to the value at the given index.
Safety
You must ensure the index is not out of bounds.
sourcepub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut A
pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut A
Get an unchecked mutable reference to the value at the given index.
Safety
You must ensure the index is not out of bounds.
sourcepub fn iter(&self) -> Iter<'_, A, N> ⓘ
pub fn iter(&self) -> Iter<'_, A, N> ⓘ
Get an iterator over references to the items in the slice in order.
sourcepub fn iter_mut(&mut self) -> IterMut<'_, A, N> ⓘ
pub fn iter_mut(&mut self) -> IterMut<'_, A, N> ⓘ
Get an iterator over mutable references to the items in the slice in order.
sourcepub fn slice<R: RangeBounds<usize>>(self, range: R) -> SliceMut<'a, A, N>
pub fn slice<R: RangeBounds<usize>>(self, range: R) -> SliceMut<'a, A, N>
Create a subslice of this slice.
This consumes the slice. Because the slice works like a mutable
reference, you can only have one slice over a given subset of a
RingBuffer
at any one time, so that’s just how it’s got to be.
sourcepub fn split_at(self, index: usize) -> (SliceMut<'a, A, N>, SliceMut<'a, A, N>)
pub fn split_at(self, index: usize) -> (SliceMut<'a, A, N>, SliceMut<'a, A, N>)
Split the slice into two subslices at the given index.
sourcepub fn to_owned(&self) -> RingBuffer<A, N>where
A: Clone,
pub fn to_owned(&self) -> RingBuffer<A, N>where
A: Clone,
Construct a new RingBuffer
by copying the elements in this slice.
Trait Implementations§
source§impl<'a, A: 'a, const N: usize> Array for SliceMut<'a, A, N>
impl<'a, A: 'a, const N: usize> Array for SliceMut<'a, A, N>
source§fn binary_search_by<F>(&self, compare: F) -> Result<usize, usize>
fn binary_search_by<F>(&self, compare: F) -> Result<usize, usize>
source§fn binary_search_by_key<K, F>(
&self,
key: &K,
extract: F
) -> Result<usize, usize>
fn binary_search_by_key<K, F>( &self, key: &K, extract: F ) -> Result<usize, usize>
source§fn is_sorted_by<F>(&self, compare: F) -> bool
fn is_sorted_by<F>(&self, compare: F) -> bool
source§fn is_sorted_by_key<K, F>(&self, extract: F) -> bool
fn is_sorted_by_key<K, F>(&self, extract: F) -> bool
source§impl<'a, A: 'a, const N: usize> ArrayMut for SliceMut<'a, A, N>
impl<'a, A: 'a, const N: usize> ArrayMut for SliceMut<'a, A, N>
source§fn get_mut(&mut self, index: usize) -> Option<&mut A>
fn get_mut(&mut self, index: usize) -> Option<&mut A>
Get a mutable reference to the value at a given index.
source§fn first_mut(&mut self) -> Option<&mut Self::Output>
fn first_mut(&mut self) -> Option<&mut Self::Output>
source§impl<'a, A: 'a, const N: usize> From<&'a mut RingBuffer<A, N>> for SliceMut<'a, A, N>
impl<'a, A: 'a, const N: usize> From<&'a mut RingBuffer<A, N>> for SliceMut<'a, A, N>
source§fn from(buffer: &'a mut RingBuffer<A, N>) -> Self
fn from(buffer: &'a mut RingBuffer<A, N>) -> Self
source§impl<'a, 'b, A: 'a, const N: usize> IntoIterator for &'a SliceMut<'a, A, N>
impl<'a, 'b, A: 'a, const N: usize> IntoIterator for &'a SliceMut<'a, A, N>
source§impl<'a, 'b, A: 'a, const N: usize> IntoIterator for &'a mut SliceMut<'a, A, N>
impl<'a, 'b, A: 'a, const N: usize> IntoIterator for &'a mut SliceMut<'a, A, N>
source§impl<'a, A: Ord + 'a, const N: usize> Ord for SliceMut<'a, A, N>
impl<'a, A: Ord + 'a, const N: usize> Ord for SliceMut<'a, A, N>
source§impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<RingBuffer<A, N>> for SliceMut<'a, A, N>
impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<RingBuffer<A, N>> for SliceMut<'a, A, N>
source§fn eq(&self, other: &RingBuffer<A, N>) -> bool
fn eq(&self, other: &RingBuffer<A, N>) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<Slice<'a, A, N>> for SliceMut<'a, A, N>
impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<Slice<'a, A, N>> for SliceMut<'a, A, N>
source§impl<A, const N: usize> PartialEq<SliceMut<'_, A, N>> for RingBuffer<A, N>where
A: PartialEq,
impl<A, const N: usize> PartialEq<SliceMut<'_, A, N>> for RingBuffer<A, N>where
A: PartialEq,
source§impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<SliceMut<'a, A, N>> for Slice<'a, A, N>
impl<'a, A: PartialEq + 'a, const N: usize> PartialEq<SliceMut<'a, A, N>> for Slice<'a, A, N>
source§impl<'a, A: PartialEq + 'a, const N: usize> PartialEq for SliceMut<'a, A, N>
impl<'a, A: PartialEq + 'a, const N: usize> PartialEq for SliceMut<'a, A, N>
source§impl<'a, A: PartialOrd + 'a, const N: usize> PartialOrd for SliceMut<'a, A, N>
impl<'a, A: PartialOrd + 'a, const N: usize> PartialOrd for SliceMut<'a, A, N>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more