pub trait MulAssign<Rhs = Self> { fn mul_assign(&mut self, Rhs); }
The MulAssign
trait is used to specify the functionality of *=
.
A trivial implementation of MulAssign
. When Foo *= Foo
happens, it ends up calling mul_assign
, and therefore, main
prints Multiplying!
.
use std::ops::MulAssign; struct Foo; impl MulAssign for Foo { fn mul_assign(&mut self, _rhs: Foo) { println!("Multiplying!"); } } fn main() { let mut foo = Foo; foo *= Foo; }
fn mul_assign(&mut self, Rhs)
The method for the *=
operator
impl MulAssign<Wrapping<usize>> for std::num::Wrapping<usize>
impl MulAssign<Wrapping<u8>> for std::num::Wrapping<u8>
impl MulAssign<Wrapping<u16>> for std::num::Wrapping<u16>
impl MulAssign<Wrapping<u32>> for std::num::Wrapping<u32>
impl MulAssign<Wrapping<u64>> for std::num::Wrapping<u64>
impl MulAssign<Wrapping<isize>> for std::num::Wrapping<isize>
impl MulAssign<Wrapping<i8>> for std::num::Wrapping<i8>
impl MulAssign<Wrapping<i16>> for std::num::Wrapping<i16>
impl MulAssign<Wrapping<i32>> for std::num::Wrapping<i32>
impl MulAssign<Wrapping<i64>> for std::num::Wrapping<i64>
impl MulAssign<Wrapping<u128>> for std::num::Wrapping<u128>
impl MulAssign<Wrapping<i128>> for std::num::Wrapping<i128>
impl MulAssign<usize> for usize
impl MulAssign<u8> for u8
impl MulAssign<u16> for u16
impl MulAssign<u32> for u32
impl MulAssign<u64> for u64
impl MulAssign<isize> for isize
impl MulAssign<i8> for i8
impl MulAssign<i16> for i16
impl MulAssign<i32> for i32
impl MulAssign<i64> for i64
impl MulAssign<f32> for f32
impl MulAssign<f64> for f64
impl MulAssign<u128> for u128
impl MulAssign<i128> for i128
impl MulAssign<u32> for Duration
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/ops/trait.MulAssign.html