[−][src]Struct vec_mut_scan::VecMutScanItem
Reference wrapper that enables item removal for VecMutScan
.
Implementations
impl<'s, 'a, T: 'a> VecMutScanItem<'s, 'a, T>
[src]
pub fn remove(self) -> T
[src]
Removes and returns this item from the vector.
pub fn replace(self, value: T) -> T
[src]
Replaces this item with a new value, returns the old value.
This is equivalent to assigning a new value or calling std::mem::replace
on the mutable
reference obtained by using DerefMut
, but can avoid an intermediate move within the
vector's buffer.
pub fn slices(&self) -> (&[T], &[T])
[src]
Access the whole vector.
This provides access to the whole vector at any point during the scan. In general while scanning, the vector content is not contiguous, thus it is returned as two slices, a prefix and a suffix. The prefix contains all elements already visited while the suffix contains the remaining elements starting with this element.
This method is also present on the VecMutScan
borrowed by this reference wrapper,
allowing access without an active VecMutScanItem
.
pub fn slices_mut(&mut self) -> (&mut [T], &mut [T])
[src]
Access and mutate the whole vector.
This provides mutable access to the whole vector at any point during the scan. In general while scanning, the vector content is not contiguous, thus it is returned as two slices, a prefix and a suffix. The prefix contains all elements already visited while the suffix contains the remaining elements starting with this element.
This method is also present on the VecMutScan
borrowed by this reference wrapper,
allowing access without an active VecMutScanItem
.
Trait Implementations
impl<'s, 'a, T: 'a> Deref for VecMutScanItem<'s, 'a, T>
[src]
impl<'s, 'a, T: 'a> DerefMut for VecMutScanItem<'s, 'a, T>
[src]
impl<'s, 'a, T: 'a> Drop for VecMutScanItem<'s, 'a, T>
[src]
Auto Trait Implementations
impl<'s, 'a, T> RefUnwindSafe for VecMutScanItem<'s, 'a, T> where
T: RefUnwindSafe,
[src]
T: RefUnwindSafe,
impl<'s, 'a, T> !Send for VecMutScanItem<'s, 'a, T>
[src]
impl<'s, 'a, T> !Sync for VecMutScanItem<'s, 'a, T>
[src]
impl<'s, 'a, T> Unpin for VecMutScanItem<'s, 'a, T> where
'a: 's,
[src]
'a: 's,
impl<'s, 'a, T> !UnwindSafe for VecMutScanItem<'s, 'a, T>
[src]
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, 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>,