AddAssign in std::ops - Rust (original) (raw)
pub trait AddAssign<Rhs = Self> {
fn add_assign(&mut self, rhs: Rhs);
}
Expand description
The addition assignment operator +=
.
Examples
This example creates a Point
struct that implements the AddAssign
trait, and then demonstrates add-assigning to a mutable Point
.
use std::ops::AddAssign;
#[derive(Debug, Copy, Clone, PartialEq)]
struct Point {
x: i32,
y: i32,
}
impl AddAssign for Point {
fn add_assign(&mut self, other: Self) {
*self = Self {
x: self.x + other.x,
y: self.y + other.y,
};
}
}
let mut point = Point { x: 1, y: 0 };
point += Point { x: 2, y: 3 };
assert_eq!(point, Point { x: 3, y: 3 });
Required methods
fn add_assign(&mut self, rhs: Rhs)
Performs the +=
operation.
Example
let mut x: u32 = 12;
x += 1;
assert_eq!(x, 13);
Implementors
Implements the +=
operator for appending to a String
.
This has the same behavior as the push_str method.
impl<T, U, const LANES: usize> AddAssign for Simd<T, LANES> where
T: SimdElement,
Simd<T, LANES>: Add,
LaneCount: SupportedLaneCount,
<Simd<T, LANES> as Add>::Output == Simd<T, LANES>,