Struct extendr_api::prelude::utils::constrained::sparse::SparseColMatRef
source · pub struct SparseColMatRef<'nrows, 'ncols, 'a, I, E>{ /* private fields */ }Expand description
Immutable sparse matrix view with dimensions equal to the values tied to ('nrows, 'ncols), in column-major order.
Implementations§
source§impl<'nrows, 'ncols, 'a, I, E> SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> SparseColMatRef<'nrows, 'ncols, 'a, I, E>
sourcepub fn new(
inner: SparseColMatRef<'a, I, E>,
nrows: Size<'nrows>,
ncols: Size<'ncols>,
) -> SparseColMatRef<'nrows, 'ncols, 'a, I, E>
pub fn new( inner: SparseColMatRef<'a, I, E>, nrows: Size<'nrows>, ncols: Size<'ncols>, ) -> SparseColMatRef<'nrows, 'ncols, 'a, I, E>
Returns a new matrix view after checking that its dimensions match the
dimensions tied to ('nrows, 'ncols).
sourcepub fn into_inner(self) -> SparseColMatRef<'a, I, E>
pub fn into_inner(self) -> SparseColMatRef<'a, I, E>
Returns the unconstrained matrix.
sourcepub fn values_of_col(
&self,
j: Idx<'ncols, usize>,
) -> <<E as Entity>::Group as ForType>::FaerOf<&'a [<E as Entity>::Unit]>
pub fn values_of_col( &self, j: Idx<'ncols, usize>, ) -> <<E as Entity>::Group as ForType>::FaerOf<&'a [<E as Entity>::Unit]>
Returns the values in column j.
sourcepub fn symbolic(&self) -> SymbolicSparseColMatRef<'nrows, 'ncols, 'a, I>
pub fn symbolic(&self) -> SymbolicSparseColMatRef<'nrows, 'ncols, 'a, I>
Returns the symbolic structure of the matrix.
Methods from Deref<Target = SymbolicSparseColMatRef<'nrows, 'ncols, 'a, I>>§
sourcepub fn row_indices_of_col_raw(
&self,
j: Idx<'ncols, usize>,
) -> &'a [Idx<'nrows, I>]
pub fn row_indices_of_col_raw( &self, j: Idx<'ncols, usize>, ) -> &'a [Idx<'nrows, I>]
Returns the row indices in column j.
sourcepub fn row_indices_of_col(
&self,
j: Idx<'ncols, usize>,
) -> impl ExactSizeIterator + DoubleEndedIterator + 'a
pub fn row_indices_of_col( &self, j: Idx<'ncols, usize>, ) -> impl ExactSizeIterator + DoubleEndedIterator + 'a
Returns the row indices in column j.
Trait Implementations§
source§impl<I, E> Clone for SparseColMatRef<'_, '_, '_, I, E>
impl<I, E> Clone for SparseColMatRef<'_, '_, '_, I, E>
source§fn clone(&self) -> SparseColMatRef<'_, '_, '_, I, E>
fn clone(&self) -> SparseColMatRef<'_, '_, '_, I, E>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl<'nrows, 'ncols, 'a, I, E> Deref for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> Deref for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
§type Target = SymbolicSparseColMatRef<'nrows, 'ncols, 'a, I>
type Target = SymbolicSparseColMatRef<'nrows, 'ncols, 'a, I>
The resulting type after dereferencing.
source§impl<'nrows, 'ncols, 'a, I, E> IntoConst for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> IntoConst for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
type Target = SparseColMatRef<'nrows, 'ncols, 'a, I, E>
fn into_const( self, ) -> <SparseColMatRef<'nrows, 'ncols, 'a, I, E> as IntoConst>::Target
source§impl<'short, 'nrows, 'ncols, 'a, I, E> Reborrow<'short> for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'short, 'nrows, 'ncols, 'a, I, E> Reborrow<'short> for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
type Target = SparseColMatRef<'nrows, 'ncols, 'short, I, E>
fn rb( &'short self, ) -> <SparseColMatRef<'nrows, 'ncols, 'a, I, E> as Reborrow<'short>>::Target
source§impl<'short, 'nrows, 'ncols, 'a, I, E> ReborrowMut<'short> for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'short, 'nrows, 'ncols, 'a, I, E> ReborrowMut<'short> for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
type Target = SparseColMatRef<'nrows, 'ncols, 'short, I, E>
fn rb_mut( &'short mut self, ) -> <SparseColMatRef<'nrows, 'ncols, 'a, I, E> as ReborrowMut<'short>>::Target
impl<I, E> Copy for SparseColMatRef<'_, '_, '_, I, E>
Auto Trait Implementations§
impl<'nrows, 'ncols, 'a, I, E> Freeze for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> RefUnwindSafe for SparseColMatRef<'nrows, 'ncols, 'a, I, E>where
<<E as Entity>::Group as ForCopyType>::FaerOfCopy<*const [<E as Entity>::Unit]>: RefUnwindSafe,
I: RefUnwindSafe,
impl<'nrows, 'ncols, 'a, I, E> Send for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> Sync for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> Unpin for SparseColMatRef<'nrows, 'ncols, 'a, I, E>
impl<'nrows, 'ncols, 'a, I, E> UnwindSafe for SparseColMatRef<'nrows, 'ncols, 'a, I, E>where
<<E as Entity>::Group as ForCopyType>::FaerOfCopy<*const [<E as Entity>::Unit]>: UnwindSafe,
I: RefUnwindSafe,
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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