pub struct SubvectorView<V: VectorView<T>, T: ?Sized> { /* private fields */ }
Implementations§
Source§impl<V: VectorView<T>, T: ?Sized> SubvectorView<V, T>
impl<V: VectorView<T>, T: ?Sized> SubvectorView<V, T>
Trait Implementations§
Source§impl<V: Clone + VectorView<T>, T: ?Sized> Clone for SubvectorView<V, T>
impl<V: Clone + VectorView<T>, T: ?Sized> Clone for SubvectorView<V, T>
Source§impl<V: VectorView<T> + Debug, T: ?Sized> Debug for SubvectorView<V, T>
impl<V: VectorView<T> + Debug, T: ?Sized> Debug for SubvectorView<V, T>
Source§impl<V: VectorView<T>, T: ?Sized> SelfSubvectorView<T> for SubvectorView<V, T>
impl<V: VectorView<T>, T: ?Sized> SelfSubvectorView<T> for SubvectorView<V, T>
Source§fn restrict_full(self, range: Range<usize>) -> Self
fn restrict_full(self, range: Range<usize>) -> Self
Returns a
SelfSubvectorView
that represents the elements within the given range
of this vector.Source§fn restrict<R: RangeBounds<usize>>(self, range: R) -> Self
fn restrict<R: RangeBounds<usize>>(self, range: R) -> Self
Returns a
SelfSubvectorView
that represents the elements within the given range
of this vector.Source§impl<V: SwappableVectorViewMut<T>, T: ?Sized> SwappableVectorViewMut<T> for SubvectorView<V, T>
impl<V: SwappableVectorViewMut<T>, T: ?Sized> SwappableVectorViewMut<T> for SubvectorView<V, T>
Source§impl<V: VectorView<T>, T: ?Sized> VectorView<T> for SubvectorView<V, T>
impl<V: VectorView<T>, T: ?Sized> VectorView<T> for SubvectorView<V, T>
fn at(&self, i: usize) -> &T
fn len(&self) -> usize
Source§fn specialize_sparse<'a, Op: SparseVectorViewOperation<T>>(
&'a self,
op: Op,
) -> Result<Op::Output<'a>, ()>
fn specialize_sparse<'a, Op: SparseVectorViewOperation<T>>( &'a self, op: Op, ) -> Result<Op::Output<'a>, ()>
Source§fn as_slice<'a>(&'a self) -> Option<&'a [T]>where
T: Sized,
fn as_slice<'a>(&'a self) -> Option<&'a [T]>where
T: Sized,
If the underlying data of this
VectorView
can be represented as a slice,
returns it. Otherwise, None
is returned.Source§unsafe fn at_unchecked<'a>(&self, i: usize) -> &T
unsafe fn at_unchecked<'a>(&self, i: usize) -> &T
Source§fn as_iter<'a>(&'a self) -> VectorFnIter<VectorViewFn<'a, Self, T>, &'a T> ⓘ
fn as_iter<'a>(&'a self) -> VectorFnIter<VectorViewFn<'a, Self, T>, &'a T> ⓘ
Returns an iterator over all elements in this vector. Read more
Source§fn as_fn<'a>(&'a self) -> VectorViewFn<'a, Self, T>
fn as_fn<'a>(&'a self) -> VectorViewFn<'a, Self, T>
Converts this vector into a
VectorFn
that yields references &T
.Source§fn into_clone_ring_els<R: RingStore>(
self,
ring: R,
) -> CloneElFn<Self, T, CloneRingEl<R>>
fn into_clone_ring_els<R: RingStore>( self, ring: R, ) -> CloneElFn<Self, T, CloneRingEl<R>>
Moves this vector into a
VectorFn
that clones ring elements on access using
the given ring.Source§fn clone_ring_els<'a, R: RingStore>(
&'a self,
ring: R,
) -> CloneElFn<&'a Self, T, CloneRingEl<R>>
fn clone_ring_els<'a, R: RingStore>( &'a self, ring: R, ) -> CloneElFn<&'a Self, T, CloneRingEl<R>>
Converts this vector into a
VectorFn
that clones ring elements on access using
the given ring.Source§fn into_clone_els_by<F>(self, clone_entry: F) -> CloneElFn<Self, T, F>
fn into_clone_els_by<F>(self, clone_entry: F) -> CloneElFn<Self, T, F>
Moves this vector into a
VectorFn
that clones elements on access using
the given function.Source§fn clone_els_by<'a, F>(&'a self, clone_entry: F) -> CloneElFn<&'a Self, T, F>
fn clone_els_by<'a, F>(&'a self, clone_entry: F) -> CloneElFn<&'a Self, T, F>
Converts this vector into a
VectorFn
that clones elements on access using
the given function.Source§fn into_clone_els(self) -> CloneElFn<Self, T, CloneValue>
fn into_clone_els(self) -> CloneElFn<Self, T, CloneValue>
Moves this vector into a
VectorFn
that clones elements on access.Source§fn clone_els<'a>(&'a self) -> CloneElFn<&'a Self, T, CloneValue>
fn clone_els<'a>(&'a self) -> CloneElFn<&'a Self, T, CloneValue>
Converts this vector into a
VectorFn
that clones elements on access.Source§fn into_copy_els(self) -> CloneElFn<Self, T, CloneValue>
fn into_copy_els(self) -> CloneElFn<Self, T, CloneValue>
Moves this vector into a
VectorFn
that copies elements on access.Source§fn copy_els<'a>(&'a self) -> CloneElFn<&'a Self, T, CloneValue>
fn copy_els<'a>(&'a self) -> CloneElFn<&'a Self, T, CloneValue>
Converts this vector into a
VectorFn
that copies elements on access.Source§fn map_view<F: for<'a> Fn(&'a T) -> &'a U, U>(
self,
func: F,
) -> VectorViewMap<Self, T, U, F>where
Self: Sized,
fn map_view<F: for<'a> Fn(&'a T) -> &'a U, U>(
self,
func: F,
) -> VectorViewMap<Self, T, U, F>where
Self: Sized,
Creates a new
VectorView
whose elements are the results of the given function
applied to the elements of this vector. Read moreSource§fn step_by_view(self, step_by: usize) -> StepBy<Self, T>where
Self: Sized,
fn step_by_view(self, step_by: usize) -> StepBy<Self, T>where
Self: Sized,
Called
step_by_view()
to prevent name conflicts with Iterator::step_by()
.Source§impl<V: VectorViewMut<T>, T: ?Sized> VectorViewMut<T> for SubvectorView<V, T>
impl<V: VectorViewMut<T>, T: ?Sized> VectorViewMut<T> for SubvectorView<V, T>
fn at_mut(&mut self, i: usize) -> &mut T
Source§fn as_slice_mut<'a>(&'a mut self) -> Option<&'a mut [T]>where
T: Sized,
fn as_slice_mut<'a>(&'a mut self) -> Option<&'a mut [T]>where
T: Sized,
If the underlying data of this
VectorView
can be represented as a slice,
returns it. Otherwise, None
is returned.fn map_mut<F_const: for<'a> Fn(&'a T) -> &'a U, F_mut: for<'a> FnMut(&'a mut T) -> &'a mut U, U>(
self,
map_const: F_const,
map_mut: F_mut,
) -> VectorViewMapMut<Self, T, U, F_const, F_mut>where
Self: Sized,
Source§impl<V: VectorViewSparse<T>, T: ?Sized> VectorViewSparse<T> for SubvectorView<V, T>
impl<V: VectorViewSparse<T>, T: ?Sized> VectorViewSparse<T> for SubvectorView<V, T>
type Iter<'a> = FilterWithinRangeIter<'a, T, <V as VectorViewSparse<T>>::Iter<'a>> where Self: 'a, T: 'a
Source§fn nontrivial_entries<'a>(&'a self) -> Self::Iter<'a>
fn nontrivial_entries<'a>(&'a self) -> Self::Iter<'a>
Returns an iterator over all elements of the sequence with their indices
that are “nonzero” (
T
must have an appropriate notion of zero). Read moreimpl<V: Copy + VectorView<T>, T: ?Sized> Copy for SubvectorView<V, T>
Auto Trait Implementations§
impl<V, T> Freeze for SubvectorView<V, T>
impl<V, T> RefUnwindSafe for SubvectorView<V, T>
impl<V, T> Send for SubvectorView<V, T>
impl<V, T> Sync for SubvectorView<V, T>
impl<V, T> Unpin for SubvectorView<V, T>
impl<V, T> UnwindSafe for SubvectorView<V, T>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more