Trait Mul
pub trait Mul<Rhs = Self>
The multiplication operator *.
Note that Rhs is Self by default, but this is not mandatory.
Examples
Multipliable rational numbers
use 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`.
// Euclid's two-thousand-year-old algorithm for finding the greatest common
// divisor.
assert_eq!;
assert_eq!;
Multiplying vectors by scalars as in linear algebra
use Mul;
let vector = Vector ;
let scalar = Scalar ;
assert_eq!;
Associated Types
type Output;The resulting type after applying the
*operator.
Required Methods
fn mul(self, rhs: Rhs) -> Self::OutputPerforms the
*operation.Example
assert_eq!;
Implementors
impl Mul for Complex<f128>impl Mul for Complex<f16>impl Mul for Complex<f32>impl Mul for Complex<f64>impl Mul for Saturating<i128>impl Mul for Saturating<i16>impl Mul for Saturating<i32>impl Mul for Saturating<i64>impl Mul for Saturating<i8>impl Mul for Saturating<isize>impl Mul for Saturating<u128>impl Mul for Saturating<u16>impl Mul for Saturating<u32>impl Mul for Saturating<u64>impl Mul for Saturating<u8>impl Mul for Saturating<usize>impl Mul for Wrapping<i128>impl Mul for Wrapping<i16>impl Mul for Wrapping<i32>impl Mul for Wrapping<i64>impl Mul for Wrapping<i8>impl Mul for Wrapping<isize>impl Mul for Wrapping<u128>impl Mul for Wrapping<u16>impl Mul for Wrapping<u32>impl Mul for Wrapping<u64>impl Mul for Wrapping<u8>impl Mul for Wrapping<usize>impl Mul for f128impl Mul for f16impl Mul for f32impl Mul for f64impl Mul for i128impl Mul for i16impl Mul for i32impl Mul for i64impl Mul for i8impl Mul for isizeimpl Mul for u128impl Mul for u16impl Mul for u32impl Mul for u64impl Mul for u8impl Mul for usizeimpl Mul<&Saturating<i128>> for &Saturating<i128>impl Mul<&Saturating<i128>> for Saturating<i128>impl Mul<&Saturating<i16>> for &Saturating<i16>impl Mul<&Saturating<i16>> for Saturating<i16>impl Mul<&Saturating<i32>> for &Saturating<i32>impl Mul<&Saturating<i32>> for Saturating<i32>impl Mul<&Saturating<i64>> for &Saturating<i64>impl Mul<&Saturating<i64>> for Saturating<i64>impl Mul<&Saturating<i8>> for &Saturating<i8>impl Mul<&Saturating<i8>> for Saturating<i8>impl Mul<&Saturating<isize>> for &Saturating<isize>impl Mul<&Saturating<isize>> for Saturating<isize>impl Mul<&Saturating<u128>> for &Saturating<u128>impl Mul<&Saturating<u128>> for Saturating<u128>impl Mul<&Saturating<u16>> for &Saturating<u16>impl Mul<&Saturating<u16>> for Saturating<u16>impl Mul<&Saturating<u32>> for &Saturating<u32>impl Mul<&Saturating<u32>> for Saturating<u32>impl Mul<&Saturating<u64>> for &Saturating<u64>impl Mul<&Saturating<u64>> for Saturating<u64>impl Mul<&Saturating<u8>> for &Saturating<u8>impl Mul<&Saturating<u8>> for Saturating<u8>impl Mul<&Saturating<usize>> for &Saturating<usize>impl Mul<&Saturating<usize>> for Saturating<usize>impl Mul<&Wrapping<i128>> for &Wrapping<i128>impl Mul<&Wrapping<i128>> for Wrapping<i128>impl Mul<&Wrapping<i16>> for &Wrapping<i16>impl Mul<&Wrapping<i16>> for Wrapping<i16>impl Mul<&Wrapping<i32>> for &Wrapping<i32>impl Mul<&Wrapping<i32>> for Wrapping<i32>impl Mul<&Wrapping<i64>> for &Wrapping<i64>impl Mul<&Wrapping<i64>> for Wrapping<i64>impl Mul<&Wrapping<i8>> for &Wrapping<i8>impl Mul<&Wrapping<i8>> for Wrapping<i8>impl Mul<&Wrapping<isize>> for &Wrapping<isize>impl Mul<&Wrapping<isize>> for Wrapping<isize>impl Mul<&Wrapping<u128>> for &Wrapping<u128>impl Mul<&Wrapping<u128>> for Wrapping<u128>impl Mul<&Wrapping<u16>> for &Wrapping<u16>impl Mul<&Wrapping<u16>> for Wrapping<u16>impl Mul<&Wrapping<u32>> for &Wrapping<u32>impl Mul<&Wrapping<u32>> for Wrapping<u32>impl Mul<&Wrapping<u64>> for &Wrapping<u64>impl Mul<&Wrapping<u64>> for Wrapping<u64>impl Mul<&Wrapping<u8>> for &Wrapping<u8>impl Mul<&Wrapping<u8>> for Wrapping<u8>impl Mul<&Wrapping<usize>> for &Wrapping<usize>impl Mul<&Wrapping<usize>> for Wrapping<usize>impl Mul<&f128> for &f128impl Mul<&f128> for f128impl Mul<&f16> for &f16impl Mul<&f16> for f16impl Mul<&f32> for &f32impl Mul<&f32> for f32impl Mul<&f64> for &f64impl Mul<&f64> for f64impl Mul<&i128> for &i128impl Mul<&i128> for i128impl Mul<&i16> for &i16impl Mul<&i16> for i16impl Mul<&i32> for &i32impl Mul<&i32> for i32impl Mul<&i64> for &i64impl Mul<&i64> for i64impl Mul<&i8> for &i8impl Mul<&i8> for i8impl Mul<&isize> for &isizeimpl Mul<&isize> for isizeimpl Mul<&u128> for &u128impl Mul<&u128> for u128impl Mul<&u16> for &u16impl Mul<&u16> for u16impl Mul<&u32> for &u32impl Mul<&u32> for u32impl Mul<&u64> for &u64impl Mul<&u64> for u64impl Mul<&u8> for &u8impl Mul<&u8> for u8impl Mul<&usize> for &usizeimpl Mul<&usize> for usizeimpl Mul<Duration> for u32impl Mul<Saturating<i128>> for &Saturating<i128>impl Mul<Saturating<i16>> for &Saturating<i16>impl Mul<Saturating<i32>> for &Saturating<i32>impl Mul<Saturating<i64>> for &Saturating<i64>impl Mul<Saturating<i8>> for &Saturating<i8>impl Mul<Saturating<isize>> for &Saturating<isize>impl Mul<Saturating<u128>> for &Saturating<u128>impl Mul<Saturating<u16>> for &Saturating<u16>impl Mul<Saturating<u32>> for &Saturating<u32>impl Mul<Saturating<u64>> for &Saturating<u64>impl Mul<Saturating<u8>> for &Saturating<u8>impl Mul<Saturating<usize>> for &Saturating<usize>impl Mul<Wrapping<i128>> for &Wrapping<i128>impl Mul<Wrapping<i16>> for &Wrapping<i16>impl Mul<Wrapping<i32>> for &Wrapping<i32>impl Mul<Wrapping<i64>> for &Wrapping<i64>impl Mul<Wrapping<i8>> for &Wrapping<i8>impl Mul<Wrapping<isize>> for &Wrapping<isize>impl Mul<Wrapping<u128>> for &Wrapping<u128>impl Mul<Wrapping<u16>> for &Wrapping<u16>impl Mul<Wrapping<u32>> for &Wrapping<u32>impl Mul<Wrapping<u64>> for &Wrapping<u64>impl Mul<Wrapping<u8>> for &Wrapping<u8>impl Mul<Wrapping<usize>> for &Wrapping<usize>impl Mul<f128> for &f128impl Mul<f16> for &f16impl Mul<f32> for &f32impl Mul<f64> for &f64impl Mul<i128> for &i128impl Mul<i16> for &i16impl Mul<i32> for &i32impl Mul<i64> for &i64impl Mul<i8> for &i8impl Mul<isize> for &isizeimpl Mul<u128> for &u128impl Mul<u16> for &u16impl Mul<u32> for &u32impl Mul<u32> for Durationimpl Mul<u64> for &u64impl Mul<u8> for &u8impl Mul<usize> for &usizeimpl<'lhs, 'rhs, T, const N: usize> Mul<&'rhs Simd<T, N>> for &'lhs Simd<T, N> where T: SimdElement, Simd<T, N>: Mul<Simd<T, N>, Output = Simd<T, N>>,impl<T, const N: usize> Mul<&Simd<T, N>> for Simd<T, N> where T: SimdElement, Simd<T, N>: Mul<Simd<T, N>, Output = Simd<T, N>>,impl<T, const N: usize> Mul<Simd<T, N>> for &Simd<T, N> where T: SimdElement, Simd<T, N>: Mul<Simd<T, N>, Output = Simd<T, N>>,impl<const N: usize> Mul for Simd<f16, N> where f16: SimdElement,impl<const N: usize> Mul for Simd<f32, N> where f32: SimdElement,impl<const N: usize> Mul for Simd<f64, N> where f64: SimdElement,impl<const N: usize> Mul for Simd<i16, N> where i16: SimdElement,impl<const N: usize> Mul for Simd<i32, N> where i32: SimdElement,impl<const N: usize> Mul for Simd<i64, N> where i64: SimdElement,impl<const N: usize> Mul for Simd<i8, N> where i8: SimdElement,impl<const N: usize> Mul for Simd<isize, N> where isize: SimdElement,impl<const N: usize> Mul for Simd<u16, N> where u16: SimdElement,impl<const N: usize> Mul for Simd<u32, N> where u32: SimdElement,impl<const N: usize> Mul for Simd<u64, N> where u64: SimdElement,impl<const N: usize> Mul for Simd<u8, N> where u8: SimdElement,impl<const N: usize> Mul for Simd<usize, N> where usize: SimdElement,