Struct stack_algebra::Matrix
source · Expand description
Represents a matrix with constant M
rows and constant N
columns.
The underlying data is represented as an array and is always stored in column-major order.
See the crate root for usage examples.
Implementations§
source§impl<const D: usize, T> Matrix<D, D, T>where
T: Abs + PartialOrd + Copy + Zero + One + Sum + Add<Output = T> + Neg<Output = T> + Mul<Output = T> + Sub<Output = T> + Div<Output = T>,
impl<const D: usize, T> Matrix<D, D, T>where
T: Abs + PartialOrd + Copy + Zero + One + Sum + Add<Output = T> + Neg<Output = T> + Mul<Output = T> + Sub<Output = T> + Div<Output = T>,
source§impl<const M: usize, const N: usize, T> Matrix<M, N, T>
impl<const M: usize, const N: usize, T> Matrix<M, N, T>
sourcepub fn as_mut_slice(&mut self) -> &mut [T]
pub fn as_mut_slice(&mut self) -> &mut [T]
Views the underlying data as a contiguous mutable slice.
sourcepub fn row(&self, i: usize) -> &Row<M, N, T>
pub fn row(&self, i: usize) -> &Row<M, N, T>
Returns a reference to the i
-th row of this matrix.
sourcepub fn row_mut(&mut self, i: usize) -> &mut Row<M, N, T>
pub fn row_mut(&mut self, i: usize) -> &mut Row<M, N, T>
Returns a mutable reference to the i
-th row of this matrix.
sourcepub fn column(&self, i: usize) -> &Column<M, N, T>
pub fn column(&self, i: usize) -> &Column<M, N, T>
Returns a reference to the i
-th column of this matrix.
sourcepub fn column_mut(&mut self, i: usize) -> &mut Column<M, N, T>
pub fn column_mut(&mut self, i: usize) -> &mut Column<M, N, T>
Returns a mutable reference to the i
-th column of this matrix.
sourcepub fn get<I>(&self, i: I) -> Option<&I::Output>where
I: MatrixIndex<Self>,
pub fn get<I>(&self, i: I) -> Option<&I::Output>where
I: MatrixIndex<Self>,
Returns a reference to an element in the matrix or None
if out of
bounds.
sourcepub fn get_mut<I>(&mut self, i: I) -> Option<&mut I::Output>where
I: MatrixIndex<Self>,
pub fn get_mut<I>(&mut self, i: I) -> Option<&mut I::Output>where
I: MatrixIndex<Self>,
Returns a mutable reference to an element in the matrix or None
if out
of bounds.
sourcepub unsafe fn get_unchecked<I>(&self, i: I) -> &I::Outputwhere
I: MatrixIndex<Self>,
pub unsafe fn get_unchecked<I>(&self, i: I) -> &I::Outputwhere
I: MatrixIndex<Self>,
Returns a reference to an element in the matrix without doing any bounds checking.
Safety
Calling this method with an out-of-bounds index is undefined behavior even if the resulting reference is not used.
sourcepub unsafe fn get_unchecked_mut<I>(&mut self, i: I) -> &mut I::Outputwhere
I: MatrixIndex<Self>,
pub unsafe fn get_unchecked_mut<I>(&mut self, i: I) -> &mut I::Outputwhere
I: MatrixIndex<Self>,
Returns a mutable reference to an element in the matrix without doing any bounds checking.
Safety
Calling this method with an out-of-bounds index is undefined behavior even if the resulting reference is not used.
sourcepub fn iter_mut(&mut self) -> IterMut<'_, T>
pub fn iter_mut(&mut self) -> IterMut<'_, T>
Returns a mutable iterator over the underlying data.
sourcepub fn swap_rows(&mut self, r1: usize, r2: usize)where
T: Copy,
pub fn swap_rows(&mut self, r1: usize, r2: usize)where
T: Copy,
Swap the two given rows of this matrix
sourcepub fn swap_columns(&mut self, c1: usize, c2: usize)where
T: Copy,
pub fn swap_columns(&mut self, c1: usize, c2: usize)where
T: Copy,
Swap the two given columns of this matrix
Trait Implementations§
source§impl<const M: usize, const N: usize, T: AbsDiffEq> AbsDiffEq<Matrix<M, N, T>> for Matrix<M, N, T>where
T::Epsilon: Copy,
impl<const M: usize, const N: usize, T: AbsDiffEq> AbsDiffEq<Matrix<M, N, T>> for Matrix<M, N, T>where
T::Epsilon: Copy,
source§fn default_epsilon() -> Self::Epsilon
fn default_epsilon() -> Self::Epsilon
source§fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
source§fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
AbsDiffEq::abs_diff_eq
.source§impl<T, const M: usize, const N: usize> Add<&Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<&Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<&T> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<&T> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<T> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<T> for &Matrix<M, N, T>where
T: Copy + Zero + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> Add<T> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
impl<T, const M: usize, const N: usize> Add<T> for Matrix<M, N, T>where
T: Copy + Add<Output = T>,
source§impl<T, const M: usize, const N: usize> AddAssign<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + AddAssign,
impl<T, const M: usize, const N: usize> AddAssign<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + AddAssign,
source§fn add_assign(&mut self, other: &Matrix<M, N, T>)
fn add_assign(&mut self, other: &Matrix<M, N, T>)
+=
operation. Read moresource§impl<T, const M: usize, const N: usize> AddAssign<&T> for Matrix<M, N, T>where
T: Copy + AddAssign<T>,
impl<T, const M: usize, const N: usize> AddAssign<&T> for Matrix<M, N, T>where
T: Copy + AddAssign<T>,
source§fn add_assign(&mut self, other: &T)
fn add_assign(&mut self, other: &T)
+=
operation. Read moresource§impl<T, const M: usize, const N: usize> AddAssign<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + AddAssign,
impl<T, const M: usize, const N: usize> AddAssign<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + AddAssign,
source§fn add_assign(&mut self, other: Matrix<M, N, T>)
fn add_assign(&mut self, other: Matrix<M, N, T>)
+=
operation. Read moresource§impl<'a, T, const M: usize, const N: usize> AddAssign<T> for Matrix<M, N, T>where
T: Copy + AddAssign<T>,
impl<'a, T, const M: usize, const N: usize> AddAssign<T> for Matrix<M, N, T>where
T: Copy + AddAssign<T>,
source§fn add_assign(&mut self, other: T)
fn add_assign(&mut self, other: T)
+=
operation. Read moresource§impl<T, const M: usize, const N: usize> Div<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Div<Output = T>,
impl<T, const M: usize, const N: usize> Div<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Div<Output = T>,
source§impl<T, const M: usize, const N: usize> Div<&T> for Matrix<M, N, T>where
T: Copy + Div<Output = T>,
impl<T, const M: usize, const N: usize> Div<&T> for Matrix<M, N, T>where
T: Copy + Div<Output = T>,
source§impl<T, const M: usize, const N: usize> Div<T> for &Matrix<M, N, T>where
T: Copy + Zero + Div<Output = T>,
impl<T, const M: usize, const N: usize> Div<T> for &Matrix<M, N, T>where
T: Copy + Zero + Div<Output = T>,
source§impl<T, const M: usize, const N: usize> Div<T> for Matrix<M, N, T>where
T: Copy + Div<Output = T>,
impl<T, const M: usize, const N: usize> Div<T> for Matrix<M, N, T>where
T: Copy + Div<Output = T>,
source§impl<T, const M: usize, const N: usize> DivAssign<&T> for Matrix<M, N, T>where
T: Copy + DivAssign<T>,
impl<T, const M: usize, const N: usize> DivAssign<&T> for Matrix<M, N, T>where
T: Copy + DivAssign<T>,
source§fn div_assign(&mut self, other: &T)
fn div_assign(&mut self, other: &T)
/=
operation. Read moresource§impl<'a, T, const M: usize, const N: usize> DivAssign<T> for Matrix<M, N, T>where
T: Copy + DivAssign<T>,
impl<'a, T, const M: usize, const N: usize> DivAssign<T> for Matrix<M, N, T>where
T: Copy + DivAssign<T>,
source§fn div_assign(&mut self, other: T)
fn div_assign(&mut self, other: T)
/=
operation. Read moresource§impl<T: Copy> From<(T, T, T, T)> for Matrix<1, 4, T>
impl<T: Copy> From<(T, T, T, T)> for Matrix<1, 4, T>
source§fn from(src: (T, T, T, T)) -> Self
fn from(src: (T, T, T, T)) -> Self
source§impl<T: Copy> From<(T, T, T, T)> for Matrix<4, 1, T>
impl<T: Copy> From<(T, T, T, T)> for Matrix<4, 1, T>
source§fn from(src: (T, T, T, T)) -> Self
fn from(src: (T, T, T, T)) -> Self
source§impl<T, const M: usize, const N: usize> FromIterator<T> for Matrix<M, N, T>
impl<T, const M: usize, const N: usize> FromIterator<T> for Matrix<M, N, T>
source§fn from_iter<I>(iter: I) -> Selfwhere
I: IntoIterator<Item = T>,
fn from_iter<I>(iter: I) -> Selfwhere
I: IntoIterator<Item = T>,
Create a new matrix from an iterator.
Elements will be filled in column-major order.
Panics
If the iterator doesn’t yield enough elements to fill the matrix.
source§impl<T, I, const M: usize, const N: usize> Index<I> for Matrix<M, N, T>where
I: MatrixIndex<Self>,
impl<T, I, const M: usize, const N: usize> Index<I> for Matrix<M, N, T>where
I: MatrixIndex<Self>,
source§impl<T, I, const M: usize, const N: usize> IndexMut<I> for Matrix<M, N, T>where
I: MatrixIndex<Self>,
impl<T, I, const M: usize, const N: usize> IndexMut<I> for Matrix<M, N, T>where
I: MatrixIndex<Self>,
source§impl<T, const M: usize, const N: usize> MatrixIndex<Matrix<M, N, T>> for (usize, usize)
impl<T, const M: usize, const N: usize> MatrixIndex<Matrix<M, N, T>> for (usize, usize)
source§fn get(self, matrix: &Matrix<M, N, T>) -> Option<&Self::Output>
fn get(self, matrix: &Matrix<M, N, T>) -> Option<&Self::Output>
source§fn get_mut(self, matrix: &mut Matrix<M, N, T>) -> Option<&mut Self::Output>
fn get_mut(self, matrix: &mut Matrix<M, N, T>) -> Option<&mut Self::Output>
source§unsafe fn get_unchecked(
self,
matrix: *const Matrix<M, N, T>
) -> *const Self::Output
unsafe fn get_unchecked(
self,
matrix: *const Matrix<M, N, T>
) -> *const Self::Output
source§unsafe fn get_unchecked_mut(
self,
matrix: *mut Matrix<M, N, T>
) -> *mut Self::Output
unsafe fn get_unchecked_mut(
self,
matrix: *mut Matrix<M, N, T>
) -> *mut Self::Output
source§impl<T, const M: usize, const N: usize> MatrixIndex<Matrix<M, N, T>> for usize
impl<T, const M: usize, const N: usize> MatrixIndex<Matrix<M, N, T>> for usize
source§fn get(self, matrix: &Matrix<M, N, T>) -> Option<&Self::Output>
fn get(self, matrix: &Matrix<M, N, T>) -> Option<&Self::Output>
source§fn get_mut(self, matrix: &mut Matrix<M, N, T>) -> Option<&mut Self::Output>
fn get_mut(self, matrix: &mut Matrix<M, N, T>) -> Option<&mut Self::Output>
source§unsafe fn get_unchecked(
self,
matrix: *const Matrix<M, N, T>
) -> *const Self::Output
unsafe fn get_unchecked(
self,
matrix: *const Matrix<M, N, T>
) -> *const Self::Output
source§unsafe fn get_unchecked_mut(
self,
matrix: *mut Matrix<M, N, T>
) -> *mut Self::Output
unsafe fn get_unchecked_mut(
self,
matrix: *mut Matrix<M, N, T>
) -> *mut Self::Output
source§impl<T, const N: usize, const M: usize, const P: usize> Mul<&Matrix<N, P, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
impl<T, const N: usize, const M: usize, const P: usize> Mul<&Matrix<N, P, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
source§impl<T, const N: usize, const M: usize, const P: usize> Mul<&Matrix<N, P, T>> for Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
impl<T, const N: usize, const M: usize, const P: usize> Mul<&Matrix<N, P, T>> for Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
source§impl<T, const M: usize, const N: usize> Mul<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T>,
impl<T, const M: usize, const N: usize> Mul<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T>,
source§impl<T, const M: usize, const N: usize> Mul<&T> for Matrix<M, N, T>where
T: Copy + Mul<Output = T>,
impl<T, const M: usize, const N: usize> Mul<&T> for Matrix<M, N, T>where
T: Copy + Mul<Output = T>,
source§impl<T, const N: usize, const M: usize, const P: usize> Mul<Matrix<N, P, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
impl<T, const N: usize, const M: usize, const P: usize> Mul<Matrix<N, P, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
source§impl<T, const N: usize, const M: usize, const P: usize> Mul<Matrix<N, P, T>> for Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
impl<T, const N: usize, const M: usize, const P: usize> Mul<Matrix<N, P, T>> for Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T> + Sum,
source§impl<T, const M: usize, const N: usize> Mul<T> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T>,
impl<T, const M: usize, const N: usize> Mul<T> for &Matrix<M, N, T>where
T: Copy + Zero + Mul<Output = T>,
source§impl<T, const M: usize, const N: usize> Mul<T> for Matrix<M, N, T>where
T: Copy + Mul<Output = T>,
impl<T, const M: usize, const N: usize> Mul<T> for Matrix<M, N, T>where
T: Copy + Mul<Output = T>,
source§impl<T, const M: usize, const N: usize> MulAssign<&T> for Matrix<M, N, T>where
T: Copy + MulAssign<T>,
impl<T, const M: usize, const N: usize> MulAssign<&T> for Matrix<M, N, T>where
T: Copy + MulAssign<T>,
source§fn mul_assign(&mut self, other: &T)
fn mul_assign(&mut self, other: &T)
*=
operation. Read moresource§impl<'a, T, const M: usize, const N: usize> MulAssign<T> for Matrix<M, N, T>where
T: Copy + MulAssign<T>,
impl<'a, T, const M: usize, const N: usize> MulAssign<T> for Matrix<M, N, T>where
T: Copy + MulAssign<T>,
source§fn mul_assign(&mut self, other: T)
fn mul_assign(&mut self, other: T)
*=
operation. Read moresource§impl<T, const M: usize, const N: usize> Neg for &Matrix<M, N, T>where
T: Copy + Zero + Neg<Output = T>,
impl<T, const M: usize, const N: usize> Neg for &Matrix<M, N, T>where
T: Copy + Zero + Neg<Output = T>,
source§impl<T, const M: usize, const N: usize> Neg for Matrix<M, N, T>where
T: Copy + Zero + Neg<Output = T>,
impl<T, const M: usize, const N: usize> Neg for Matrix<M, N, T>where
T: Copy + Zero + Neg<Output = T>,
source§impl<T, const M: usize, const N: usize> Not for &Matrix<M, N, T>where
T: Copy + Zero + Not<Output = T>,
impl<T, const M: usize, const N: usize> Not for &Matrix<M, N, T>where
T: Copy + Zero + Not<Output = T>,
source§impl<T, const M: usize, const N: usize> Not for Matrix<M, N, T>where
T: Copy + Zero + Not<Output = T>,
impl<T, const M: usize, const N: usize> Not for Matrix<M, N, T>where
T: Copy + Zero + Not<Output = T>,
source§impl<const M: usize, const N: usize, T: Ord> Ord for Matrix<M, N, T>
impl<const M: usize, const N: usize, T: Ord> Ord for Matrix<M, N, T>
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl<const M: usize, const N: usize, T: PartialEq> PartialEq<Matrix<M, N, T>> for Matrix<M, N, T>
impl<const M: usize, const N: usize, T: PartialEq> PartialEq<Matrix<M, N, T>> for Matrix<M, N, T>
source§impl<const M: usize, const N: usize, T: PartialOrd> PartialOrd<Matrix<M, N, T>> for Matrix<M, N, T>
impl<const M: usize, const N: usize, T: PartialOrd> PartialOrd<Matrix<M, N, T>> for Matrix<M, N, T>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl<const M: usize, const N: usize, T: RelativeEq> RelativeEq<Matrix<M, N, T>> for Matrix<M, N, T>where
T::Epsilon: Copy,
impl<const M: usize, const N: usize, T: RelativeEq> RelativeEq<Matrix<M, N, T>> for Matrix<M, N, T>where
T::Epsilon: Copy,
source§fn default_max_relative() -> Self::Epsilon
fn default_max_relative() -> Self::Epsilon
source§fn relative_eq(
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
fn relative_eq(
&self,
other: &Self,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
source§fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
RelativeEq::relative_eq
.source§impl<T, const M: usize, const N: usize> Rem<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Rem<Output = T>,
impl<T, const M: usize, const N: usize> Rem<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Rem<Output = T>,
source§impl<T, const M: usize, const N: usize> Rem<&T> for Matrix<M, N, T>where
T: Copy + Rem<Output = T>,
impl<T, const M: usize, const N: usize> Rem<&T> for Matrix<M, N, T>where
T: Copy + Rem<Output = T>,
source§impl<T, const M: usize, const N: usize> Rem<T> for &Matrix<M, N, T>where
T: Copy + Zero + Rem<Output = T>,
impl<T, const M: usize, const N: usize> Rem<T> for &Matrix<M, N, T>where
T: Copy + Zero + Rem<Output = T>,
source§impl<T, const M: usize, const N: usize> Rem<T> for Matrix<M, N, T>where
T: Copy + Rem<Output = T>,
impl<T, const M: usize, const N: usize> Rem<T> for Matrix<M, N, T>where
T: Copy + Rem<Output = T>,
source§impl<T, const M: usize, const N: usize> RemAssign<&T> for Matrix<M, N, T>where
T: Copy + RemAssign<T>,
impl<T, const M: usize, const N: usize> RemAssign<&T> for Matrix<M, N, T>where
T: Copy + RemAssign<T>,
source§fn rem_assign(&mut self, other: &T)
fn rem_assign(&mut self, other: &T)
%=
operation. Read moresource§impl<'a, T, const M: usize, const N: usize> RemAssign<T> for Matrix<M, N, T>where
T: Copy + RemAssign<T>,
impl<'a, T, const M: usize, const N: usize> RemAssign<T> for Matrix<M, N, T>where
T: Copy + RemAssign<T>,
source§fn rem_assign(&mut self, other: T)
fn rem_assign(&mut self, other: T)
%=
operation. Read moresource§impl<T, const M: usize, const N: usize> Sub<&Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<&Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<&T> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<&T> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<&T> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<Matrix<M, N, T>> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<T> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<T> for &Matrix<M, N, T>where
T: Copy + Zero + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> Sub<T> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
impl<T, const M: usize, const N: usize> Sub<T> for Matrix<M, N, T>where
T: Copy + Sub<Output = T>,
source§impl<T, const M: usize, const N: usize> SubAssign<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + SubAssign,
impl<T, const M: usize, const N: usize> SubAssign<&Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + SubAssign,
source§fn sub_assign(&mut self, other: &Matrix<M, N, T>)
fn sub_assign(&mut self, other: &Matrix<M, N, T>)
-=
operation. Read moresource§impl<T, const M: usize, const N: usize> SubAssign<&T> for Matrix<M, N, T>where
T: Copy + SubAssign<T>,
impl<T, const M: usize, const N: usize> SubAssign<&T> for Matrix<M, N, T>where
T: Copy + SubAssign<T>,
source§fn sub_assign(&mut self, other: &T)
fn sub_assign(&mut self, other: &T)
-=
operation. Read moresource§impl<T, const M: usize, const N: usize> SubAssign<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + SubAssign,
impl<T, const M: usize, const N: usize> SubAssign<Matrix<M, N, T>> for Matrix<M, N, T>where
T: Copy + SubAssign,
source§fn sub_assign(&mut self, other: Matrix<M, N, T>)
fn sub_assign(&mut self, other: Matrix<M, N, T>)
-=
operation. Read moresource§impl<'a, T, const M: usize, const N: usize> SubAssign<T> for Matrix<M, N, T>where
T: Copy + SubAssign<T>,
impl<'a, T, const M: usize, const N: usize> SubAssign<T> for Matrix<M, N, T>where
T: Copy + SubAssign<T>,
source§fn sub_assign(&mut self, other: T)
fn sub_assign(&mut self, other: T)
-=
operation. Read more