extendr_api::prelude

Struct ColRef

#[repr(C)]
pub struct ColRef<'a, E>
where E: Entity,
{ pub(super) inner: VecImpl<E>, pub(super) __marker: PhantomData<&'a E>, }
Expand description

Immutable view over a column vector, similar to an immutable reference to a strided slice.

§Note

Unlike a slice, the data pointed to by ColRef<'_, E> is allowed to be partially or fully uninitialized under certain conditions. In this case, care must be taken to not perform any operations that read the uninitialized values, or form references to them, either directly through ColRef::read, or indirectly through any of the numerical library routines, unless it is explicitly permitted.

Fields§

§inner: VecImpl<E>§__marker: PhantomData<&'a E>

Implementations§

§

impl<'a, E> ColRef<'a, E>
where E: Entity,

pub fn nrows(&self) -> usize

Returns the number of rows of the column.

pub fn ncols(&self) -> usize

Returns the number of columns of the column. This is always equal to 1.

pub fn as_ptr( self, ) -> <<E as Entity>::Group as ForType>::FaerOf<*const <E as Entity>::Unit>

Returns pointers to the matrix data.

pub fn row_stride(&self) -> isize

Returns the row stride of the matrix, specified in number of elements, not in bytes.

pub fn as_2d(self) -> MatRef<'a, E>

Returns self as a matrix view.

pub fn ptr_at( self, row: usize, ) -> <<E as Entity>::Group as ForType>::FaerOf<*const <E as Entity>::Unit>

Returns raw pointers to the element at the given index.

pub unsafe fn ptr_inbounds_at( self, row: usize, ) -> <<E as Entity>::Group as ForType>::FaerOf<*const <E as Entity>::Unit>

Returns raw pointers to the element at the given index, assuming the provided index is within the size of the vector.

§Safety

The behavior is undefined if any of the following conditions are violated:

  • row < self.nrows().

pub unsafe fn split_at_unchecked( self, row: usize, ) -> (ColRef<'a, E>, ColRef<'a, E>)

Splits the column vector at the given index into two parts and returns an array of each subvector, in the following order:

  • top.
  • bottom.
§Safety

The behavior is undefined if any of the following conditions are violated:

  • row <= self.nrows().

pub fn split_at(self, row: usize) -> (ColRef<'a, E>, ColRef<'a, E>)

Splits the column vector at the given index into two parts and returns an array of each subvector, in the following order:

  • top.
  • bottom.
§Panics

The function panics if any of the following conditions are violated:

  • row <= self.nrows().

pub unsafe fn get_unchecked<RowRange>( self, row: RowRange, ) -> <ColRef<'a, E> as ColIndex<RowRange>>::Target
where ColRef<'a, E>: ColIndex<RowRange>,

Returns references to the element at the given index, or subvector if row is a range.

§Note

The values pointed to by the references are expected to be initialized, even if the pointed-to value is not read, otherwise the behavior is undefined.

§Safety

The behavior is undefined if any of the following conditions are violated:

  • row must be contained in [0, self.nrows()).

pub fn get<RowRange>( self, row: RowRange, ) -> <ColRef<'a, E> as ColIndex<RowRange>>::Target
where ColRef<'a, E>: ColIndex<RowRange>,

Returns references to the element at the given index, or subvector if row is a range, with bound checks.

§Note

The values pointed to by the references are expected to be initialized, even if the pointed-to value is not read, otherwise the behavior is undefined.

§Panics

The function panics if any of the following conditions are violated:

  • row must be contained in [0, self.nrows()).

pub unsafe fn read_unchecked(&self, row: usize) -> E

Reads the value of the element at the given index.

§Safety

The behavior is undefined if any of the following conditions are violated:

  • row < self.nrows().

pub fn read(&self, row: usize) -> E

Reads the value of the element at the given index, with bound checks.

§Panics

The function panics if any of the following conditions are violated:

  • row < self.nrows().

pub fn transpose(self) -> RowRef<'a, E>

Returns a view over the transpose of self.

pub fn conjugate(self) -> ColRef<'a, <E as Conjugate>::Conj>
where E: Conjugate,

Returns a view over the conjugate of self.

pub fn adjoint(self) -> RowRef<'a, <E as Conjugate>::Conj>
where E: Conjugate,

Returns a view over the conjugate transpose of self.

pub fn canonicalize(self) -> (ColRef<'a, <E as Conjugate>::Canonical>, Conj)
where E: Conjugate,

Returns a view over the canonical representation of self, as well as a flag declaring whether self is implicitly conjugated or not.

pub fn reverse_rows(self) -> ColRef<'a, E>

Returns a view over the self, with the rows in reversed order.

pub unsafe fn subrows_unchecked( self, row_start: usize, nrows: usize, ) -> ColRef<'a, E>

Returns a view over the subvector starting at row row_start, and with number of rows nrows.

§Safety

The behavior is undefined if any of the following conditions are violated:

  • row_start <= self.nrows().
  • nrows <= self.nrows() - row_start.

pub fn subrows(self, row_start: usize, nrows: usize) -> ColRef<'a, E>

Returns a view over the subvector starting at row row_start, and with number of rows nrows.

§Panics

The function panics if any of the following conditions are violated:

  • row_start <= self.nrows().
  • nrows <= self.nrows() - row_start.

pub fn column_vector_as_diagonal(self) -> DiagRef<'a, E>

Given a matrix with a single column, returns an object that interprets the column as a diagonal matrix, whose diagonal elements are values in the column.

pub fn to_owned(&self) -> Col<<E as Conjugate>::Canonical>
where E: Conjugate,

Returns an owning Col of the data.

pub fn has_nan(&self) -> bool
where E: ComplexField,

Returns true if any of the elements is NaN, otherwise returns false.

pub fn is_all_finite(&self) -> bool
where E: ComplexField,

Returns true if all of the elements are finite, otherwise returns false.

pub fn norm_max(&self) -> <E as ComplexField>::Real
where E: ComplexField,

Returns the maximum norm of self.

pub fn norm_l1(&self) -> <E as ComplexField>::Real
where E: ComplexField,

Returns the L1 norm of self.

pub fn norm_l2(&self) -> <E as ComplexField>::Real
where E: ComplexField,

Returns the L2 norm of self.

pub fn squared_norm_l2(&self) -> <E as ComplexField>::Real
where E: ComplexField,

Returns the squared L2 norm of self.

pub fn sum(&self) -> E
where E: ComplexField,

Returns the sum of self.

pub fn kron(&self, rhs: impl As2D<E>) -> Mat<E>
where E: ComplexField,

Kronecker product of self and rhs.

This is an allocating operation; see faer::linalg::kron for the allocation-free version or more info in general.

pub fn try_as_slice( self, ) -> Option<<<E as Entity>::Group as ForType>::FaerOf<&'a [<E as Entity>::Unit]>>

Returns the column as a contiguous slice if its row stride is equal to 1.

§Note

The values pointed to by the references are expected to be initialized, even if the pointed-to value is not read, otherwise the behavior is undefined.

pub fn as_ref(&self) -> ColRef<'_, E>

Returns a view over the matrix.

pub fn split_first( self, ) -> Option<(<<E as Entity>::Group as ForType>::FaerOf<&'a <E as Entity>::Unit>, ColRef<'a, E>)>

Returns a reference to the first element and a view over the remaining ones if the column is non-empty, otherwise None.

pub fn split_last( self, ) -> Option<(<<E as Entity>::Group as ForType>::FaerOf<&'a <E as Entity>::Unit>, ColRef<'a, E>)>

Returns a reference to the last element and a view over the remaining ones if the column is non-empty, otherwise None.

pub fn iter(self) -> ElemIter<'a, E>

Returns an iterator over the elements of the column.

pub fn chunks(self, chunk_size: usize) -> ColElemChunks<'a, E>

Returns an iterator that provides successive chunks of the elements of this column, with each having at most chunk_size elements.

pub fn partition(self, count: usize) -> ColElemPartition<'a, E>

Returns an iterator that provides exactly count successive chunks of the elements of this column.

pub fn par_chunks(self, chunk_size: usize) -> impl IndexedParallelIterator + 'a

Returns an iterator that provides successive chunks of the elements of this column, with each having at most chunk_size elements.

Only available with the rayon feature.

pub fn par_partition(self, count: usize) -> impl IndexedParallelIterator + 'a

Returns an iterator that provides exactly count successive chunks of the elements of this column.

Only available with the rayon feature.

Trait Implementations§

§

impl<E, LhsE, RhsE> Add<&Col<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &Col<RhsE>, ) -> <&ColRef<'_, LhsE> as Add<&Col<RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&Col<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add(self, other: &Col<RhsE>) -> <ColRef<'_, LhsE> as Add<&Col<RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Add<&ColMut<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Add<&ColMut<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for &Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <&Col<LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for &ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <&ColMut<'_, LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <Col<LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <ColMut<'_, LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<&ColRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: &ColRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Add<&ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<Col<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add(self, other: Col<RhsE>) -> <&ColRef<'_, LhsE> as Add<Col<RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<Col<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add(self, other: Col<RhsE>) -> <ColRef<'_, LhsE> as Add<Col<RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Add<ColMut<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Add<ColMut<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for &Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColRef<'_, RhsE>, ) -> <&Col<LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for &ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColRef<'_, RhsE>, ) -> <&ColMut<'_, LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColRef<'_, RhsE>, ) -> <Col<LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, other: ColRef<'_, RhsE>, ) -> <ColMut<'_, LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<E, LhsE, RhsE> Add<ColRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the + operator.
§

fn add( self, rhs: ColRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Add<ColRef<'_, RhsE>>>::Output

Performs the + operation. Read more
§

impl<LhsE, RhsE> AddAssign<&ColRef<'_, RhsE>> for Col<LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn add_assign(&mut self, other: &ColRef<'_, RhsE>)

Performs the += operation. Read more
§

impl<LhsE, RhsE> AddAssign<&ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn add_assign(&mut self, other: &ColRef<'_, RhsE>)

Performs the += operation. Read more
§

impl<LhsE, RhsE> AddAssign<ColRef<'_, RhsE>> for Col<LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn add_assign(&mut self, other: ColRef<'_, RhsE>)

Performs the += operation. Read more
§

impl<LhsE, RhsE> AddAssign<ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn add_assign(&mut self, rhs: ColRef<'_, RhsE>)

Performs the += operation. Read more
§

impl<E> As2D<E> for ColRef<'_, E>
where E: Entity,

§

fn as_2d_ref(&self) -> MatRef<'_, E>

Convert to a 2D matrix view.
§

impl<E> AsColRef<E> for ColRef<'_, E>
where E: Entity,

§

fn as_col_ref(&self) -> ColRef<'_, E>

Convert to a column view.
§

impl<E> Clone for ColRef<'_, E>
where E: Entity,

§

fn clone(&self) -> ColRef<'_, E>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl<'a, FromE, ToE> Coerce<ColRef<'a, ToE>> for ColRef<'a, FromE>
where FromE: Entity, ToE: Entity,

§

fn coerce(self) -> ColRef<'a, ToE>

§

impl<E> ColBatch<E> for ColRef<'_, E>
where E: Conjugate,

§

type Owned = Col<<E as Conjugate>::Canonical>

Corresponding owning type.
§

fn new_owned_zeros( nrows: usize, ncols: usize, ) -> <ColRef<'_, E> as ColBatch<E>>::Owned

Constructor of the owned type that initializes the values to zero.
§

fn new_owned_copied( src: &ColRef<'_, E>, ) -> <ColRef<'_, E> as ColBatch<E>>::Owned

Constructor of the owned type that copies the values.
§

fn resize_owned( owned: &mut <ColRef<'_, E> as ColBatch<E>>::Owned, nrows: usize, ncols: usize, )

Resize an owned column or matrix.
§

impl<E> ColIndex<Range<usize>> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: Range<usize>) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<E> ColIndex<RangeFrom<usize>> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: RangeFrom<usize>) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<E> ColIndex<RangeFull> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: RangeFull) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<E> ColIndex<RangeInclusive<usize>> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: RangeInclusive<usize>) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<E> ColIndex<RangeTo<usize>> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: RangeTo<usize>) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<E> ColIndex<RangeToInclusive<usize>> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

Resulting type of the indexing operation.
§

fn get(this: ColRef<'_, E>, row: RangeToInclusive<usize>) -> ColRef<'_, E>

Index the column at row.
§

unsafe fn get_unchecked(this: Self, row: RowRange) -> Self::Target

Index the column at row, without bound checks.
§

impl<'a, E> ColIndex<usize> for ColRef<'a, E>
where E: Entity,

§

type Target = <<E as Entity>::Group as ForType>::FaerOf<&'a <E as Entity>::Unit>

Resulting type of the indexing operation.
§

unsafe fn get_unchecked( this: ColRef<'a, E>, row: usize, ) -> <ColRef<'a, E> as ColIndex<usize>>::Target

Index the column at row, without bound checks.
§

fn get( this: ColRef<'a, E>, row: usize, ) -> <ColRef<'a, E> as ColIndex<usize>>::Target

Index the column at row.
§

impl<'a, E> Debug for ColRef<'a, E>
where E: Entity,

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<E> Default for ColRef<'_, E>
where E: Entity,

§

fn default() -> ColRef<'_, E>

Returns the “default value” for a type. Read more
§

impl<E, LhsE, RhsE> Div<Scale<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div( self, other: Scale<RhsE>, ) -> <&ColRef<'_, LhsE> as Div<Scale<RhsE>>>::Output

Performs the / operation. Read more
§

impl<E, LhsE, RhsE> Div<Scale<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div( self, other: Scale<RhsE>, ) -> <ColRef<'_, LhsE> as Div<Scale<RhsE>>>::Output

Performs the / operation. Read more
§

impl<E, RhsE> Div<f32> for &ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div(self, other: f32) -> <&ColRef<'_, RhsE> as Div<f32>>::Output

Performs the / operation. Read more
§

impl<E, RhsE> Div<f32> for ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div(self, other: f32) -> <ColRef<'_, RhsE> as Div<f32>>::Output

Performs the / operation. Read more
§

impl<E, RhsE> Div<f64> for &ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div(self, other: f64) -> <&ColRef<'_, RhsE> as Div<f64>>::Output

Performs the / operation. Read more
§

impl<E, RhsE> Div<f64> for ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the / operator.
§

fn div(self, other: f64) -> <ColRef<'_, RhsE> as Div<f64>>::Output

Performs the / operation. Read more
§

impl<E> Index<usize> for ColRef<'_, E>
where E: SimpleEntity,

§

type Output = E

The returned type after indexing.
§

fn index(&self, row: usize) -> &E

Performs the indexing (container[index]) operation. Read more
§

impl<E> IntoConst for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'_, E>

§

fn into_const(self) -> <ColRef<'_, E> as IntoConst>::Target

§

impl<'a, E> MatIndex<'a> for ColRef<'_, E>
where E: Entity,

§

type Item = Read<'a, E>

Item produced by the zipped views.
§

unsafe fn get_unchecked( &'a mut self, _: <ColRef<'_, E> as MaybeContiguous>::Index, ) -> <ColRef<'_, E> as MatIndex<'a>>::Item

Get the item at the given index, skipping bound checks.
§

unsafe fn get_from_slice_unchecked( slice: &'a mut <ColRef<'_, E> as MaybeContiguous>::Slice, idx: usize, ) -> <ColRef<'_, E> as MatIndex<'a>>::Item

Get the item at the given slice position, skipping bound checks.
§

fn is_contiguous(&self) -> bool

Checks if the zipped matrices are contiguous.
§

fn preferred_layout( &self, ) -> <ColRef<'_, E> as MaybeContiguous>::LayoutTransform

Computes the preferred iteration layout of the matrices.
§

fn with_layout( self, layout: <ColRef<'_, E> as MaybeContiguous>::LayoutTransform, ) -> ColRef<'_, E>

Applies the layout transformation to the matrices.
§

impl<E> MatShape for ColRef<'_, E>
where E: Entity,

§

type Rows = usize

Type of rows.
§

type Cols = ()

Type of columns.
§

fn nrows(&self) -> <ColRef<'_, E> as MatShape>::Rows

Returns the number of rows.
§

fn ncols(&self) -> <ColRef<'_, E> as MatShape>::Cols

Returns the number of columns.
§

impl<E> MaybeContiguous for ColRef<'_, E>
where E: Entity,

§

type Index = (usize, ())

Indexing type.
§

type Slice = <<E as Entity>::Group as ForType>::FaerOf<&'static [MaybeUninit<<E as Entity>::Unit>]>

Contiguous slice type.
§

type LayoutTransform = VecLayoutTransform

Layout transformation type.
§

unsafe fn get_slice_unchecked( &mut self, _: <ColRef<'_, E> as MaybeContiguous>::Index, n_elems: usize, ) -> <ColRef<'_, E> as MaybeContiguous>::Slice

Returns slice at index of length n_elems.
§

impl<I, E> Mul<&ColRef<'_, E>> for &Perm<I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul(self, other: &ColRef<'_, E>) -> <&Perm<I> as Mul<&ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<&ColRef<'_, E>> for &PermRef<'_, I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, E>, ) -> <&PermRef<'_, I> as Mul<&ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<&ColRef<'_, E>> for Perm<I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul(self, other: &ColRef<'_, E>) -> <Perm<I> as Mul<&ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<&ColRef<'_, E>> for PermRef<'_, I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, E>, ) -> <PermRef<'_, I> as Mul<&ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &Diag<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&Diag<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &DiagMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&DiagMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &DiagRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&DiagRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &Mat<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&Mat<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &MatMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&MatMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &MatRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&MatRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &Row<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&Row<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &RowMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&RowMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &RowRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&RowRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseColMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseColMat<I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseColMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseColMatMut<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseColMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseColMatRef<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseRowMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseRowMat<I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseRowMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseRowMatMut<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for &SparseRowMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <&SparseRowMatRef<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for Diag<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <Diag<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for DiagMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <DiagMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for DiagRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <DiagRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for Mat<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <Mat<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for MatMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <MatMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for MatRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <MatRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for Row<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <Row<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for RowMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <RowMut<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for RowRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <RowRef<'_, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for Scale<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <Scale<LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseColMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseColMat<I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseColMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseColMatMut<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseColMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseColMatRef<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseRowMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseRowMat<I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseRowMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseRowMatMut<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<&ColRef<'_, RhsE>> for SparseRowMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &ColRef<'_, RhsE>, ) -> <SparseRowMatRef<'_, I, LhsE> as Mul<&ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&Row<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &Row<RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<&Row<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&Row<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul(self, other: &Row<RhsE>) -> <ColRef<'_, LhsE> as Mul<&Row<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&RowMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &RowMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<&RowMut<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&RowMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &RowMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Mul<&RowMut<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&RowRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &RowRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<&RowRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<&RowRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: &RowRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Mul<&RowRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<ColRef<'_, E>> for &Perm<I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul(self, other: ColRef<'_, E>) -> <&Perm<I> as Mul<ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<ColRef<'_, E>> for &PermRef<'_, I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, E>, ) -> <&PermRef<'_, I> as Mul<ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<ColRef<'_, E>> for Perm<I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul(self, other: ColRef<'_, E>) -> <Perm<I> as Mul<ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<I, E> Mul<ColRef<'_, E>> for PermRef<'_, I>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, E>, ) -> <PermRef<'_, I> as Mul<ColRef<'_, E>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &Diag<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&Diag<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &DiagMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&DiagMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &DiagRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&DiagRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &Mat<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&Mat<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &MatMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&MatMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &MatRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&MatRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &Row<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&Row<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &RowMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&RowMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &RowRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&RowRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseColMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseColMat<I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseColMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseColMatMut<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseColMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseColMatRef<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseRowMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseRowMat<I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseRowMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseRowMatMut<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for &SparseRowMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <&SparseRowMatRef<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for Diag<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <Diag<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for DiagMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <DiagMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for DiagRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <DiagRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for Mat<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <Mat<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for MatMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <MatMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for MatRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <MatRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for Row<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <Row<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for RowMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <RowMut<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for RowRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = E

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <RowRef<'_, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for Scale<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <Scale<LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseColMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <SparseColMat<I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseColMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <SparseColMatMut<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseColMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <SparseColMatRef<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseRowMat<I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <SparseRowMat<I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseRowMatMut<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>, <E as Conjugate>::Canonical: ComplexField,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: ColRef<'_, RhsE>, ) -> <SparseRowMatMut<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<I, E, LhsE, RhsE> Mul<ColRef<'_, RhsE>> for SparseRowMatRef<'_, I, LhsE>
where I: Index, E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: ColRef<'_, RhsE>, ) -> <SparseRowMatRef<'_, I, LhsE> as Mul<ColRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<Row<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul(self, other: Row<RhsE>) -> <&ColRef<'_, LhsE> as Mul<Row<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<Row<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul(self, other: Row<RhsE>) -> <ColRef<'_, LhsE> as Mul<Row<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<RowMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: RowMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<RowMut<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<RowMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: RowMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Mul<RowMut<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<RowRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, other: RowRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<RowRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<RowRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Mat<E>

The resulting type after applying the * operator.
§

fn mul( self, rhs: RowRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Mul<RowRef<'_, RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<Scale<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul( self, other: Scale<RhsE>, ) -> <&ColRef<'_, LhsE> as Mul<Scale<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, LhsE, RhsE> Mul<Scale<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul(self, rhs: Scale<RhsE>) -> <ColRef<'_, LhsE> as Mul<Scale<RhsE>>>::Output

Performs the * operation. Read more
§

impl<E, RhsE> Mul<f32> for &ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul(self, other: f32) -> <&ColRef<'_, RhsE> as Mul<f32>>::Output

Performs the * operation. Read more
§

impl<E, RhsE> Mul<f32> for ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul(self, other: f32) -> <ColRef<'_, RhsE> as Mul<f32>>::Output

Performs the * operation. Read more
§

impl<E, RhsE> Mul<f64> for &ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul(self, other: f64) -> <&ColRef<'_, RhsE> as Mul<f64>>::Output

Performs the * operation. Read more
§

impl<E, RhsE> Mul<f64> for ColRef<'_, RhsE>
where E: ComplexField, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the * operator.
§

fn mul(self, other: f64) -> <ColRef<'_, RhsE> as Mul<f64>>::Output

Performs the * operation. Read more
§

impl<E> Neg for &ColRef<'_, E>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the - operator.
§

fn neg(self) -> <&ColRef<'_, E> as Neg>::Output

Performs the unary - operation. Read more
§

impl<E> Neg for ColRef<'_, E>

§

type Output = Col<<E as Conjugate>::Canonical>

The resulting type after applying the - operator.
§

fn neg(self) -> <ColRef<'_, E> as Neg>::Output

Performs the unary - operation. Read more
§

impl<LhsE, RhsE> PartialEq<Col<RhsE>> for ColRef<'_, LhsE>
where LhsE: Conjugate, RhsE: Conjugate<Canonical = <LhsE as Conjugate>::Canonical>,

§

fn eq(&self, other: &Col<RhsE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl<LhsE, RhsE> PartialEq<ColMut<'_, RhsE>> for ColRef<'_, LhsE>
where LhsE: Conjugate, RhsE: Conjugate<Canonical = <LhsE as Conjugate>::Canonical>,

§

fn eq(&self, other: &ColMut<'_, RhsE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl<LhsE, RhsE> PartialEq<ColRef<'_, RhsE>> for Col<LhsE>
where LhsE: Conjugate, RhsE: Conjugate<Canonical = <LhsE as Conjugate>::Canonical>,

§

fn eq(&self, other: &ColRef<'_, RhsE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl<LhsE, RhsE> PartialEq<ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where LhsE: Conjugate, RhsE: Conjugate<Canonical = <LhsE as Conjugate>::Canonical>,

§

fn eq(&self, other: &ColRef<'_, RhsE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl<LhsE, RhsE> PartialEq<ColRef<'_, RhsE>> for ColRef<'_, LhsE>
where LhsE: Conjugate, RhsE: Conjugate<Canonical = <LhsE as Conjugate>::Canonical>,

§

fn eq(&self, other: &ColRef<'_, RhsE>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl<'short, E> Reborrow<'short> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'short, E>

§

fn rb(&'short self) -> <ColRef<'_, E> as Reborrow<'short>>::Target

§

impl<'short, E> ReborrowMut<'short> for ColRef<'_, E>
where E: Entity,

§

type Target = ColRef<'short, E>

§

fn rb_mut(&'short mut self) -> <ColRef<'_, E> as ReborrowMut<'short>>::Target

§

impl<E, LhsE, RhsE> Sub<&Col<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &Col<RhsE>, ) -> <&ColRef<'_, LhsE> as Sub<&Col<RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&Col<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub(self, other: &Col<RhsE>) -> <ColRef<'_, LhsE> as Sub<&Col<RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Sub<&ColMut<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Sub<&ColMut<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for &Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <&Col<LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for &ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <&ColMut<'_, LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <Col<LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <ColMut<'_, LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<&ColRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: &ColRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Sub<&ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<Col<RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub(self, other: Col<RhsE>) -> <&ColRef<'_, LhsE> as Sub<Col<RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<Col<RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub(self, other: Col<RhsE>) -> <ColRef<'_, LhsE> as Sub<Col<RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColMut<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColMut<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Sub<ColMut<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColMut<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColMut<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Sub<ColMut<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for &Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColRef<'_, RhsE>, ) -> <&Col<LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for &ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColRef<'_, RhsE>, ) -> <&ColMut<'_, LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for &ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColRef<'_, RhsE>, ) -> <&ColRef<'_, LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for Col<LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColRef<'_, RhsE>, ) -> <Col<LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, other: ColRef<'_, RhsE>, ) -> <ColMut<'_, LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<E, LhsE, RhsE> Sub<ColRef<'_, RhsE>> for ColRef<'_, LhsE>
where E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>,

§

type Output = Col<E>

The resulting type after applying the - operator.
§

fn sub( self, rhs: ColRef<'_, RhsE>, ) -> <ColRef<'_, LhsE> as Sub<ColRef<'_, RhsE>>>::Output

Performs the - operation. Read more
§

impl<LhsE, RhsE> SubAssign<&ColRef<'_, RhsE>> for Col<LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn sub_assign(&mut self, other: &ColRef<'_, RhsE>)

Performs the -= operation. Read more
§

impl<LhsE, RhsE> SubAssign<&ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn sub_assign(&mut self, other: &ColRef<'_, RhsE>)

Performs the -= operation. Read more
§

impl<LhsE, RhsE> SubAssign<ColRef<'_, RhsE>> for Col<LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn sub_assign(&mut self, other: ColRef<'_, RhsE>)

Performs the -= operation. Read more
§

impl<LhsE, RhsE> SubAssign<ColRef<'_, RhsE>> for ColMut<'_, LhsE>
where LhsE: ComplexField, RhsE: Conjugate<Canonical = LhsE>,

§

fn sub_assign(&mut self, rhs: ColRef<'_, RhsE>)

Performs the -= operation. Read more
§

impl<E> ViewMut for &ColRef<'_, E>
where E: Entity,

§

type Target<'a> = ColRef<'a, E> where &ColRef<'_, E>: 'a

View type.
§

fn view_mut(&mut self) -> <&ColRef<'_, E> as ViewMut>::Target<'_>

Returns the view over self.
§

impl<E> ViewMut for &mut ColRef<'_, E>
where E: Entity,

§

type Target<'a> = ColRef<'a, E> where &mut ColRef<'_, E>: 'a

View type.
§

fn view_mut(&mut self) -> <&mut ColRef<'_, E> as ViewMut>::Target<'_>

Returns the view over self.
§

impl<E> ViewMut for ColRef<'_, E>
where E: Entity,

§

type Target<'a> = ColRef<'a, E> where ColRef<'_, E>: 'a

View type.
§

fn view_mut(&mut self) -> <ColRef<'_, E> as ViewMut>::Target<'_>

Returns the view over self.
§

impl<E> Copy for ColRef<'_, E>
where E: Entity,

Auto Trait Implementations§

§

impl<'a, E> Freeze for ColRef<'a, E>
where <<E as Entity>::Group as ForCopyType>::FaerOfCopy<NonNull<<E as Entity>::Unit>>: Freeze,

§

impl<'a, E> RefUnwindSafe for ColRef<'a, E>
where <<E as Entity>::Group as ForCopyType>::FaerOfCopy<NonNull<<E as Entity>::Unit>>: RefUnwindSafe, E: RefUnwindSafe,

§

impl<'a, E> Send for ColRef<'a, E>

§

impl<'a, E> Sync for ColRef<'a, E>

§

impl<'a, E> Unpin for ColRef<'a, E>
where <<E as Entity>::Group as ForCopyType>::FaerOfCopy<NonNull<<E as Entity>::Unit>>: Unpin,

§

impl<'a, E> UnwindSafe for ColRef<'a, E>
where <<E as Entity>::Group as ForCopyType>::FaerOfCopy<NonNull<<E as Entity>::Unit>>: UnwindSafe, E: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Boilerplate for T
where T: Copy + Send + Sync + Debug + PartialEq + 'static,

§

impl<T> UniversalReborrow for T
where T: for<'a> Reborrow<'a>,

§

impl<T> UniversalReborrowMut for T
where T: for<'a> ReborrowMut<'a>,