Trait sp_std::ops::DivAssign

1.8.0 · source · []
pub trait DivAssign<Rhs = Self> {
    fn div_assign(&mut self, rhs: Rhs);
}
Expand description

The division assignment operator /=.

Examples

use std::ops::DivAssign;

#[derive(Debug, PartialEq)]
struct Frequency { hertz: f64 }

impl DivAssign<f64> for Frequency {
    fn div_assign(&mut self, rhs: f64) {
        self.hertz /= rhs;
    }
}

let mut frequency = Frequency { hertz: 200.0 };
frequency /= 4.0;
assert_eq!(Frequency { hertz: 50.0 }, frequency);

Required methods

Performs the /= operation.

Example
let mut x: u32 = 12;
x /= 2;
assert_eq!(x, 6);

Implementations on Foreign Types

Implementors

impl<T, R: Dim, C: Dim, S> DivAssign<T> for Matrix<T, R, C, S> where
    T: Scalar + ClosedDiv,
    S: StorageMut<T, R, C>, 

impl<T: Scalar + ClosedDiv, const D: usize> DivAssign<T> for Point<T, D>

impl<T, const D: usize> DivAssign<Rotation<T, D>> for Rotation<T, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul

impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Rotation<T, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul

impl<T, const R1: usize, const C1: usize> DivAssign<Rotation<T, C1>> for SMatrix<T, R1, C1> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul

impl<'b, T, const R1: usize, const C1: usize> DivAssign<&'b Rotation<T, C1>> for SMatrix<T, R1, C1> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul

impl<T: SimdRealField> DivAssign<T> for Quaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<Quaternion<T>>> for UnitQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Unit<Quaternion<T>>> for UnitQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Rotation<T, 3_usize>> for UnitQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Rotation<T, 3_usize>> for UnitQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<DualQuaternion<T>>> for DualQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<DualQuaternion<T>>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<Quaternion<T>>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Translation<T, 3_usize>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Translation<T, 3_usize>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Isometry<T, Unit<Quaternion<T>>, 3_usize>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Isometry<T, Unit<Quaternion<T>>, 3_usize>> for UnitDualQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<T> for DualQuaternion<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Unit<Complex<T>>> for UnitComplex<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<Complex<T>>> for UnitComplex<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Rotation<T, 2_usize>> for UnitComplex<T> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Rotation<T, 2_usize>> for UnitComplex<T> where
    T::Element: SimdRealField

impl<T: SimdRealField> DivAssign<Unit<Complex<T>>> for Rotation<T, 2> where
    T::Element: SimdRealField

impl<'b, T: SimdRealField> DivAssign<&'b Unit<Complex<T>>> for Rotation<T, 2> where
    T::Element: SimdRealField

impl<'b, T, const D: usize> DivAssign<&'b Translation<T, D>> for Translation<T, D> where
    T: Scalar + ClosedSub

impl<T, const D: usize> DivAssign<Translation<T, D>> for Translation<T, D> where
    T: Scalar + ClosedSub

impl<T: SimdRealField, R, const D: usize> DivAssign<Isometry<T, R, D>> for Isometry<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Isometry<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<T, const D: usize> DivAssign<Rotation<T, D>> for Isometry<T, Rotation<T, D>, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Isometry<T, Rotation<T, D>, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T> DivAssign<Unit<Quaternion<T>>> for Isometry<T, UnitQuaternion<T>, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Isometry<T, UnitQuaternion<T>, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T> DivAssign<Unit<Complex<T>>> for Isometry<T, UnitComplex<T>, 2> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T> DivAssign<&'b Unit<Complex<T>>> for Isometry<T, UnitComplex<T>, 2> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T: SimdRealField, R, const D: usize> DivAssign<Similarity<T, R, D>> for Similarity<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Similarity<T, R, D>> for Similarity<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<T: SimdRealField, R, const D: usize> DivAssign<Isometry<T, R, D>> for Similarity<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<'b, T: SimdRealField, R, const D: usize> DivAssign<&'b Isometry<T, R, D>> for Similarity<T, R, D> where
    T::Element: SimdRealField,
    R: AbstractRotation<T, D>, 

impl<T, const D: usize> DivAssign<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T, const D: usize> DivAssign<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T> DivAssign<Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T> DivAssign<&'b Unit<Quaternion<T>>> for Similarity<T, UnitQuaternion<T>, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T> DivAssign<Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<'b, T> DivAssign<&'b Unit<Complex<T>>> for Similarity<T, UnitComplex<T>, 2> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + SimdRealField,
    T::Element: SimdRealField

impl<T, CA, CB, const D: usize> DivAssign<Transform<T, CB, D>> for Transform<T, CA, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    CA: SuperTCategoryOf<CB>,
    CB: SubTCategoryOf<TProjective>,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<'b, T, CA, CB, const D: usize> DivAssign<&'b Transform<T, CB, D>> for Transform<T, CA, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    CA: SuperTCategoryOf<CB>,
    CB: SubTCategoryOf<TProjective>,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<T, C, const D: usize> DivAssign<Translation<T, D>> for Transform<T, C, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    C: TCategory,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<'b, T, C, const D: usize> DivAssign<&'b Translation<T, D>> for Transform<T, C, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    C: TCategory,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<T, C, const D: usize> DivAssign<Rotation<T, D>> for Transform<T, C, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    C: TCategory,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<'b, T, C, const D: usize> DivAssign<&'b Rotation<T, D>> for Transform<T, C, D> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    Const<D>: DimNameAdd<U1>,
    C: TCategory,
    DefaultAllocator: Allocator<T, DimNameSum<Const<D>, U1>, DimNameSum<Const<D>, U1>>, 

impl<T, C> DivAssign<Unit<Quaternion<T>>> for Transform<T, C, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    C: TCategory

impl<'b, T, C> DivAssign<&'b Unit<Quaternion<T>>> for Transform<T, C, 3> where
    T: Scalar + Zero + One + ClosedAdd + ClosedMul + RealField,
    C: TCategory

impl<'a> DivAssign<&'a BigInt> for BigInt

impl DivAssign<u8> for BigInt

impl DivAssign<u16> for BigInt

impl DivAssign<i8> for BigInt

impl DivAssign<i16> for BigInt

impl DivAssign<u32> for BigInt

impl DivAssign<u64> for BigInt

impl DivAssign<i32> for BigInt

impl DivAssign<i64> for BigInt

impl<'a> DivAssign<&'a BigUint> for BigUint

impl DivAssign<u8> for BigUint

impl<T: Clone + NumAssign> DivAssign<Complex<T>> for Complex<T>

impl<T: Clone + NumAssign> DivAssign<T> for Complex<T>

impl<'a, T: Clone + NumAssign> DivAssign<&'a Complex<T>> for Complex<T>

impl<'a, T: Clone + NumAssign> DivAssign<&'a T> for Complex<T>

impl<T: Clone + Integer + NumAssign> DivAssign<Ratio<T>> for Ratio<T>

impl<T: Clone + Integer + NumAssign> DivAssign<T> for Ratio<T>

impl<'a, T: Clone + Integer + NumAssign> DivAssign<&'a Ratio<T>> for Ratio<T>

impl<'a, T: Clone + Integer + NumAssign> DivAssign<&'a T> for Ratio<T>

impl<T> DivAssign<T> for U128 where
    T: Into<U128>, 

impl<T> DivAssign<T> for U256 where
    T: Into<U256>, 

impl<T> DivAssign<T> for U512 where
    T: Into<U512>,