#[lang = "sub_assign"]
pub trait SubAssign<Rhs = Self> {
fn sub_assign(&mut self, rhs: Rhs);
}
The subtraction assignment operator -=
.
This example creates a Point
struct that implements the SubAssign
trait, and then demonstrates sub-assigning to a mutable Point
.
use std::ops::SubAssign;
#[derive(Debug, PartialEq)]
struct Point {
x: i32,
y: i32,
}
impl SubAssign for Point {
fn sub_assign(&mut self, other: Self) {
*self = Self {
x: self.x - other.x,
y: self.y - other.y,
};
}
}
let mut point = Point { x: 3, y: 3 };
point -= Point { x: 2, y: 3 };
assert_eq!(point, Point {x: 1, y: 0});Run
fn sub_assign(&mut self, rhs: Rhs)
Performs the -=
operation.
Loading content...
impl SubAssign<f32> for f32
[src]
impl SubAssign<f64> for f64
[src]
impl SubAssign<i128> for i128
[src]
impl SubAssign<i16> for i16
[src]
impl SubAssign<i32> for i32
[src]
impl SubAssign<i64> for i64
[src]
impl SubAssign<i8> for i8
[src]
impl SubAssign<isize> for isize
[src]
impl SubAssign<u128> for u128
[src]
impl SubAssign<u16> for u16
[src]
impl SubAssign<u32> for u32
[src]
impl SubAssign<u64> for u64
[src]
impl SubAssign<u8> for u8
[src]
impl SubAssign<usize> for usize
[src]
impl<'_> SubAssign<&'_ Wrapping<isize>> for Wrapping<isize>
[src]
impl<'_> SubAssign<&'_ Wrapping<usize>> for Wrapping<usize>
[src]
impl<'_> SubAssign<&'_ f32> for f32
[src]
impl<'_> SubAssign<&'_ f64> for f64
[src]
impl<'_> SubAssign<&'_ i128> for i128
[src]
impl<'_> SubAssign<&'_ i16> for i16
[src]
impl<'_> SubAssign<&'_ i32> for i32
[src]
impl<'_> SubAssign<&'_ i64> for i64
[src]
impl<'_> SubAssign<&'_ i8> for i8
[src]
impl<'_> SubAssign<&'_ isize> for isize
[src]
impl<'_> SubAssign<&'_ u128> for u128
[src]
impl<'_> SubAssign<&'_ u16> for u16
[src]
impl<'_> SubAssign<&'_ u32> for u32
[src]
impl<'_> SubAssign<&'_ u64> for u64
[src]
impl<'_> SubAssign<&'_ u8> for u8
[src]
impl<'_> SubAssign<&'_ usize> for usize
[src]
Loading content...