Trait faer_core::MatIndex

source ·
pub trait MatIndex<RowRange, ColRange>: Seal + Sized {
    type Target;

    // Required method
    fn get(this: Self, row: RowRange, col: ColRange) -> Self::Target;

    // Provided method
    unsafe fn get_unchecked(
        this: Self,
        row: RowRange,
        col: ColRange
    ) -> Self::Target { ... }
}
Expand description

Represents a type that can be used to slice a matrix, such as an index or a range of indices.

Required Associated Types§

Required Methods§

source

fn get(this: Self, row: RowRange, col: ColRange) -> Self::Target

Provided Methods§

source

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

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<'a, E: Entity> MatIndex<usize, usize> for MatMut<'a, E>

§

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

source§

impl<'a, E: Entity> MatIndex<usize, usize> for MatRef<'a, E>

§

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

source§

impl<E: Entity> MatIndex<usize, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<usize, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<Range<usize>, usize> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<Range<usize>, usize> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<Range<usize>, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<Range<usize>, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeFull, usize> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeFull, usize> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeFull, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeFull, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeInclusive<usize>, usize> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeInclusive<usize>, usize> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeInclusive<usize>, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeInclusive<usize>, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeTo<usize>, usize> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeTo<usize>, usize> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeTo<usize>, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeTo<usize>, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeToInclusive<usize>, usize> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeToInclusive<usize>, usize> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity> MatIndex<RangeToInclusive<usize>, Range<usize>> for MatMut<'_, E>

§

type Target = Matrix<DenseMut<'_, E>>

source§

impl<E: Entity> MatIndex<RangeToInclusive<usize>, Range<usize>> for MatRef<'_, E>

§

type Target = Matrix<DenseRef<'_, E>>

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeFull> for MatMut<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseMut<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeFull> for MatRef<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseRef<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeInclusive<usize>> for MatMut<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseMut<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeInclusive<usize>> for MatRef<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseRef<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeTo<usize>> for MatMut<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseMut<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeTo<usize>> for MatRef<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseRef<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeToInclusive<usize>> for MatMut<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseMut<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target

source§

impl<E: Entity, RowRange> MatIndex<RowRange, RangeToInclusive<usize>> for MatRef<'_, E>
where Self: MatIndex<RowRange, Range<usize>>,

§

type Target = <Matrix<DenseRef<'_, E>> as MatIndex<RowRange, Range<usize>>>::Target