pub struct SymmetricDMat2 {
pub m00: f64,
pub m01: f64,
pub m11: f64,
}
Expand description
The bottom left triangle (including the diagonal) of a symmetric 2x2 column-major matrix.
This is useful for storing a symmetric 2x2 matrix in a more compact form and performing some matrix operations more efficiently.
Some defining properties of symmetric matrices include:
- The matrix is equal to its transpose.
- The matrix has real eigenvalues.
- The eigenvectors corresponding to the eigenvalues are orthogonal.
- The matrix is always diagonalizable.
The sum and difference of two symmetric matrices is always symmetric.
However, the product of two symmetric matrices is only symmetric
if the matrices are commutable, meaning that AB = BA
.
Fields§
§m00: f64
The first element of the first column.
m01: f64
The second element of the first column.
m11: f64
The second element of the second column.
Implementations§
Source§impl SymmetricDMat2
impl SymmetricDMat2
Sourcepub const IDENTITY: Self
pub const IDENTITY: Self
A symmetric 2x2 identity matrix, where all diagonal elements are 1.0
,
and all off-diagonal elements are 0.0
.
Sourcepub const fn new(m00: f64, m01: f64, m11: f64) -> Self
pub const fn new(m00: f64, m01: f64, m11: f64) -> Self
Creates a new symmetric 2x2 matrix from its bottom left triangle, including diagonal elements.
The elements are in column-major order mCR
, where C
is the column index
and R
is the row index.
Sourcepub const fn from_cols_unchecked(x_axis: DVec2, y_axis: DVec2) -> Self
pub const fn from_cols_unchecked(x_axis: DVec2, y_axis: DVec2) -> Self
Creates a symmetric 2x2 matrix from three column vectors.
Only the lower left triangle of the matrix is used. No check is performed to ensure that the given columns truly produce a symmetric matrix.
Sourcepub const fn from_cols_array_unchecked(m: &[f64; 4]) -> Self
pub const fn from_cols_array_unchecked(m: &[f64; 4]) -> Self
Creates a symmetric 2x2 matrix from an array stored in column major order.
Only the lower left triangle of the matrix is used. No check is performed to ensure that the given columns truly produce a symmetric matrix.
Sourcepub const fn to_cols_array(&self) -> [f64; 4]
pub const fn to_cols_array(&self) -> [f64; 4]
Creates an array storing data in column major order.
Sourcepub const fn from_cols_array_2d_unchecked(m: &[[f64; 2]; 2]) -> Self
pub const fn from_cols_array_2d_unchecked(m: &[[f64; 2]; 2]) -> Self
Creates a symmetric 2x2 matrix from a 2D array stored in column major order.
Only the lower left triangle of the matrix is used. No check is performed to ensure that the given columns truly produce a symmetric matrix.
Sourcepub const fn to_cols_array_2d(&self) -> [[f64; 2]; 2]
pub const fn to_cols_array_2d(&self) -> [[f64; 2]; 2]
Creates a 2D array storing data in column major order.
Sourcepub const fn from_cols_slice(slice: &[f64]) -> Self
pub const fn from_cols_slice(slice: &[f64]) -> Self
Creates a 2x2 matrix from the first 4 values in slice
.
Only the lower left triangle of the matrix is used. No check is performed to ensure that the given columns truly produce a symmetric matrix.
§Panics
Panics if slice
is less than 4 elements long.
Sourcepub const fn from_diagonal(diagonal: DVec2) -> Self
pub const fn from_diagonal(diagonal: DVec2) -> Self
Creates a symmetric 2x2 matrix with its diagonal set to diagonal
and all other entries set to 0.0
.
Sourcepub fn try_from_mat2(mat: DMat2) -> Result<Self, MatConversionError>
pub fn try_from_mat2(mat: DMat2) -> Result<Self, MatConversionError>
Tries to create a symmetric 2x2 matrix from a 2x2 matrix.
§Errors
Returns a MatConversionError
if the given matrix is not symmetric.
Sourcepub fn from_mat2_unchecked(mat: DMat2) -> Self
pub fn from_mat2_unchecked(mat: DMat2) -> Self
Creates a symmetric 2x2 matrix from a 2x2 matrix.
Only the lower left triangle of the matrix is used. No check is performed to ensure that the given matrix is truly symmetric.
Sourcepub const fn to_mat2(&self) -> DMat2
pub const fn to_mat2(&self) -> DMat2
Creates a 2x2 matrix from the symmetric 2x2 matrix in self
.
Sourcepub fn from_outer_product(v: DVec2) -> Self
pub fn from_outer_product(v: DVec2) -> Self
Creates a new symmetric 2x2 matrix from the outer product v * v^T
.
Sourcepub fn is_finite(&self) -> bool
pub fn is_finite(&self) -> bool
Returns true
if, and only if, all elements are finite.
If any element is either NaN
or positive or negative infinity, this will return false
.
Sourcepub fn determinant(&self) -> f64
pub fn determinant(&self) -> f64
Returns the determinant of self
.
Sourcepub fn inverse(&self) -> Self
pub fn inverse(&self) -> Self
Returns the inverse of self
.
If the matrix is not invertible the returned matrix will be invalid.
Sourcepub fn inverse_or_zero(&self) -> Self
pub fn inverse_or_zero(&self) -> Self
Returns the inverse of self
, or a zero matrix if the matrix is not invertible.
Sourcepub fn complete_mat23_sandwich(a: &DMat23, b: &DMat23) -> Self
pub fn complete_mat23_sandwich(a: &DMat23, b: &DMat23) -> Self
Computes a * transpose(b)
, assuming a = b * M
for some symmetric matrix M
.
This effectively completes the second half of the sandwich product b * M * transpose(b)
.
Sourcepub fn complete_mat32_sandwich(a: &DMat32, b: &DMat32) -> Self
pub fn complete_mat32_sandwich(a: &DMat32, b: &DMat32) -> Self
Computes a * transpose(b)
, assuming a = b * M
for some symmetric matrix M
.
This effectively completes the second half of the sandwich product b * M * transpose(b)
.
Sourcepub fn mul_symmetric_mat2(&self, rhs: &Self) -> DMat2
pub fn mul_symmetric_mat2(&self, rhs: &Self) -> DMat2
Multiplies two symmetric 2x2 matrices.
Sourcepub fn add_symmetric_mat2(&self, rhs: &Self) -> Self
pub fn add_symmetric_mat2(&self, rhs: &Self) -> Self
Adds two symmetric 2x2 matrices.
Sourcepub fn sub_symmetric_mat2(&self, rhs: &Self) -> Self
pub fn sub_symmetric_mat2(&self, rhs: &Self) -> Self
Subtracts two symmetric 2x2 matrices.
Sourcepub fn mul_scalar(&self, rhs: f64) -> Self
pub fn mul_scalar(&self, rhs: f64) -> Self
Multiplies a 2x2 matrix by a scalar.
Sourcepub fn div_scalar(&self, rhs: f64) -> Self
pub fn div_scalar(&self, rhs: f64) -> Self
Divides a 2x2 matrix by a scalar.
Source§impl SymmetricDMat2
impl SymmetricDMat2
Sourcepub fn as_symmetric_mat2(&self) -> SymmetricMat2
pub fn as_symmetric_mat2(&self) -> SymmetricMat2
Returns the single precision version of self
.
Trait Implementations§
Source§impl Add<&&SymmetricDMat2> for &SymmetricDMat2
impl Add<&&SymmetricDMat2> for &SymmetricDMat2
Source§impl Add<&DMat2> for &SymmetricDMat2
impl Add<&DMat2> for &SymmetricDMat2
Source§impl Add<&DMat2> for SymmetricDMat2
impl Add<&DMat2> for SymmetricDMat2
Source§impl Add<&SymmetricDMat2> for &DMat2
impl Add<&SymmetricDMat2> for &DMat2
Source§impl Add<&SymmetricDMat2> for DMat2
impl Add<&SymmetricDMat2> for DMat2
Source§impl Add<&SymmetricDMat2> for SymmetricDMat2
impl Add<&SymmetricDMat2> for SymmetricDMat2
Source§impl Add<DMat2> for &SymmetricDMat2
impl Add<DMat2> for &SymmetricDMat2
Source§impl Add<DMat2> for SymmetricDMat2
impl Add<DMat2> for SymmetricDMat2
Source§impl Add<SymmetricDMat2> for DMat2
impl Add<SymmetricDMat2> for DMat2
Source§impl Add for &SymmetricDMat2
impl Add for &SymmetricDMat2
Source§impl Add for SymmetricDMat2
impl Add for SymmetricDMat2
Source§impl AddAssign<&SymmetricDMat2> for DMat2
impl AddAssign<&SymmetricDMat2> for DMat2
Source§fn add_assign(&mut self, rhs: &SymmetricDMat2)
fn add_assign(&mut self, rhs: &SymmetricDMat2)
+=
operation. Read moreSource§impl AddAssign<&SymmetricDMat2> for SymmetricDMat2
impl AddAssign<&SymmetricDMat2> for SymmetricDMat2
Source§fn add_assign(&mut self, rhs: &Self)
fn add_assign(&mut self, rhs: &Self)
+=
operation. Read moreSource§impl AddAssign<SymmetricDMat2> for DMat2
impl AddAssign<SymmetricDMat2> for DMat2
Source§fn add_assign(&mut self, rhs: SymmetricDMat2)
fn add_assign(&mut self, rhs: SymmetricDMat2)
+=
operation. Read moreSource§impl AddAssign for SymmetricDMat2
impl AddAssign for SymmetricDMat2
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
+=
operation. Read moreSource§impl Clone for SymmetricDMat2
impl Clone for SymmetricDMat2
Source§fn clone(&self) -> SymmetricDMat2
fn clone(&self) -> SymmetricDMat2
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for SymmetricDMat2
impl Debug for SymmetricDMat2
Source§impl Default for SymmetricDMat2
impl Default for SymmetricDMat2
Source§impl Display for SymmetricDMat2
impl Display for SymmetricDMat2
Source§impl Div<&SymmetricDMat2> for &f64
impl Div<&SymmetricDMat2> for &f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
/
operator.Source§impl Div<&SymmetricDMat2> for f64
impl Div<&SymmetricDMat2> for f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
/
operator.Source§impl Div<&f64> for &SymmetricDMat2
impl Div<&f64> for &SymmetricDMat2
Source§impl Div<&f64> for SymmetricDMat2
impl Div<&f64> for SymmetricDMat2
Source§impl Div<SymmetricDMat2> for &f64
impl Div<SymmetricDMat2> for &f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
/
operator.Source§impl Div<SymmetricDMat2> for f64
impl Div<SymmetricDMat2> for f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
/
operator.Source§impl Div<f64> for &SymmetricDMat2
impl Div<f64> for &SymmetricDMat2
Source§impl Div<f64> for SymmetricDMat2
impl Div<f64> for SymmetricDMat2
Source§impl DivAssign<&f64> for SymmetricDMat2
impl DivAssign<&f64> for SymmetricDMat2
Source§fn div_assign(&mut self, rhs: &f64)
fn div_assign(&mut self, rhs: &f64)
/=
operation. Read moreSource§impl DivAssign<f64> for SymmetricDMat2
impl DivAssign<f64> for SymmetricDMat2
Source§fn div_assign(&mut self, rhs: f64)
fn div_assign(&mut self, rhs: f64)
/=
operation. Read moreSource§impl From<SymmetricDMat2> for DMat2
impl From<SymmetricDMat2> for DMat2
Source§fn from(mat: SymmetricDMat2) -> Self
fn from(mat: SymmetricDMat2) -> Self
Source§impl FromReflect for SymmetricDMat2
impl FromReflect for SymmetricDMat2
Source§fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
Self
from a reflected value.Source§fn take_from_reflect(
reflect: Box<dyn PartialReflect>,
) -> Result<Self, Box<dyn PartialReflect>>
fn take_from_reflect( reflect: Box<dyn PartialReflect>, ) -> Result<Self, Box<dyn PartialReflect>>
Self
using,
constructing the value using from_reflect
if that fails. Read moreSource§impl GetTypeRegistration for SymmetricDMat2
impl GetTypeRegistration for SymmetricDMat2
Source§fn get_type_registration() -> TypeRegistration
fn get_type_registration() -> TypeRegistration
TypeRegistration
for this type.Source§fn register_type_dependencies(registry: &mut TypeRegistry)
fn register_type_dependencies(registry: &mut TypeRegistry)
Source§impl Mul<&&SymmetricDMat2> for &SymmetricDMat2
impl Mul<&&SymmetricDMat2> for &SymmetricDMat2
Source§impl Mul<&DMat2> for &SymmetricDMat2
impl Mul<&DMat2> for &SymmetricDMat2
Source§impl Mul<&DMat2> for SymmetricDMat2
impl Mul<&DMat2> for SymmetricDMat2
Source§impl Mul<&DMat23> for &SymmetricDMat2
impl Mul<&DMat23> for &SymmetricDMat2
Source§impl Mul<&DMat23> for SymmetricDMat2
impl Mul<&DMat23> for SymmetricDMat2
Source§impl Mul<&DVec2> for &SymmetricDMat2
impl Mul<&DVec2> for &SymmetricDMat2
Source§impl Mul<&DVec2> for SymmetricDMat2
impl Mul<&DVec2> for SymmetricDMat2
Source§impl Mul<&SymmetricDMat2> for &DMat2
impl Mul<&SymmetricDMat2> for &DMat2
Source§impl Mul<&SymmetricDMat2> for &DMat32
impl Mul<&SymmetricDMat2> for &DMat32
Source§impl Mul<&SymmetricDMat2> for &f64
impl Mul<&SymmetricDMat2> for &f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
*
operator.Source§impl Mul<&SymmetricDMat2> for DMat2
impl Mul<&SymmetricDMat2> for DMat2
Source§impl Mul<&SymmetricDMat2> for DMat32
impl Mul<&SymmetricDMat2> for DMat32
Source§impl Mul<&SymmetricDMat2> for SymmetricDMat2
impl Mul<&SymmetricDMat2> for SymmetricDMat2
Source§impl Mul<&SymmetricDMat2> for f64
impl Mul<&SymmetricDMat2> for f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
*
operator.Source§impl Mul<&f64> for &SymmetricDMat2
impl Mul<&f64> for &SymmetricDMat2
Source§impl Mul<&f64> for SymmetricDMat2
impl Mul<&f64> for SymmetricDMat2
Source§impl Mul<DMat2> for &SymmetricDMat2
impl Mul<DMat2> for &SymmetricDMat2
Source§impl Mul<DMat2> for SymmetricDMat2
impl Mul<DMat2> for SymmetricDMat2
Source§impl Mul<DMat23> for &SymmetricDMat2
impl Mul<DMat23> for &SymmetricDMat2
Source§impl Mul<DMat23> for SymmetricDMat2
impl Mul<DMat23> for SymmetricDMat2
Source§impl Mul<DVec2> for &SymmetricDMat2
impl Mul<DVec2> for &SymmetricDMat2
Source§impl Mul<DVec2> for SymmetricDMat2
impl Mul<DVec2> for SymmetricDMat2
Source§impl Mul<SymmetricDMat2> for &DMat2
impl Mul<SymmetricDMat2> for &DMat2
Source§impl Mul<SymmetricDMat2> for &DMat32
impl Mul<SymmetricDMat2> for &DMat32
Source§impl Mul<SymmetricDMat2> for &f64
impl Mul<SymmetricDMat2> for &f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
*
operator.Source§impl Mul<SymmetricDMat2> for DMat2
impl Mul<SymmetricDMat2> for DMat2
Source§impl Mul<SymmetricDMat2> for DMat32
impl Mul<SymmetricDMat2> for DMat32
Source§impl Mul<SymmetricDMat2> for f64
impl Mul<SymmetricDMat2> for f64
Source§type Output = SymmetricDMat2
type Output = SymmetricDMat2
*
operator.Source§impl Mul<f64> for &SymmetricDMat2
impl Mul<f64> for &SymmetricDMat2
Source§impl Mul<f64> for SymmetricDMat2
impl Mul<f64> for SymmetricDMat2
Source§impl Mul for &SymmetricDMat2
impl Mul for &SymmetricDMat2
Source§impl Mul for SymmetricDMat2
impl Mul for SymmetricDMat2
Source§impl MulAssign<&SymmetricDMat2> for DMat2
impl MulAssign<&SymmetricDMat2> for DMat2
Source§fn mul_assign(&mut self, rhs: &SymmetricDMat2)
fn mul_assign(&mut self, rhs: &SymmetricDMat2)
*=
operation. Read moreSource§impl MulAssign<&f64> for SymmetricDMat2
impl MulAssign<&f64> for SymmetricDMat2
Source§fn mul_assign(&mut self, rhs: &f64)
fn mul_assign(&mut self, rhs: &f64)
*=
operation. Read moreSource§impl MulAssign<SymmetricDMat2> for DMat2
impl MulAssign<SymmetricDMat2> for DMat2
Source§fn mul_assign(&mut self, rhs: SymmetricDMat2)
fn mul_assign(&mut self, rhs: SymmetricDMat2)
*=
operation. Read moreSource§impl MulAssign<f64> for SymmetricDMat2
impl MulAssign<f64> for SymmetricDMat2
Source§fn mul_assign(&mut self, rhs: f64)
fn mul_assign(&mut self, rhs: f64)
*=
operation. Read moreSource§impl Neg for &SymmetricDMat2
impl Neg for &SymmetricDMat2
Source§impl Neg for SymmetricDMat2
impl Neg for SymmetricDMat2
Source§impl PartialEq for SymmetricDMat2
impl PartialEq for SymmetricDMat2
Source§impl PartialReflect for SymmetricDMat2
impl PartialReflect for SymmetricDMat2
Source§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
Source§fn try_apply(&mut self, value: &dyn PartialReflect) -> Result<(), ApplyError>
fn try_apply(&mut self, value: &dyn PartialReflect) -> Result<(), ApplyError>
Source§fn reflect_kind(&self) -> ReflectKind
fn reflect_kind(&self) -> ReflectKind
Source§fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
Source§fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
Source§fn reflect_owned(self: Box<Self>) -> ReflectOwned
fn reflect_owned(self: Box<Self>) -> ReflectOwned
Source§fn try_into_reflect(
self: Box<Self>,
) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
fn try_into_reflect( self: Box<Self>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
Source§fn try_as_reflect(&self) -> Option<&dyn Reflect>
fn try_as_reflect(&self) -> Option<&dyn Reflect>
Source§fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
Source§fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
Source§fn as_partial_reflect(&self) -> &dyn PartialReflect
fn as_partial_reflect(&self) -> &dyn PartialReflect
Source§fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
Source§fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
Source§fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
Self
using reflection. Read moreSource§fn apply(&mut self, value: &(dyn PartialReflect + 'static))
fn apply(&mut self, value: &(dyn PartialReflect + 'static))
Source§fn to_dynamic(&self) -> Box<dyn PartialReflect>
fn to_dynamic(&self) -> Box<dyn PartialReflect>
Source§fn reflect_clone_and_take<T>(&self) -> Result<T, ReflectCloneError>
fn reflect_clone_and_take<T>(&self) -> Result<T, ReflectCloneError>
PartialReflect
, combines reflect_clone
and
take
in a useful fashion, automatically constructing an appropriate
ReflectCloneError
if the downcast fails. Read moreSource§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Source§fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Source§impl Reflect for SymmetricDMat2
impl Reflect for SymmetricDMat2
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
&mut dyn Any
. Read moreSource§fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
Source§fn as_reflect(&self) -> &dyn Reflect
fn as_reflect(&self) -> &dyn Reflect
Source§fn as_reflect_mut(&mut self) -> &mut dyn Reflect
fn as_reflect_mut(&mut self) -> &mut dyn Reflect
Source§impl Struct for SymmetricDMat2
impl Struct for SymmetricDMat2
Source§fn field(&self, name: &str) -> Option<&dyn PartialReflect>
fn field(&self, name: &str) -> Option<&dyn PartialReflect>
name
as a &dyn PartialReflect
.Source§fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
name
as a
&mut dyn PartialReflect
.Source§fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
index
as a
&dyn PartialReflect
.Source§fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
index
as a &mut dyn PartialReflect
.Source§fn name_at(&self, index: usize) -> Option<&str>
fn name_at(&self, index: usize) -> Option<&str>
index
.Source§fn iter_fields(&self) -> FieldIter<'_>
fn iter_fields(&self) -> FieldIter<'_>
Source§fn to_dynamic_struct(&self) -> DynamicStruct
fn to_dynamic_struct(&self) -> DynamicStruct
DynamicStruct
from this struct.Source§fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
None
if TypeInfo
is not available.Source§impl Sub<&&SymmetricDMat2> for &SymmetricDMat2
impl Sub<&&SymmetricDMat2> for &SymmetricDMat2
Source§impl Sub<&DMat2> for &SymmetricDMat2
impl Sub<&DMat2> for &SymmetricDMat2
Source§impl Sub<&DMat2> for SymmetricDMat2
impl Sub<&DMat2> for SymmetricDMat2
Source§impl Sub<&SymmetricDMat2> for &DMat2
impl Sub<&SymmetricDMat2> for &DMat2
Source§impl Sub<&SymmetricDMat2> for DMat2
impl Sub<&SymmetricDMat2> for DMat2
Source§impl Sub<&SymmetricDMat2> for SymmetricDMat2
impl Sub<&SymmetricDMat2> for SymmetricDMat2
Source§impl Sub<DMat2> for &SymmetricDMat2
impl Sub<DMat2> for &SymmetricDMat2
Source§impl Sub<DMat2> for SymmetricDMat2
impl Sub<DMat2> for SymmetricDMat2
Source§impl Sub<SymmetricDMat2> for DMat2
impl Sub<SymmetricDMat2> for DMat2
Source§impl Sub for &SymmetricDMat2
impl Sub for &SymmetricDMat2
Source§impl Sub for SymmetricDMat2
impl Sub for SymmetricDMat2
Source§impl SubAssign<&SymmetricDMat2> for DMat2
impl SubAssign<&SymmetricDMat2> for DMat2
Source§fn sub_assign(&mut self, rhs: &SymmetricDMat2)
fn sub_assign(&mut self, rhs: &SymmetricDMat2)
-=
operation. Read moreSource§impl SubAssign<&SymmetricDMat2> for SymmetricDMat2
impl SubAssign<&SymmetricDMat2> for SymmetricDMat2
Source§fn sub_assign(&mut self, rhs: &Self)
fn sub_assign(&mut self, rhs: &Self)
-=
operation. Read moreSource§impl SubAssign<SymmetricDMat2> for DMat2
impl SubAssign<SymmetricDMat2> for DMat2
Source§fn sub_assign(&mut self, rhs: SymmetricDMat2)
fn sub_assign(&mut self, rhs: SymmetricDMat2)
-=
operation. Read moreSource§impl SubAssign for SymmetricDMat2
impl SubAssign for SymmetricDMat2
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
-=
operation. Read moreSource§impl<'a> Sum<&'a SymmetricDMat2> for SymmetricDMat2
impl<'a> Sum<&'a SymmetricDMat2> for SymmetricDMat2
Source§fn sum<I: Iterator<Item = &'a SymmetricDMat2>>(iter: I) -> Self
fn sum<I: Iterator<Item = &'a SymmetricDMat2>>(iter: I) -> Self
Self
from the elements by “summing up”
the items.Source§impl Sum for SymmetricDMat2
impl Sum for SymmetricDMat2
Source§fn sum<I: Iterator<Item = SymmetricDMat2>>(iter: I) -> Self
fn sum<I: Iterator<Item = SymmetricDMat2>>(iter: I) -> Self
Self
from the elements by “summing up”
the items.Source§impl TryFrom<DMat2> for SymmetricDMat2
impl TryFrom<DMat2> for SymmetricDMat2
Source§impl TypePath for SymmetricDMat2
impl TypePath for SymmetricDMat2
Source§fn type_path() -> &'static str
fn type_path() -> &'static str
Source§fn short_type_path() -> &'static str
fn short_type_path() -> &'static str
Source§fn type_ident() -> Option<&'static str>
fn type_ident() -> Option<&'static str>
Source§fn crate_name() -> Option<&'static str>
fn crate_name() -> Option<&'static str>
Source§impl Typed for SymmetricDMat2
impl Typed for SymmetricDMat2
impl Copy for SymmetricDMat2
impl StructuralPartialEq for SymmetricDMat2
Auto Trait Implementations§
impl Freeze for SymmetricDMat2
impl RefUnwindSafe for SymmetricDMat2
impl Send for SymmetricDMat2
impl Sync for SymmetricDMat2
impl Unpin for SymmetricDMat2
impl UnwindSafe for SymmetricDMat2
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> DynamicTypePath for Twhere
T: TypePath,
impl<T> DynamicTypePath for Twhere
T: TypePath,
Source§fn reflect_type_path(&self) -> &str
fn reflect_type_path(&self) -> &str
TypePath::type_path
.Source§fn reflect_short_type_path(&self) -> &str
fn reflect_short_type_path(&self) -> &str
Source§fn reflect_type_ident(&self) -> Option<&str>
fn reflect_type_ident(&self) -> Option<&str>
TypePath::type_ident
.Source§fn reflect_crate_name(&self) -> Option<&str>
fn reflect_crate_name(&self) -> Option<&str>
TypePath::crate_name
.Source§fn reflect_module_path(&self) -> Option<&str>
fn reflect_module_path(&self) -> Option<&str>
Source§impl<T> DynamicTyped for Twhere
T: Typed,
impl<T> DynamicTyped for Twhere
T: Typed,
Source§fn reflect_type_info(&self) -> &'static TypeInfo
fn reflect_type_info(&self) -> &'static TypeInfo
Typed::type_info
.Source§impl<S> GetField for Swhere
S: Struct,
impl<S> GetField for Swhere
S: Struct,
Source§impl<T> GetPath for T
impl<T> GetPath for T
Source§fn reflect_path<'p>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path<'p>( &self, path: impl ReflectPath<'p>, ) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
path
. Read moreSource§fn reflect_path_mut<'p>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut (dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path_mut<'p>( &mut self, path: impl ReflectPath<'p>, ) -> Result<&mut (dyn PartialReflect + 'static), ReflectPathError<'p>>
path
. Read moreSource§fn path<'p, T>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
fn path<'p, T>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
path
. Read moreSource§fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
path
. Read more