Trait MatrixKind

Source
pub trait MatrixKind {
    type Ref<'a, E: Entity>: Copy;
    type Mut<'a, E: Entity>;
    type Own<E: Entity>;
}
Expand description

Trait for describing the view and owning variants of a given matrix type tag.

Required Associated Types§

Source

type Ref<'a, E: Entity>: Copy

Immutable view type.

Source

type Mut<'a, E: Entity>

Mutable view type.

Source

type Own<E: Entity>

Owning type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl MatrixKind for Dense

Source§

type Ref<'a, E: Entity> = Matrix<DenseRef<'a, E>>

Source§

type Mut<'a, E: Entity> = Matrix<DenseMut<'a, E>>

Source§

type Own<E: Entity> = Matrix<DenseOwn<E>>

Source§

impl MatrixKind for DenseCol

Source§

type Ref<'a, E: Entity> = Matrix<DenseColRef<'a, E>>

Source§

type Mut<'a, E: Entity> = Matrix<DenseColMut<'a, E>>

Source§

type Own<E: Entity> = Matrix<DenseColOwn<E>>

Source§

impl MatrixKind for DenseRow

Source§

type Ref<'a, E: Entity> = Matrix<DenseRowRef<'a, E>>

Source§

type Mut<'a, E: Entity> = Matrix<DenseRowMut<'a, E>>

Source§

type Own<E: Entity> = Matrix<DenseRowOwn<E>>

Source§

impl MatrixKind for Diag

Source§

type Ref<'a, E: Entity> = Matrix<DiagRef<'a, E>>

Source§

type Mut<'a, E: Entity> = Matrix<DiagMut<'a, E>>

Source§

type Own<E: Entity> = Matrix<DiagOwn<E>>

Source§

impl MatrixKind for Scalar

Source§

type Ref<'a, E: Entity> = &'a E

Source§

type Mut<'a, E: Entity> = &'a mut E

Source§

type Own<E: Entity> = E

Source§

impl MatrixKind for Scale

Source§

type Ref<'a, E: Entity> = &'a Matrix<Scale<E>>

Source§

type Mut<'a, E: Entity> = &'a mut Matrix<Scale<E>>

Source§

type Own<E: Entity> = Matrix<Scale<E>>

Source§

impl<I: Index> MatrixKind for Perm<I>

Source§

type Ref<'a, E: Entity> = Matrix<PermRef<'a, I, E>>

Source§

type Mut<'a, E: Entity> = Matrix<PermMut<'a, I, E>>

Source§

type Own<E: Entity> = Matrix<PermOwn<I, E>>

Source§

impl<I: Index> MatrixKind for SparseColMat<I>

Source§

type Ref<'a, E: Entity> = Matrix<SparseColMatRef<'a, I, E>>

Source§

type Mut<'a, E: Entity> = Matrix<SparseColMatMut<'a, I, E>>

Source§

type Own<E: Entity> = Matrix<SparseColMat<I, E>>

Source§

impl<I: Index> MatrixKind for SparseRowMat<I>

Source§

type Ref<'a, E: Entity> = Matrix<SparseRowMatRef<'a, I, E>>

Source§

type Mut<'a, E: Entity> = Matrix<SparseRowMatMut<'a, I, E>>

Source§

type Own<E: Entity> = Matrix<SparseRowMat<I, E>>