Trait Mul

1.0.0 · Source
pub trait Mul<Rhs = Self> {
    type Output;

    // Required method
    fn mul(self, rhs: Rhs) -> Self::Output;
}
Expand description

The multiplication operator *.

Note that Rhs is Self by default, but this is not mandatory.

§Examples

§Multipliable rational numbers

use std::ops::Mul;

// By the fundamental theorem of arithmetic, rational numbers in lowest
// terms are unique. So, by keeping `Rational`s in reduced form, we can
// derive `Eq` and `PartialEq`.
#[derive(Debug, Eq, PartialEq)]
struct Rational {
    numerator: usize,
    denominator: usize,
}

impl Rational {
    fn new(numerator: usize, denominator: usize) -> Self {
        if denominator == 0 {
            panic!("Zero is an invalid denominator!");
        }

        // Reduce to lowest terms by dividing by the greatest common
        // divisor.
        let gcd = gcd(numerator, denominator);
        Self {
            numerator: numerator / gcd,
            denominator: denominator / gcd,
        }
    }
}

impl Mul for Rational {
    // The multiplication of rational numbers is a closed operation.
    type Output = Self;

    fn mul(self, rhs: Self) -> Self {
        let numerator = self.numerator * rhs.numerator;
        let denominator = self.denominator * rhs.denominator;
        Self::new(numerator, denominator)
    }
}

// Euclid's two-thousand-year-old algorithm for finding the greatest common
// divisor.
fn gcd(x: usize, y: usize) -> usize {
    let mut x = x;
    let mut y = y;
    while y != 0 {
        let t = y;
        y = x % y;
        x = t;
    }
    x
}

assert_eq!(Rational::new(1, 2), Rational::new(2, 4));
assert_eq!(Rational::new(2, 3) * Rational::new(3, 4),
           Rational::new(1, 2));

§Multiplying vectors by scalars as in linear algebra

use std::ops::Mul;

struct Scalar { value: usize }

#[derive(Debug, PartialEq)]
struct Vector { value: Vec<usize> }

impl Mul<Scalar> for Vector {
    type Output = Self;

    fn mul(self, rhs: Scalar) -> Self::Output {
        Self { value: self.value.iter().map(|v| v * rhs.value).collect() }
    }
}

let vector = Vector { value: vec![2, 4, 6] };
let scalar = Scalar { value: 3 };
assert_eq!(vector * scalar, Vector { value: vec![6, 12, 18] });

Required Associated Types§

1.0.0 · Source

type Output

The resulting type after applying the * operator.

Required Methods§

1.0.0 · Source

fn mul(self, rhs: Rhs) -> Self::Output

Performs the * operation.

§Example
assert_eq!(12 * 2, 24);

Implementors§

1.0.0 · Source§

impl Mul for f16

1.0.0 · Source§

impl Mul for f32

1.0.0 · Source§

impl Mul for f64

1.0.0 · Source§

impl Mul for f128

1.0.0 · Source§

impl Mul for i8

1.0.0 · Source§

impl Mul for i16

1.0.0 · Source§

impl Mul for i32

1.0.0 · Source§

impl Mul for i64

1.0.0 · Source§

impl Mul for i128

1.0.0 · Source§

impl Mul for isize

1.0.0 · Source§

impl Mul for u8

1.0.0 · Source§

impl Mul for u16

1.0.0 · Source§

impl Mul for u32

1.0.0 · Source§

impl Mul for u64

1.0.0 · Source§

impl Mul for u128

1.0.0 · Source§

impl Mul for usize

Source§

impl Mul for f16

1.74.0 · Source§

impl Mul for Saturating<i8>

1.74.0 · Source§

impl Mul for Saturating<i16>

1.74.0 · Source§

impl Mul for Saturating<i32>

1.74.0 · Source§

impl Mul for Saturating<i64>

1.74.0 · Source§

impl Mul for Saturating<i128>

1.74.0 · Source§

impl Mul for Saturating<isize>

1.74.0 · Source§

impl Mul for Saturating<u8>

1.74.0 · Source§

impl Mul for Saturating<u16>

1.74.0 · Source§

impl Mul for Saturating<u32>

1.74.0 · Source§

impl Mul for Saturating<u64>

1.74.0 · Source§

impl Mul for Saturating<u128>

1.74.0 · Source§

impl Mul for Saturating<usize>

1.0.0 · Source§

impl Mul for Wrapping<i8>

1.0.0 · Source§

impl Mul for Wrapping<i16>

1.0.0 · Source§

impl Mul for Wrapping<i32>

1.0.0 · Source§

impl Mul for Wrapping<i64>

1.0.0 · Source§

impl Mul for Wrapping<i128>

1.0.0 · Source§

impl Mul for Wrapping<isize>

1.0.0 · Source§

impl Mul for Wrapping<u8>

1.0.0 · Source§

impl Mul for Wrapping<u16>

1.0.0 · Source§

impl Mul for Wrapping<u32>

1.0.0 · Source§

impl Mul for Wrapping<u64>

1.0.0 · Source§

impl Mul for Wrapping<u128>

1.0.0 · Source§

impl Mul for Wrapping<usize>

Source§

impl Mul for bf16

Source§

impl Mul for m128

Source§

impl Mul for m128d

Source§

impl Mul for AutoSimd<[f32; 2]>

Source§

impl Mul for AutoSimd<[f32; 4]>

Source§

impl Mul for AutoSimd<[f32; 8]>

Source§

impl Mul for AutoSimd<[f32; 16]>

Source§

impl Mul for AutoSimd<[f64; 2]>

Source§

impl Mul for AutoSimd<[f64; 4]>

Source§

impl Mul for AutoSimd<[f64; 8]>

Source§

impl Mul for AutoSimd<[i8; 2]>

Source§

impl Mul for AutoSimd<[i8; 4]>

Source§

impl Mul for AutoSimd<[i8; 8]>

Source§

impl Mul for AutoSimd<[i8; 16]>

Source§

impl Mul for AutoSimd<[i8; 32]>

Source§

impl Mul for AutoSimd<[i16; 2]>

Source§

impl Mul for AutoSimd<[i16; 4]>

Source§

impl Mul for AutoSimd<[i16; 8]>

Source§

impl Mul for AutoSimd<[i16; 16]>

Source§

impl Mul for AutoSimd<[i16; 32]>

Source§

impl Mul for AutoSimd<[i32; 2]>

Source§

impl Mul for AutoSimd<[i32; 4]>

Source§

impl Mul for AutoSimd<[i32; 8]>

Source§

impl Mul for AutoSimd<[i32; 16]>

Source§

impl Mul for AutoSimd<[i64; 2]>

Source§

impl Mul for AutoSimd<[i64; 4]>

Source§

impl Mul for AutoSimd<[i64; 8]>

Source§

impl Mul for AutoSimd<[i128; 1]>

Source§

impl Mul for AutoSimd<[i128; 2]>

Source§

impl Mul for AutoSimd<[i128; 4]>

Source§

impl Mul for AutoSimd<[isize; 2]>

Source§

impl Mul for AutoSimd<[isize; 4]>

Source§

impl Mul for AutoSimd<[isize; 8]>

Source§

impl Mul for AutoSimd<[u8; 2]>

Source§

impl Mul for AutoSimd<[u8; 4]>

Source§

impl Mul for AutoSimd<[u8; 8]>

Source§

impl Mul for AutoSimd<[u8; 16]>

Source§

impl Mul for AutoSimd<[u8; 32]>

Source§

impl Mul for AutoSimd<[u16; 2]>

Source§

impl Mul for AutoSimd<[u16; 4]>

Source§

impl Mul for AutoSimd<[u16; 8]>

Source§

impl Mul for AutoSimd<[u16; 16]>

Source§

impl Mul for AutoSimd<[u16; 32]>

Source§

impl Mul for AutoSimd<[u32; 2]>

Source§

impl Mul for AutoSimd<[u32; 4]>

Source§

impl Mul for AutoSimd<[u32; 8]>

Source§

impl Mul for AutoSimd<[u32; 16]>

Source§

impl Mul for AutoSimd<[u64; 2]>

Source§

impl Mul for AutoSimd<[u64; 4]>

Source§

impl Mul for AutoSimd<[u64; 8]>

Source§

impl Mul for AutoSimd<[u128; 1]>

Source§

impl Mul for AutoSimd<[u128; 2]>

Source§

impl Mul for AutoSimd<[u128; 4]>

Source§

impl Mul for AutoSimd<[usize; 2]>

Source§

impl Mul for AutoSimd<[usize; 4]>

Source§

impl Mul for AutoSimd<[usize; 8]>

Source§

impl Mul for WideF32x4

Source§

impl Mul for WideF32x8

Source§

impl Mul for WideF64x4

Source§

impl Mul for f32x4

Source§

impl Mul for f32x8

Source§

impl Mul for f64x2

Source§

impl Mul for f64x4

Source§

impl Mul for i16x8

Source§

impl Mul for i16x16

Source§

impl Mul for i32x4

Source§

impl Mul for i32x8

Source§

impl Mul for i64x2

Source§

impl Mul for i64x4

Source§

impl Mul for u16x8

Source§

impl Mul for u16x16

Source§

impl Mul for u32x4

Source§

impl Mul for u32x8

Source§

impl Mul for u64x2

Source§

impl Mul for u64x4

1.0.0 · Source§

impl Mul<&f16> for &f16

1.0.0 · Source§

impl Mul<&f16> for f16

1.0.0 · Source§

impl Mul<&f32> for &f32

1.0.0 · Source§

impl Mul<&f32> for f32

1.0.0 · Source§

impl Mul<&f64> for &f64

1.0.0 · Source§

impl Mul<&f64> for f64

1.0.0 · Source§

impl Mul<&f128> for &f128

1.0.0 · Source§

impl Mul<&f128> for f128

1.0.0 · Source§

impl Mul<&i8> for &i8

1.0.0 · Source§

impl Mul<&i8> for i8

1.0.0 · Source§

impl Mul<&i16> for &i16

1.0.0 · Source§

impl Mul<&i16> for i16

1.0.0 · Source§

impl Mul<&i32> for &i32

1.0.0 · Source§

impl Mul<&i32> for i32

1.0.0 · Source§

impl Mul<&i64> for &i64

1.0.0 · Source§

impl Mul<&i64> for i64

1.0.0 · Source§

impl Mul<&i128> for &i128

1.0.0 · Source§

impl Mul<&i128> for i128

1.0.0 · Source§

impl Mul<&isize> for &isize

1.0.0 · Source§

impl Mul<&isize> for isize

1.0.0 · Source§

impl Mul<&u8> for &u8

1.0.0 · Source§

impl Mul<&u8> for u8

1.0.0 · Source§

impl Mul<&u16> for &u16

1.0.0 · Source§

impl Mul<&u16> for u16

1.0.0 · Source§

impl Mul<&u32> for &u32

1.0.0 · Source§

impl Mul<&u32> for u32

1.0.0 · Source§

impl Mul<&u64> for &u64

1.0.0 · Source§

impl Mul<&u64> for u64

1.0.0 · Source§

impl Mul<&u128> for &u128

1.0.0 · Source§

impl Mul<&u128> for u128

1.0.0 · Source§

impl Mul<&usize> for &usize

1.0.0 · Source§

impl Mul<&usize> for usize

Source§

impl Mul<&f16> for &f16

Source§

impl Mul<&f16> for f16

1.74.0 · Source§

impl Mul<&Saturating<i8>> for &Saturating<i8>

1.74.0 · Source§

impl Mul<&Saturating<i8>> for Saturating<i8>

1.74.0 · Source§

impl Mul<&Saturating<i16>> for &Saturating<i16>

1.74.0 · Source§

impl Mul<&Saturating<i16>> for Saturating<i16>

1.74.0 · Source§

impl Mul<&Saturating<i32>> for &Saturating<i32>

1.74.0 · Source§

impl Mul<&Saturating<i32>> for Saturating<i32>

1.74.0 · Source§

impl Mul<&Saturating<i64>> for &Saturating<i64>

1.74.0 · Source§

impl Mul<&Saturating<i64>> for Saturating<i64>

1.74.0 · Source§

impl Mul<&Saturating<i128>> for &Saturating<i128>

1.74.0 · Source§

impl Mul<&Saturating<i128>> for Saturating<i128>

1.74.0 · Source§

impl Mul<&Saturating<isize>> for &Saturating<isize>

1.74.0 · Source§

impl Mul<&Saturating<isize>> for Saturating<isize>

1.74.0 · Source§

impl Mul<&Saturating<u8>> for &Saturating<u8>

1.74.0 · Source§

impl Mul<&Saturating<u8>> for Saturating<u8>

1.74.0 · Source§

impl Mul<&Saturating<u16>> for &Saturating<u16>

1.74.0 · Source§

impl Mul<&Saturating<u16>> for Saturating<u16>

1.74.0 · Source§

impl Mul<&Saturating<u32>> for &Saturating<u32>

1.74.0 · Source§

impl Mul<&Saturating<u32>> for Saturating<u32>

1.74.0 · Source§

impl Mul<&Saturating<u64>> for &Saturating<u64>

1.74.0 · Source§

impl Mul<&Saturating<u64>> for Saturating<u64>

1.74.0 · Source§

impl Mul<&Saturating<u128>> for &Saturating<u128>

1.74.0 · Source§

impl Mul<&Saturating<u128>> for Saturating<u128>

1.74.0 · Source§

impl Mul<&Saturating<usize>> for &Saturating<usize>

1.74.0 · Source§

impl Mul<&Saturating<usize>> for Saturating<usize>

1.14.0 · Source§

impl Mul<&Wrapping<i8>> for &Wrapping<i8>

1.14.0 · Source§

impl Mul<&Wrapping<i8>> for Wrapping<i8>

1.14.0 · Source§

impl Mul<&Wrapping<i16>> for &Wrapping<i16>

1.14.0 · Source§

impl Mul<&Wrapping<i16>> for Wrapping<i16>

1.14.0 · Source§

impl Mul<&Wrapping<i32>> for &Wrapping<i32>

1.14.0 · Source§

impl Mul<&Wrapping<i32>> for Wrapping<i32>

1.14.0 · Source§

impl Mul<&Wrapping<i64>> for &Wrapping<i64>

1.14.0 · Source§

impl Mul<&Wrapping<i64>> for Wrapping<i64>

1.14.0 · Source§

impl Mul<&Wrapping<i128>> for &Wrapping<i128>

1.14.0 · Source§

impl Mul<&Wrapping<i128>> for Wrapping<i128>

1.14.0 · Source§

impl Mul<&Wrapping<isize>> for &Wrapping<isize>

1.14.0 · Source§

impl Mul<&Wrapping<isize>> for Wrapping<isize>

1.14.0 · Source§

impl Mul<&Wrapping<u8>> for &Wrapping<u8>

1.14.0 · Source§

impl Mul<&Wrapping<u8>> for Wrapping<u8>

1.14.0 · Source§

impl Mul<&Wrapping<u16>> for &Wrapping<u16>

1.14.0 · Source§

impl Mul<&Wrapping<u16>> for Wrapping<u16>

1.14.0 · Source§

impl Mul<&Wrapping<u32>> for &Wrapping<u32>

1.14.0 · Source§

impl Mul<&Wrapping<u32>> for Wrapping<u32>

1.14.0 · Source§

impl Mul<&Wrapping<u64>> for &Wrapping<u64>

1.14.0 · Source§

impl Mul<&Wrapping<u64>> for Wrapping<u64>

1.14.0 · Source§

impl Mul<&Wrapping<u128>> for &Wrapping<u128>

1.14.0 · Source§

impl Mul<&Wrapping<u128>> for Wrapping<u128>

1.14.0 · Source§

impl Mul<&Wrapping<usize>> for &Wrapping<usize>

1.14.0 · Source§

impl Mul<&Wrapping<usize>> for Wrapping<usize>

Source§

impl Mul<&bf16> for &bf16

Source§

impl Mul<&bf16> for bf16

Source§

impl Mul<&f32x4> for f32x4

Source§

impl Mul<&f32x8> for f32x8

Source§

impl Mul<&f64x2> for f64x2

Source§

impl Mul<&f64x4> for f64x4

Source§

impl Mul<&i16x8> for i16x8

Source§

impl Mul<&i16x16> for i16x16

Source§

impl Mul<&i32x4> for i32x4

Source§

impl Mul<&i32x8> for i32x8

Source§

impl Mul<&u16x8> for u16x8

Source§

impl Mul<&u16x16> for u16x16

Source§

impl Mul<f32> for f32x4

Source§

impl Mul<f32> for f32x8

Source§

impl Mul<f64> for f64x2

Source§

impl Mul<f64> for f64x4

Source§

impl Mul<i16> for i16x8

Source§

impl Mul<i16> for i16x16

Source§

impl Mul<i32> for i32x4

Source§

impl Mul<i32> for i32x8

Source§

impl Mul<i64> for i64x2

Source§

impl Mul<i64> for i64x4

Source§

impl Mul<u16> for u16x8

1.3.0 · Source§

impl Mul<u32> for Duration

Source§

impl Mul<u32> for u32x4

Source§

impl Mul<u64> for u64x2

Source§

impl Mul<u64> for u64x4

Source§

impl Mul<f16> for &f16

1.31.0 · Source§

impl Mul<Duration> for u32

Source§

impl Mul<bf16> for &bf16

Source§

impl Mul<DualQuaternion<f32>> for f32

Source§

impl Mul<DualQuaternion<f64>> for f64

Source§

impl Mul<Quaternion<f32>> for f32

Source§

impl Mul<Quaternion<f64>> for f64

Source§

impl Mul<Complex<f32>> for f32

Source§

impl Mul<Complex<f64>> for f64

Source§

impl Mul<Complex<i8>> for i8

Source§

impl Mul<Complex<i16>> for i16

Source§

impl Mul<Complex<i32>> for i32

Source§

impl Mul<Complex<i64>> for i64

Source§

impl Mul<Complex<i128>> for i128

Source§

impl Mul<Complex<isize>> for isize

Source§

impl Mul<Complex<u8>> for u8

Source§

impl Mul<Complex<u16>> for u16

Source§

impl Mul<Complex<u32>> for u32

Source§

impl Mul<Complex<u64>> for u64

Source§

impl Mul<Complex<u128>> for u128

Source§

impl Mul<Complex<usize>> for usize

Source§

impl Mul<ATerm> for Z0

Source§

impl Mul<B0> for UTerm

UTerm * B0 = UTerm

Source§

impl Mul<B1> for UTerm

UTerm * B1 = UTerm

Source§

impl Mul<f32x4> for f32

Source§

impl Mul<f32x8> for f32

Source§

impl Mul<f64x2> for f64

Source§

impl Mul<f64x4> for f64

Source§

impl Mul<i16x8> for i16

Source§

impl Mul<i16x16> for i16

Source§

impl Mul<i32x4> for i32

Source§

impl Mul<i32x8> for i32

Source§

impl Mul<i64x2> for i64

Source§

impl Mul<i64x4> for i64

Source§

impl Mul<u16x8> for u16

Source§

impl Mul<u32x4> for u32

Source§

impl Mul<u64x2> for u64

Source§

impl Mul<u64x4> for u64

Source§

impl<'a> Mul<&'a Complex<f32>> for f32

Source§

impl<'a> Mul<&'a Complex<f64>> for f64

Source§

impl<'a> Mul<&'a Complex<i8>> for i8

Source§

impl<'a> Mul<&'a Complex<i16>> for i16

Source§

impl<'a> Mul<&'a Complex<i32>> for i32

Source§

impl<'a> Mul<&'a Complex<i64>> for i64

Source§

impl<'a> Mul<&'a Complex<i128>> for i128

Source§

impl<'a> Mul<&'a Complex<isize>> for isize

Source§

impl<'a> Mul<&'a Complex<u8>> for u8

Source§

impl<'a> Mul<&'a Complex<u16>> for u16

Source§

impl<'a> Mul<&'a Complex<u32>> for u32

Source§

impl<'a> Mul<&'a Complex<u64>> for u64

Source§

impl<'a> Mul<&'a Complex<u128>> for u128

Source§

impl<'a> Mul<&'a Complex<usize>> for usize

1.0.0 · Source§

impl<'a> Mul<f16> for &'a f16

1.0.0 · Source§

impl<'a> Mul<f32> for &'a f32

1.0.0 · Source§

impl<'a> Mul<f64> for &'a f64

1.0.0 · Source§

impl<'a> Mul<f128> for &'a f128

1.0.0 · Source§

impl<'a> Mul<i8> for &'a i8

1.0.0 · Source§

impl<'a> Mul<i16> for &'a i16

1.0.0 · Source§

impl<'a> Mul<i32> for &'a i32

1.0.0 · Source§

impl<'a> Mul<i64> for &'a i64

1.0.0 · Source§

impl<'a> Mul<i128> for &'a i128

1.0.0 · Source§

impl<'a> Mul<isize> for &'a isize

1.0.0 · Source§

impl<'a> Mul<u8> for &'a u8

1.0.0 · Source§

impl<'a> Mul<u16> for &'a u16

1.0.0 · Source§

impl<'a> Mul<u32> for &'a u32

1.0.0 · Source§

impl<'a> Mul<u64> for &'a u64

1.0.0 · Source§

impl<'a> Mul<u128> for &'a u128

1.0.0 · Source§

impl<'a> Mul<usize> for &'a usize

1.74.0 · Source§

impl<'a> Mul<Saturating<i8>> for &'a Saturating<i8>

1.74.0 · Source§

impl<'a> Mul<Saturating<i16>> for &'a Saturating<i16>

1.74.0 · Source§

impl<'a> Mul<Saturating<i32>> for &'a Saturating<i32>

1.74.0 · Source§

impl<'a> Mul<Saturating<i64>> for &'a Saturating<i64>

1.74.0 · Source§

impl<'a> Mul<Saturating<i128>> for &'a Saturating<i128>

1.74.0 · Source§

impl<'a> Mul<Saturating<isize>> for &'a Saturating<isize>

1.74.0 · Source§

impl<'a> Mul<Saturating<u8>> for &'a Saturating<u8>

1.74.0 · Source§

impl<'a> Mul<Saturating<u16>> for &'a Saturating<u16>

1.74.0 · Source§

impl<'a> Mul<Saturating<u32>> for &'a Saturating<u32>

1.74.0 · Source§

impl<'a> Mul<Saturating<u64>> for &'a Saturating<u64>

1.74.0 · Source§

impl<'a> Mul<Saturating<u128>> for &'a Saturating<u128>

1.74.0 · Source§

impl<'a> Mul<Saturating<usize>> for &'a Saturating<usize>

1.14.0 · Source§

impl<'a> Mul<Wrapping<i8>> for &'a Wrapping<i8>

1.14.0 · Source§

impl<'a> Mul<Wrapping<i16>> for &'a Wrapping<i16>

1.14.0 · Source§

impl<'a> Mul<Wrapping<i32>> for &'a Wrapping<i32>

1.14.0 · Source§

impl<'a> Mul<Wrapping<i64>> for &'a Wrapping<i64>

1.14.0 · Source§

impl<'a> Mul<Wrapping<i128>> for &'a Wrapping<i128>

1.14.0 · Source§

impl<'a> Mul<Wrapping<isize>> for &'a Wrapping<isize>

1.14.0 · Source§

impl<'a> Mul<Wrapping<u8>> for &'a Wrapping<u8>

1.14.0 · Source§

impl<'a> Mul<Wrapping<u16>> for &'a Wrapping<u16>

1.14.0 · Source§

impl<'a> Mul<Wrapping<u32>> for &'a Wrapping<u32>

1.14.0 · Source§

impl<'a> Mul<Wrapping<u64>> for &'a Wrapping<u64>

1.14.0 · Source§

impl<'a> Mul<Wrapping<u128>> for &'a Wrapping<u128>

1.14.0 · Source§

impl<'a> Mul<Wrapping<usize>> for &'a Wrapping<usize>

Source§

impl<'a> Mul<Complex<f32>> for &'a f32

Source§

impl<'a> Mul<Complex<f64>> for &'a f64

Source§

impl<'a> Mul<Complex<i8>> for &'a i8

Source§

impl<'a> Mul<Complex<i16>> for &'a i16

Source§

impl<'a> Mul<Complex<i32>> for &'a i32

Source§

impl<'a> Mul<Complex<i64>> for &'a i64

Source§

impl<'a> Mul<Complex<i128>> for &'a i128

Source§

impl<'a> Mul<Complex<isize>> for &'a isize

Source§

impl<'a> Mul<Complex<u8>> for &'a u8

Source§

impl<'a> Mul<Complex<u16>> for &'a u16

Source§

impl<'a> Mul<Complex<u32>> for &'a u32

Source§

impl<'a> Mul<Complex<u64>> for &'a u64

Source§

impl<'a> Mul<Complex<u128>> for &'a u128

Source§

impl<'a> Mul<Complex<usize>> for &'a usize

Source§

impl<'a, 'b> Mul<&'a Complex<f32>> for &'b f32

Source§

impl<'a, 'b> Mul<&'a Complex<f64>> for &'b f64

Source§

impl<'a, 'b> Mul<&'a Complex<i8>> for &'b i8

Source§

impl<'a, 'b> Mul<&'a Complex<i16>> for &'b i16

Source§

impl<'a, 'b> Mul<&'a Complex<i32>> for &'b i32

Source§

impl<'a, 'b> Mul<&'a Complex<i64>> for &'b i64

Source§

impl<'a, 'b> Mul<&'a Complex<i128>> for &'b i128

Source§

impl<'a, 'b> Mul<&'a Complex<isize>> for &'b isize

Source§

impl<'a, 'b> Mul<&'a Complex<u8>> for &'b u8

Source§

impl<'a, 'b> Mul<&'a Complex<u16>> for &'b u16

Source§

impl<'a, 'b> Mul<&'a Complex<u32>> for &'b u32

Source§

impl<'a, 'b> Mul<&'a Complex<u64>> for &'b u64

Source§

impl<'a, 'b> Mul<&'a Complex<u128>> for &'b u128

Source§

impl<'a, 'b> Mul<&'a Complex<usize>> for &'b usize

Source§

impl<'a, 'b, T> Mul<&'a Unit<DualQuaternion<T>>> for &'b Translation<T, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<DualQuaternion<T>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Unit<DualQuaternion<T>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Unit<DualQuaternion<T>>> for &'a DualQuaternion<T>

Source§

impl<'a, 'b, T> Mul<&'b Unit<DualQuaternion<T>>> for &'a Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Rotation<T, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Quaternion<T>>> for &'a Translation<T, 3>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Isometry<T, Unit<Complex<T>>, 2>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Rotation<T, 2>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

Source§

impl<'a, 'b, T> Mul<&'b Unit<Complex<T>>> for &'a Translation<T, 2>

Source§

impl<'a, 'b, T> Mul<&'b DualQuaternion<T>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b DualQuaternion<T>> for &'a DualQuaternion<T>

Source§

impl<'a, 'b, T> Mul<&'b Isometry<T, Unit<Quaternion<T>>, 3>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Isometry<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Isometry<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b OPoint<T, Const<2>>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b OPoint<T, Const<3>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b OPoint<T, Const<3>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Quaternion<T>> for &'a Quaternion<T>

Source§

impl<'a, 'b, T> Mul<&'b Rotation<T, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b Rotation<T, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b Translation<T, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T> Mul<&'b Translation<T, 3>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Translation<T, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T> Mul<&'b Complex<T>> for &'a Complex<T>
where T: Clone + Num,

Source§

impl<'a, 'b, T> Mul<&'b Ratio<T>> for &'a Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, 'b, T> Mul<&'a T> for &'b Complex<T>
where T: Clone + Num,

Source§

impl<'a, 'b, T> Mul<&'b T> for &'a Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, 'b, T, C> Mul<&'b Unit<Quaternion<T>>> for &'a Transform<T, C, 3>

Source§

impl<'a, 'b, T, C> Mul<&'b Unit<Complex<T>>> for &'a Transform<T, C, 2>

Source§

impl<'a, 'b, T, C> Mul<&'b Transform<T, C, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, 'b, T, C> Mul<&'b Transform<T, C, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Transform<T, C, D>

Source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Transform<T, C, D>

Source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Isometry<T, R, D>

Source§

impl<'a, 'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Similarity<T, R, D>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Transform<T, C, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Transform<T, C, D>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b Rotation<T, D>> for &'a Transform<T, C, D>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Rotation<T, D>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for &'a Translation<T, D>

Source§

impl<'a, 'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for &'a Transform<T, C, D>

Source§

impl<'a, 'b, T, CA, CB, const D: usize> Mul<&'b Transform<T, CB, D>> for &'a Transform<T, CA, D>

Source§

impl<'a, 'b, T, R1, C1, R2, C2, SA, SB> Mul<&'b Matrix<T, R2, C2, SB>> for &'a Matrix<T, R1, C1, SA>
where R1: Dim, C1: Dim, R2: Dim, C2: Dim, T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, SA: Storage<T, R1, C1>, SB: Storage<T, R2, C2>, DefaultAllocator: Allocator<R1, C2>, ShapeConstraint: AreMultipliable<R1, C1, R2, C2>,

Source§

type Output = Matrix<T, R1, C2, <DefaultAllocator as Allocator<R1, C2>>::Buffer<T>>

Source§

impl<'a, 'b, T, R1, C1, SA, const D2: usize> Mul<&'b Rotation<T, D2>> for &'a Matrix<T, R1, C1, SA>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R1: Dim, C1: Dim, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, Const<D2>>, ShapeConstraint: AreMultipliable<R1, C1, Const<D2>, Const<D2>>,

Source§

type Output = Matrix<T, R1, Const<D2>, <DefaultAllocator as Allocator<R1, Const<D2>>>::Buffer<T>>

Source§

impl<'a, 'b, T, R2, C2, SB, const D1: usize> Mul<&'b Matrix<T, R2, C2, SB>> for &'a Rotation<T, D1>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R2: Dim, C2: Dim, SB: Storage<T, R2, C2>, DefaultAllocator: Allocator<Const<D1>, C2>, ShapeConstraint: AreMultipliable<Const<D1>, Const<D1>, R2, C2>,

Source§

type Output = Matrix<T, Const<D1>, C2, <DefaultAllocator as Allocator<Const<D1>, C2>>::Buffer<T>>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Isometry<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>> for &'a Isometry<T, R, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for &'a Translation<T, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Isometry<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Similarity<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Isometry<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for &'a Translation<T, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, 'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, 'b, T, S> Mul<&'b Matrix<T, Const<2>, Const<1>, S>> for &'a Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>

Source§

impl<'a, 'b, T, S> Mul<&'b Unit<Matrix<T, Const<2>, Const<1>, S>>> for &'a Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>>

Source§

impl<'a, 'b, T, S, const D: usize> Mul<&'b Unit<Matrix<T, Const<D>, Const<1>, S>>> for &'a Rotation<T, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'a, 'b, T, SA, const D2: usize, const R1: usize, const C1: usize> Mul<&'b OPoint<T, Const<D2>>> for &'a Matrix<T, Const<R1>, Const<C1>, SA>

Source§

type Output = OPoint<T, Const<R1>>

Source§

impl<'a, 'b, T, SB> Mul<&'b Matrix<T, Const<3>, Const<1>, SB>> for &'a Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'a, 'b, T, SB> Mul<&'b Matrix<T, Const<3>, Const<1>, SB>> for &'a Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'a, 'b, T, SB> Mul<&'b Unit<Matrix<T, Const<3>, Const<1>, SB>>> for &'a Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'a, 'b, T, SB> Mul<&'b Unit<Matrix<T, Const<3>, Const<1>, SB>>> for &'a Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Isometry<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Rotation<T, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for &'a Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Isometry<T, Rotation<T, D>, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Rotation<T, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Rotation<T, D>> for &'a Translation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Scale<T, D>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, 'b, T, const D: usize> Mul<&'b Translation<T, D>> for &'a Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, T> Mul<&'a Complex<T>> for Complex<T>
where T: Clone + Num,

Source§

impl<'a, T> Mul<&'a Ratio<T>> for Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, T> Mul<&'a T> for Complex<T>
where T: Clone + Num,

Source§

impl<'a, T> Mul<&'a T> for Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a DualQuaternion<T>

Source§

impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, T> Mul<Unit<DualQuaternion<T>>> for &'a Translation<T, 3>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Rotation<T, 3>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Similarity<T, Unit<Quaternion<T>>, 3>

Source§

impl<'a, T> Mul<Unit<Quaternion<T>>> for &'a Translation<T, 3>

Source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Isometry<T, Unit<Complex<T>>, 2>

Source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Rotation<T, 2>

Source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Similarity<T, Unit<Complex<T>>, 2>

Source§

impl<'a, T> Mul<Unit<Complex<T>>> for &'a Translation<T, 2>

Source§

impl<'a, T> Mul<DualQuaternion<T>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<DualQuaternion<T>> for &'a DualQuaternion<T>

Source§

impl<'a, T> Mul<Isometry<T, Unit<Quaternion<T>>, 3>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<Isometry<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Isometry<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<OPoint<T, Const<2>>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<OPoint<T, Const<3>>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<OPoint<T, Const<3>>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Quaternion<T>> for &'a Quaternion<T>

Source§

impl<'a, T> Mul<Rotation<T, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<Rotation<T, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Similarity<T, Unit<Complex<T>>, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<Translation<T, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, T> Mul<Translation<T, 3>> for &'a Unit<DualQuaternion<T>>

Source§

impl<'a, T> Mul<Translation<T, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T> Mul<Complex<T>> for &'a Complex<T>
where T: Clone + Num,

Source§

impl<'a, T> Mul<Ratio<T>> for &'a Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, T> Mul<T> for &'a DualQuaternion<T>

Source§

impl<'a, T> Mul<T> for &'a Quaternion<T>

Source§

impl<'a, T> Mul<T> for &'a Complex<T>
where T: Clone + Num,

Source§

impl<'a, T> Mul<T> for &'a Ratio<T>
where T: Clone + Integer,

Source§

impl<'a, T, C> Mul<Unit<Quaternion<T>>> for &'a Transform<T, C, 3>

Source§

impl<'a, T, C> Mul<Unit<Complex<T>>> for &'a Transform<T, C, 2>

Source§

impl<'a, T, C> Mul<Transform<T, C, 2>> for &'a Unit<Complex<T>>

Source§

impl<'a, T, C> Mul<Transform<T, C, 3>> for &'a Unit<Quaternion<T>>

Source§

impl<'a, T, C, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Transform<T, C, D>

Source§

impl<'a, T, C, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Transform<T, C, D>

Source§

impl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Isometry<T, R, D>

Source§

impl<'a, T, C, R, const D: usize> Mul<Transform<T, C, D>> for &'a Similarity<T, R, D>

Source§

impl<'a, T, C, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Transform<T, C, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, T, C, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Transform<T, C, D>

Source§

impl<'a, T, C, const D: usize> Mul<Rotation<T, D>> for &'a Transform<T, C, D>

Source§

impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Rotation<T, D>

Source§

impl<'a, T, C, const D: usize> Mul<Transform<T, C, D>> for &'a Translation<T, D>

Source§

impl<'a, T, C, const D: usize> Mul<Translation<T, D>> for &'a Transform<T, C, D>

Source§

impl<'a, T, CA, CB, const D: usize> Mul<Transform<T, CB, D>> for &'a Transform<T, CA, D>

Source§

impl<'a, T, D> Mul<T> for &'a OPoint<T, D>

Source§

type Output = OPoint<T, D>

Source§

impl<'a, T, R1, C1, R2, C2, SA, SB> Mul<Matrix<T, R2, C2, SB>> for &'a Matrix<T, R1, C1, SA>
where R1: Dim, C1: Dim, R2: Dim, C2: Dim, T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, SB: Storage<T, R2, C2>, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, C2>, ShapeConstraint: AreMultipliable<R1, C1, R2, C2>,

Source§

type Output = Matrix<T, R1, C2, <DefaultAllocator as Allocator<R1, C2>>::Buffer<T>>

Source§

impl<'a, T, R1, C1, SA, const D2: usize> Mul<Rotation<T, D2>> for &'a Matrix<T, R1, C1, SA>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R1: Dim, C1: Dim, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, Const<D2>>, ShapeConstraint: AreMultipliable<R1, C1, Const<D2>, Const<D2>>,

Source§

type Output = Matrix<T, R1, Const<D2>, <DefaultAllocator as Allocator<R1, Const<D2>>>::Buffer<T>>

Source§

impl<'a, T, R2, C2, SB, const D1: usize> Mul<Matrix<T, R2, C2, SB>> for &'a Rotation<T, D1>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R2: Dim, C2: Dim, SB: Storage<T, R2, C2>, DefaultAllocator: Allocator<Const<D1>, C2>, ShapeConstraint: AreMultipliable<Const<D1>, Const<D1>, R2, C2>,

Source§

type Output = Matrix<T, Const<D1>, C2, <DefaultAllocator as Allocator<Const<D1>, C2>>::Buffer<T>>

Source§

impl<'a, T, R, C, S> Mul<T> for &'a Matrix<T, R, C, S>
where R: Dim, C: Dim, T: Scalar + ClosedMulAssign, S: Storage<T, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

type Output = Matrix<T, R, C, <DefaultAllocator as Allocator<R, C>>::Buffer<T>>

Source§

impl<'a, T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Isometry<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Similarity<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, T, R, const D: usize> Mul<Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>> for &'a Isometry<T, R, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Isometry<T, R, D>> for &'a Translation<T, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Isometry<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Similarity<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Isometry<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Similarity<T, R, D>> for &'a Translation<T, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'a, T, R, const D: usize> Mul<Translation<T, D>> for &'a Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'a, T, S> Mul<Matrix<T, Const<2>, Const<1>, S>> for &'a Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>

Source§

impl<'a, T, S> Mul<Unit<Matrix<T, Const<2>, Const<1>, S>>> for &'a Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>>

Source§

impl<'a, T, S, const D: usize> Mul<Unit<Matrix<T, Const<D>, Const<1>, S>>> for &'a Rotation<T, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'a, T, SA, const D2: usize, const R1: usize, const C1: usize> Mul<OPoint<T, Const<D2>>> for &'a Matrix<T, Const<R1>, Const<C1>, SA>

Source§

type Output = OPoint<T, Const<R1>>

Source§

impl<'a, T, SB> Mul<Matrix<T, Const<3>, Const<1>, SB>> for &'a Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'a, T, SB> Mul<Matrix<T, Const<3>, Const<1>, SB>> for &'a Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'a, T, SB> Mul<Unit<Matrix<T, Const<3>, Const<1>, SB>>> for &'a Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'a, T, SB> Mul<Unit<Matrix<T, Const<3>, Const<1>, SB>>> for &'a Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'a, T, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'a, T, const D: usize> Mul<Isometry<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Rotation<T, D>

Source§

impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, T, const D: usize> Mul<OPoint<T, Const<D>>> for &'a Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Isometry<T, Rotation<T, D>, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Rotation<T, D>

Source§

impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Similarity<T, Rotation<T, D>, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<Rotation<T, D>> for &'a Translation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<Scale<T, D>> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<'a, T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for &'a Rotation<T, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'a, T, const D: usize> Mul<Translation<T, D>> for &'a Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'a, T, const D: usize> Mul<T> for &'a Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<'b> Mul<&'b DualQuaternion<f32>> for f32

Source§

impl<'b> Mul<&'b DualQuaternion<f64>> for f64

Source§

impl<'b> Mul<&'b Quaternion<f32>> for f32

Source§

impl<'b> Mul<&'b Quaternion<f64>> for f64

Source§

impl<'b, D> Mul<&'b OPoint<f32, D>> for f32

Source§

impl<'b, D> Mul<&'b OPoint<f64, D>> for f64

Source§

impl<'b, D> Mul<&'b OPoint<i8, D>> for i8

Source§

impl<'b, D> Mul<&'b OPoint<i16, D>> for i16

Source§

impl<'b, D> Mul<&'b OPoint<i32, D>> for i32

Source§

impl<'b, D> Mul<&'b OPoint<i64, D>> for i64

Source§

impl<'b, D> Mul<&'b OPoint<isize, D>> for isize

Source§

impl<'b, D> Mul<&'b OPoint<u8, D>> for u8

Source§

impl<'b, D> Mul<&'b OPoint<u16, D>> for u16

Source§

impl<'b, D> Mul<&'b OPoint<u32, D>> for u32

Source§

impl<'b, D> Mul<&'b OPoint<u64, D>> for u64

Source§

impl<'b, D> Mul<&'b OPoint<usize, D>> for usize

Source§

impl<'b, R, C, S> Mul<&'b Matrix<f32, R, C, S>> for f32
where R: Dim, C: Dim, S: Storage<f32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<f64, R, C, S>> for f64
where R: Dim, C: Dim, S: Storage<f64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<i8, R, C, S>> for i8
where R: Dim, C: Dim, S: Storage<i8, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<i16, R, C, S>> for i16
where R: Dim, C: Dim, S: Storage<i16, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<i32, R, C, S>> for i32
where R: Dim, C: Dim, S: Storage<i32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<i64, R, C, S>> for i64
where R: Dim, C: Dim, S: Storage<i64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<isize, R, C, S>> for isize
where R: Dim, C: Dim, S: Storage<isize, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<u8, R, C, S>> for u8
where R: Dim, C: Dim, S: Storage<u8, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<u16, R, C, S>> for u16
where R: Dim, C: Dim, S: Storage<u16, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<u32, R, C, S>> for u32
where R: Dim, C: Dim, S: Storage<u32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<u64, R, C, S>> for u64
where R: Dim, C: Dim, S: Storage<u64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, R, C, S> Mul<&'b Matrix<usize, R, C, S>> for usize
where R: Dim, C: Dim, S: Storage<usize, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for DualQuaternion<T>

Source§

impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'b, T> Mul<&'b Unit<DualQuaternion<T>>> for Translation<T, 3>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Rotation<T, 3>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

Source§

impl<'b, T> Mul<&'b Unit<Quaternion<T>>> for Translation<T, 3>

Source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Isometry<T, Unit<Complex<T>>, 2>

Source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Rotation<T, 2>

Source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

Source§

impl<'b, T> Mul<&'b Unit<Complex<T>>> for Translation<T, 2>

Source§

impl<'b, T> Mul<&'b DualQuaternion<T>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b DualQuaternion<T>> for DualQuaternion<T>

Source§

impl<'b, T> Mul<&'b Isometry<T, Unit<Quaternion<T>>, 3>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b Isometry<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Isometry<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b OPoint<T, Const<2>>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b OPoint<T, Const<3>>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b OPoint<T, Const<3>>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Quaternion<T>> for Quaternion<T>

Source§

impl<'b, T> Mul<&'b Rotation<T, 2>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b Rotation<T, 3>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

Source§

impl<'b, T> Mul<&'b Similarity<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b Translation<T, 2>> for Unit<Complex<T>>

Source§

impl<'b, T> Mul<&'b Translation<T, 3>> for Unit<DualQuaternion<T>>

Source§

impl<'b, T> Mul<&'b Translation<T, 3>> for Unit<Quaternion<T>>

Source§

impl<'b, T, C> Mul<&'b Unit<Quaternion<T>>> for Transform<T, C, 3>

Source§

impl<'b, T, C> Mul<&'b Unit<Complex<T>>> for Transform<T, C, 2>

Source§

impl<'b, T, C> Mul<&'b Transform<T, C, 2>> for Unit<Complex<T>>

Source§

impl<'b, T, C> Mul<&'b Transform<T, C, 3>> for Unit<Quaternion<T>>

Source§

impl<'b, T, C, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Transform<T, C, D>

Source§

impl<'b, T, C, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Transform<T, C, D>

Source§

impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Isometry<T, R, D>

Source§

impl<'b, T, C, R, const D: usize> Mul<&'b Transform<T, C, D>> for Similarity<T, R, D>

Source§

impl<'b, T, C, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Transform<T, C, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'b, T, C, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Transform<T, C, D>

Source§

impl<'b, T, C, const D: usize> Mul<&'b Rotation<T, D>> for Transform<T, C, D>

Source§

impl<'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for Rotation<T, D>

Source§

impl<'b, T, C, const D: usize> Mul<&'b Transform<T, C, D>> for Translation<T, D>

Source§

impl<'b, T, C, const D: usize> Mul<&'b Translation<T, D>> for Transform<T, C, D>

Source§

impl<'b, T, CA, CB, const D: usize> Mul<&'b Transform<T, CB, D>> for Transform<T, CA, D>

Source§

impl<'b, T, R1, C1, R2, C2, SA, SB> Mul<&'b Matrix<T, R2, C2, SB>> for Matrix<T, R1, C1, SA>
where R1: Dim, C1: Dim, R2: Dim, C2: Dim, T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, SB: Storage<T, R2, C2>, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, C2>, ShapeConstraint: AreMultipliable<R1, C1, R2, C2>,

Source§

type Output = Matrix<T, R1, C2, <DefaultAllocator as Allocator<R1, C2>>::Buffer<T>>

Source§

impl<'b, T, R1, C1, SA, const D2: usize> Mul<&'b Rotation<T, D2>> for Matrix<T, R1, C1, SA>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R1: Dim, C1: Dim, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, Const<D2>>, ShapeConstraint: AreMultipliable<R1, C1, Const<D2>, Const<D2>>,

Source§

type Output = Matrix<T, R1, Const<D2>, <DefaultAllocator as Allocator<R1, Const<D2>>>::Buffer<T>>

Source§

impl<'b, T, R2, C2, SB, const D1: usize> Mul<&'b Matrix<T, R2, C2, SB>> for Rotation<T, D1>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R2: Dim, C2: Dim, SB: Storage<T, R2, C2>, DefaultAllocator: Allocator<Const<D1>, C2>, ShapeConstraint: AreMultipliable<Const<D1>, Const<D1>, R2, C2>,

Source§

type Output = Matrix<T, Const<D1>, C2, <DefaultAllocator as Allocator<Const<D1>, C2>>::Buffer<T>>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Isometry<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>> for Isometry<T, R, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Isometry<T, R, D>> for Translation<T, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Isometry<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Similarity<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Isometry<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Similarity<T, R, D>> for Translation<T, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<'b, T, R, const D: usize> Mul<&'b Translation<T, D>> for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<'b, T, S> Mul<&'b Matrix<T, Const<2>, Const<1>, S>> for Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>

Source§

impl<'b, T, S> Mul<&'b Unit<Matrix<T, Const<2>, Const<1>, S>>> for Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>>

Source§

impl<'b, T, S, const D: usize> Mul<&'b Unit<Matrix<T, Const<D>, Const<1>, S>>> for Rotation<T, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<'b, T, SA, const D2: usize, const R1: usize, const C1: usize> Mul<&'b OPoint<T, Const<D2>>> for Matrix<T, Const<R1>, Const<C1>, SA>

Source§

type Output = OPoint<T, Const<R1>>

Source§

impl<'b, T, SB> Mul<&'b Matrix<T, Const<3>, Const<1>, SB>> for Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'b, T, SB> Mul<&'b Matrix<T, Const<3>, Const<1>, SB>> for Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<'b, T, SB> Mul<&'b Unit<Matrix<T, Const<3>, Const<1>, SB>>> for Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'b, T, SB> Mul<&'b Unit<Matrix<T, Const<3>, Const<1>, SB>>> for Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<'b, T, const D: usize> Mul<&'b Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<'b, T, const D: usize> Mul<&'b Isometry<T, Rotation<T, D>, D>> for Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Rotation<T, D>

Source§

impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'b, T, const D: usize> Mul<&'b OPoint<T, Const<D>>> for Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Isometry<T, Rotation<T, D>, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Rotation<T, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Rotation<T, D>> for Translation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Scale<T, D>> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<'b, T, const D: usize> Mul<&'b Translation<T, D>> for Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<'lhs, 'rhs, T, const N: usize> Mul<&'rhs Simd<T, N>> for &'lhs Simd<T, N>
where T: SimdElement, Simd<T, N>: Mul<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

impl<D> Mul<OPoint<f32, D>> for f32

Source§

impl<D> Mul<OPoint<f64, D>> for f64

Source§

impl<D> Mul<OPoint<i8, D>> for i8

Source§

impl<D> Mul<OPoint<i16, D>> for i16

Source§

impl<D> Mul<OPoint<i32, D>> for i32

Source§

impl<D> Mul<OPoint<i64, D>> for i64

Source§

impl<D> Mul<OPoint<isize, D>> for isize

Source§

impl<D> Mul<OPoint<u8, D>> for u8

Source§

impl<D> Mul<OPoint<u16, D>> for u16

Source§

impl<D> Mul<OPoint<u32, D>> for u32

Source§

impl<D> Mul<OPoint<u64, D>> for u64

Source§

impl<D> Mul<OPoint<usize, D>> for usize

Source§

impl<I> Mul<I> for Z0
where I: Integer,

Z0 * I = Z0

Source§

impl<R, C, S> Mul<Matrix<f32, R, C, S>> for f32
where R: Dim, C: Dim, S: Storage<f32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<f64, R, C, S>> for f64
where R: Dim, C: Dim, S: Storage<f64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<i8, R, C, S>> for i8
where R: Dim, C: Dim, S: Storage<i8, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<i16, R, C, S>> for i16
where R: Dim, C: Dim, S: Storage<i16, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<i32, R, C, S>> for i32
where R: Dim, C: Dim, S: Storage<i32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<i64, R, C, S>> for i64
where R: Dim, C: Dim, S: Storage<i64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<isize, R, C, S>> for isize
where R: Dim, C: Dim, S: Storage<isize, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<u8, R, C, S>> for u8
where R: Dim, C: Dim, S: Storage<u8, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<u16, R, C, S>> for u16
where R: Dim, C: Dim, S: Storage<u16, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<u32, R, C, S>> for u32
where R: Dim, C: Dim, S: Storage<u32, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<u64, R, C, S>> for u64
where R: Dim, C: Dim, S: Storage<u64, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<R, C, S> Mul<Matrix<usize, R, C, S>> for usize
where R: Dim, C: Dim, S: Storage<usize, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

impl<Rhs> Mul<Rhs> for ATerm

Source§

impl<T> Mul for Unit<DualQuaternion<T>>

Source§

impl<T> Mul for Unit<Quaternion<T>>

Source§

impl<T> Mul for Unit<Complex<T>>
where T: SimdRealField,

Source§

impl<T> Mul for DualQuaternion<T>

Source§

impl<T> Mul for Quaternion<T>

Source§

impl<T> Mul for Complex<T>
where T: Clone + Num,

Source§

impl<T> Mul for Ratio<T>
where T: Clone + Integer,

Source§

impl<T> Mul<Unit<DualQuaternion<T>>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<Unit<DualQuaternion<T>>> for DualQuaternion<T>

Source§

impl<T> Mul<Unit<DualQuaternion<T>>> for Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<T> Mul<Unit<DualQuaternion<T>>> for Translation<T, 3>

Source§

impl<T> Mul<Unit<Quaternion<T>>> for Unit<DualQuaternion<T>>

Source§

impl<T> Mul<Unit<Quaternion<T>>> for Isometry<T, Unit<Quaternion<T>>, 3>

Source§

impl<T> Mul<Unit<Quaternion<T>>> for Rotation<T, 3>

Source§

impl<T> Mul<Unit<Quaternion<T>>> for Similarity<T, Unit<Quaternion<T>>, 3>

Source§

impl<T> Mul<Unit<Quaternion<T>>> for Translation<T, 3>

Source§

impl<T> Mul<Unit<Complex<T>>> for Isometry<T, Unit<Complex<T>>, 2>

Source§

impl<T> Mul<Unit<Complex<T>>> for Rotation<T, 2>

Source§

impl<T> Mul<Unit<Complex<T>>> for Similarity<T, Unit<Complex<T>>, 2>

Source§

impl<T> Mul<Unit<Complex<T>>> for Translation<T, 2>

Source§

impl<T> Mul<DualQuaternion<T>> for Unit<DualQuaternion<T>>

Source§

impl<T> Mul<Isometry<T, Unit<Quaternion<T>>, 3>> for Unit<DualQuaternion<T>>

Source§

impl<T> Mul<Isometry<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<Isometry<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

Source§

impl<T> Mul<OPoint<T, Const<2>>> for Unit<Complex<T>>

Source§

impl<T> Mul<OPoint<T, Const<3>>> for Unit<DualQuaternion<T>>

Source§

impl<T> Mul<OPoint<T, Const<3>>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<Rotation<T, 2>> for Unit<Complex<T>>

Source§

impl<T> Mul<Rotation<T, 3>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<Similarity<T, Unit<Quaternion<T>>, 3>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<Similarity<T, Unit<Complex<T>>, 2>> for Unit<Complex<T>>

Source§

impl<T> Mul<Translation<T, 2>> for Unit<Complex<T>>

Source§

impl<T> Mul<Translation<T, 3>> for Unit<DualQuaternion<T>>

Source§

impl<T> Mul<Translation<T, 3>> for Unit<Quaternion<T>>

Source§

impl<T> Mul<T> for DualQuaternion<T>

Source§

impl<T> Mul<T> for Quaternion<T>

Source§

impl<T> Mul<T> for Complex<T>
where T: Clone + Num,

Source§

impl<T> Mul<T> for Ratio<T>
where T: Clone + Integer,

Source§

impl<T, C> Mul<Unit<Quaternion<T>>> for Transform<T, C, 3>

Source§

impl<T, C> Mul<Unit<Complex<T>>> for Transform<T, C, 2>

Source§

impl<T, C> Mul<Transform<T, C, 2>> for Unit<Complex<T>>

Source§

impl<T, C> Mul<Transform<T, C, 3>> for Unit<Quaternion<T>>

Source§

impl<T, C, R, const D: usize> Mul<Isometry<T, R, D>> for Transform<T, C, D>

Source§

impl<T, C, R, const D: usize> Mul<Similarity<T, R, D>> for Transform<T, C, D>

Source§

impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Isometry<T, R, D>

Source§

impl<T, C, R, const D: usize> Mul<Transform<T, C, D>> for Similarity<T, R, D>

Source§

impl<T, C, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Transform<T, C, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<T, C, const D: usize> Mul<OPoint<T, Const<D>>> for Transform<T, C, D>

Source§

impl<T, C, const D: usize> Mul<Rotation<T, D>> for Transform<T, C, D>

Source§

impl<T, C, const D: usize> Mul<Transform<T, C, D>> for Rotation<T, D>

Source§

impl<T, C, const D: usize> Mul<Transform<T, C, D>> for Translation<T, D>

Source§

impl<T, C, const D: usize> Mul<Translation<T, D>> for Transform<T, C, D>

Source§

impl<T, CA, CB, const D: usize> Mul<Transform<T, CB, D>> for Transform<T, CA, D>

Source§

impl<T, D> Mul<T> for OPoint<T, D>

Source§

type Output = OPoint<T, D>

Source§

impl<T, R1, C1, R2, C2, SA, SB> Mul<Matrix<T, R2, C2, SB>> for Matrix<T, R1, C1, SA>
where R1: Dim, C1: Dim, R2: Dim, C2: Dim, T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, SB: Storage<T, R2, C2>, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, C2>, ShapeConstraint: AreMultipliable<R1, C1, R2, C2>,

Source§

type Output = Matrix<T, R1, C2, <DefaultAllocator as Allocator<R1, C2>>::Buffer<T>>

Source§

impl<T, R1, C1, SA, const D2: usize> Mul<Rotation<T, D2>> for Matrix<T, R1, C1, SA>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R1: Dim, C1: Dim, SA: Storage<T, R1, C1>, DefaultAllocator: Allocator<R1, Const<D2>>, ShapeConstraint: AreMultipliable<R1, C1, Const<D2>, Const<D2>>,

Source§

type Output = Matrix<T, R1, Const<D2>, <DefaultAllocator as Allocator<R1, Const<D2>>>::Buffer<T>>

Source§

impl<T, R2, C2, SB, const D1: usize> Mul<Matrix<T, R2, C2, SB>> for Rotation<T, D1>
where T: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, R2: Dim, C2: Dim, SB: Storage<T, R2, C2>, DefaultAllocator: Allocator<Const<D1>, C2>, ShapeConstraint: AreMultipliable<Const<D1>, Const<D1>, R2, C2>,

Source§

type Output = Matrix<T, Const<D1>, C2, <DefaultAllocator as Allocator<Const<D1>, C2>>::Buffer<T>>

Source§

impl<T, R, C, S> Mul<T> for Matrix<T, R, C, S>
where R: Dim, C: Dim, T: Scalar + ClosedMulAssign, S: Storage<T, R, C>, DefaultAllocator: Allocator<R, C>,

Source§

type Output = Matrix<T, R, C, <DefaultAllocator as Allocator<R, C>>::Buffer<T>>

Source§

impl<T, R, const D: usize> Mul for Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<T, R, const D: usize> Mul for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Isometry<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<T, R, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Similarity<T, R, D>

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<T, R, const D: usize> Mul<Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>> for Isometry<T, R, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Isometry<T, R, D>> for Translation<T, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<T, R, const D: usize> Mul<OPoint<T, Const<D>>> for Isometry<T, R, D>

Source§

impl<T, R, const D: usize> Mul<OPoint<T, Const<D>>> for Similarity<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Isometry<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Similarity<T, R, D>> for Translation<T, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Translation<T, D>> for Isometry<T, R, D>

Source§

type Output = Isometry<T, R, D>

Source§

impl<T, R, const D: usize> Mul<Translation<T, D>> for Similarity<T, R, D>

Source§

type Output = Similarity<T, R, D>

Source§

impl<T, S> Mul<Matrix<T, Const<2>, Const<1>, S>> for Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>

Source§

impl<T, S> Mul<Unit<Matrix<T, Const<2>, Const<1>, S>>> for Unit<Complex<T>>
where T: SimdRealField, S: Storage<T, Const<2>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<2>, Const<1>, ArrayStorage<T, 2, 1>>>

Source§

impl<T, S, const D: usize> Mul<Unit<Matrix<T, Const<D>, Const<1>, S>>> for Rotation<T, D>

Source§

type Output = Unit<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>>

Source§

impl<T, SA, const D2: usize, const R1: usize, const C1: usize> Mul<OPoint<T, Const<D2>>> for Matrix<T, Const<R1>, Const<C1>, SA>

Source§

type Output = OPoint<T, Const<R1>>

Source§

impl<T, SB> Mul<Matrix<T, Const<3>, Const<1>, SB>> for Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<T, SB> Mul<Matrix<T, Const<3>, Const<1>, SB>> for Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>

Source§

impl<T, SB> Mul<Unit<Matrix<T, Const<3>, Const<1>, SB>>> for Unit<DualQuaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<T, SB> Mul<Unit<Matrix<T, Const<3>, Const<1>, SB>>> for Unit<Quaternion<T>>
where T: SimdRealField, SB: Storage<T, Const<3>>, <T as SimdValue>::Element: SimdRealField,

Source§

type Output = Unit<Matrix<T, Const<3>, Const<1>, ArrayStorage<T, 3, 1>>>

Source§

impl<T, const D: usize> Mul for Rotation<T, D>

Source§

impl<T, const D: usize> Mul for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<T, const D: usize> Mul for Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<T, const D: usize> Mul<Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Matrix<T, Const<D>, Const<1>, ArrayStorage<T, D, 1>>

Source§

impl<T, const D: usize> Mul<Isometry<T, Rotation<T, D>, D>> for Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Rotation<T, D>

Source§

impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<T, const D: usize> Mul<OPoint<T, Const<D>>> for Translation<T, D>
where T: Scalar + ClosedAddAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

impl<T, const D: usize> Mul<Rotation<T, D>> for Isometry<T, Rotation<T, D>, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<Rotation<T, D>> for Similarity<T, Rotation<T, D>, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<Rotation<T, D>> for Translation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<Similarity<T, Rotation<T, D>, D>> for Rotation<T, D>

Source§

type Output = Similarity<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<Translation<T, D>> for Rotation<T, D>

Source§

type Output = Isometry<T, Rotation<T, D>, D>

Source§

impl<T, const D: usize> Mul<T> for Scale<T, D>
where T: Scalar + ClosedMulAssign, ShapeConstraint: SameNumberOfRows<Const<D>, Const<D>, Representative = Const<D>> + SameNumberOfColumns<Const<1>, Const<1>, Representative = Const<1>>,

Source§

type Output = Scale<T, D>

Source§

impl<T, const N: usize> Mul<&Simd<T, N>> for Simd<T, N>
where T: SimdElement, Simd<T, N>: Mul<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

impl<T, const N: usize> Mul<Simd<T, N>> for &Simd<T, N>
where T: SimdElement, Simd<T, N>: Mul<Output = Simd<T, N>>, LaneCount<N>: SupportedLaneCount,

Source§

type Output = Simd<T, N>

Source§

impl<U> Mul<ATerm> for NInt<U>
where U: Unsigned + NonZero,

Source§

impl<U> Mul<ATerm> for PInt<U>
where U: Unsigned + NonZero,

Source§

impl<U> Mul<Z0> for NInt<U>
where U: Unsigned + NonZero,

N * Z0 = Z0

Source§

impl<U> Mul<Z0> for PInt<U>
where U: Unsigned + NonZero,

P * Z0 = Z0

Source§

impl<U> Mul<U> for UTerm
where U: Unsigned,

UTerm * U = UTerm

Source§

impl<U, B> Mul<B0> for UInt<U, B>
where U: Unsigned, B: Bit,

UInt * B0 = UTerm

Source§

impl<U, B> Mul<B1> for UInt<U, B>
where U: Unsigned, B: Bit,

UInt * B1 = UInt

Source§

type Output = UInt<U, B>

Source§

impl<U, B> Mul<UTerm> for UInt<U, B>
where U: Unsigned, B: Bit,

UInt<U, B> * UTerm = UTerm

Source§

impl<Ul, B, Ur> Mul<UInt<Ur, B>> for UInt<Ul, B0>
where Ul: Unsigned + Mul<UInt<Ur, B>>, B: Bit, Ur: Unsigned,

UInt<Ul, B0> * UInt<Ur, B> = UInt<(Ul * UInt<Ur, B>), B0>

Source§

type Output = UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0>

Source§

impl<Ul, B, Ur> Mul<UInt<Ur, B>> for UInt<Ul, B1>
where Ul: Unsigned + Mul<UInt<Ur, B>>, B: Bit, Ur: Unsigned, UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0>: Add<UInt<Ur, B>>,

UInt<Ul, B1> * UInt<Ur, B> = UInt<(Ul * UInt<Ur, B>), B0> + UInt<Ur, B>

Source§

type Output = <UInt<<Ul as Mul<UInt<Ur, B>>>::Output, B0> as Add<UInt<Ur, B>>>::Output

Source§

impl<Ul, Ur> Mul<NInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

N(Ul) * N(Ur) = P(Ul * Ur)

Source§

type Output = PInt<<Ul as Mul<Ur>>::Output>

Source§

impl<Ul, Ur> Mul<NInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

P(Ul) * N(Ur) = N(Ul * Ur)

Source§

type Output = NInt<<Ul as Mul<Ur>>::Output>

Source§

impl<Ul, Ur> Mul<PInt<Ur>> for NInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

N(Ul) * P(Ur) = N(Ul * Ur)

Source§

type Output = NInt<<Ul as Mul<Ur>>::Output>

Source§

impl<Ul, Ur> Mul<PInt<Ur>> for PInt<Ul>
where Ul: Unsigned + NonZero + Mul<Ur>, Ur: Unsigned + NonZero, <Ul as Mul<Ur>>::Output: Unsigned + NonZero,

P(Ul) * P(Ur) = P(Ul * Ur)

Source§

type Output = PInt<<Ul as Mul<Ur>>::Output>

Source§

impl<V, A> Mul<TArr<V, A>> for Z0
where Z0: Mul<A>,

Source§

type Output = TArr<Z0, <Z0 as Mul<A>>::Output>

Source§

impl<V, A, Rhs> Mul<Rhs> for TArr<V, A>
where V: Mul<Rhs>, A: Mul<Rhs>, Rhs: Copy,

Source§

type Output = TArr<<V as Mul<Rhs>>::Output, <A as Mul<Rhs>>::Output>

Source§

impl<V, A, U> Mul<TArr<V, A>> for NInt<U>
where U: Unsigned + NonZero, NInt<U>: Mul<A> + Mul<V>,

Source§

type Output = TArr<<NInt<U> as Mul<V>>::Output, <NInt<U> as Mul<A>>::Output>

Source§

impl<V, A, U> Mul<TArr<V, A>> for PInt<U>
where U: Unsigned + NonZero, PInt<U>: Mul<A> + Mul<V>,

Source§

type Output = TArr<<PInt<U> as Mul<V>>::Output, <PInt<U> as Mul<A>>::Output>

Source§

impl<const N: usize> Mul for Simd<f32, N>

Source§

impl<const N: usize> Mul for Simd<f64, N>

Source§

impl<const N: usize> Mul for Simd<i8, N>

Source§

impl<const N: usize> Mul for Simd<i16, N>

Source§

impl<const N: usize> Mul for Simd<i32, N>

Source§

impl<const N: usize> Mul for Simd<i64, N>

Source§

impl<const N: usize> Mul for Simd<isize, N>

Source§

impl<const N: usize> Mul for Simd<u8, N>

Source§

impl<const N: usize> Mul for Simd<u16, N>

Source§

impl<const N: usize> Mul for Simd<u32, N>

Source§

impl<const N: usize> Mul for Simd<u64, N>

Source§

impl<const N: usize> Mul for Simd<usize, N>