pub trait SubAssign<Rhs = Self> {
// Required method
fn sub_assign(&mut self, rhs: Rhs);
}
Expand description
The subtraction assignment operator -=
.
§Examples
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, Copy, Clone, 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});
Required Methods§
1.8.0 · Sourcefn sub_assign(&mut self, rhs: Rhs)
fn sub_assign(&mut self, rhs: Rhs)
Implementors§
impl SubAssign for f16
impl SubAssign for f32
impl SubAssign for f64
impl SubAssign for f128
impl SubAssign for i8
impl SubAssign for i16
impl SubAssign for i32
impl SubAssign for i64
impl SubAssign for i128
impl SubAssign for isize
impl SubAssign for u8
impl SubAssign for u16
impl SubAssign for u32
impl SubAssign for u64
impl SubAssign for u128
impl SubAssign for usize
impl SubAssign for Saturating<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Saturating<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Wrapping<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign for Duration
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&f16> for f16
impl SubAssign<&f32> for f32
impl SubAssign<&f64> for f64
impl SubAssign<&f128> for f128
impl SubAssign<&i8> for i8
impl SubAssign<&i8> for Saturating<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i8> for Wrapping<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i16> for i16
impl SubAssign<&i16> for Saturating<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i16> for Wrapping<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i32> for i32
impl SubAssign<&i32> for Saturating<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i32> for Wrapping<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i64> for i64
impl SubAssign<&i64> for Saturating<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i64> for Wrapping<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i128> for i128
impl SubAssign<&i128> for Saturating<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&i128> for Wrapping<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&isize> for isize
impl SubAssign<&isize> for Saturating<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&isize> for Wrapping<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u8> for u8
impl SubAssign<&u8> for Saturating<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u8> for Wrapping<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u16> for u16
impl SubAssign<&u16> for Saturating<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u16> for Wrapping<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u32> for u32
impl SubAssign<&u32> for Saturating<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u32> for Wrapping<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u64> for u64
impl SubAssign<&u64> for Saturating<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u64> for Wrapping<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u128> for u128
impl SubAssign<&u128> for Saturating<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&u128> for Wrapping<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&usize> for usize
impl SubAssign<&usize> for Saturating<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&usize> for Wrapping<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<i8>> for Saturating<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<i16>> for Saturating<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<i32>> for Saturating<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<i64>> for Saturating<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<i128>> for Saturating<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<isize>> for Saturating<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<u8>> for Saturating<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<u16>> for Saturating<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<u32>> for Saturating<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<u64>> for Saturating<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<u128>> for Saturating<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Saturating<usize>> for Saturating<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<i8>> for Wrapping<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<i16>> for Wrapping<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<i32>> for Wrapping<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<i64>> for Wrapping<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<i128>> for Wrapping<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<isize>> for Wrapping<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<u8>> for Wrapping<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<u16>> for Wrapping<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<u32>> for Wrapping<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<u64>> for Wrapping<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<u128>> for Wrapping<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<&Wrapping<usize>> for Wrapping<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i8> for Saturating<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i8> for Wrapping<i8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i16> for Saturating<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i16> for Wrapping<i16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i32> for Saturating<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i32> for Wrapping<i32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i64> for Saturating<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i64> for Wrapping<i64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i128> for Saturating<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<i128> for Wrapping<i128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<isize> for Saturating<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<isize> for Wrapping<isize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u8> for Saturating<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u8> for Wrapping<u8>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u16> for Saturating<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u16> for Wrapping<u16>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u32> for Saturating<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u32> for Wrapping<u32>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u64> for Saturating<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u64> for Wrapping<u64>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u128> for Saturating<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<u128> for Wrapping<u128>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<usize> for Saturating<usize>
Available on non-crate feature
ferrocene_certified
only.impl SubAssign<usize> for Wrapping<usize>
Available on non-crate feature
ferrocene_certified
only.impl<T, U, const N: usize> SubAssign<U> for Simd<T, N>
Available on non-crate feature
ferrocene_certified
only.