Trait core::ops::AddAssign

1.8.0 · source ·
pub trait AddAssign<Rhs = Self> {
    // Required method
    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 });
Run

Required Methods§

source

fn add_assign(&mut self, rhs: Rhs)

Performs the += operation.

Example
let mut x: u32 = 12;
x += 1;
assert_eq!(x, 13);
Run

Implementors§

source§

impl AddAssign for f32

source§

impl AddAssign for f64

source§

impl AddAssign for i8

source§

impl AddAssign for i16

source§

impl AddAssign for i32

source§

impl AddAssign for i64

source§

impl AddAssign for i128

source§

impl AddAssign for isize

source§

impl AddAssign for u8

source§

impl AddAssign for u16

source§

impl AddAssign for u32

source§

impl AddAssign for u64

source§

impl AddAssign for u128

source§

impl AddAssign for usize

1.74.0 · source§

impl AddAssign for Saturating<i8>

1.74.0 · source§

impl AddAssign for Saturating<i16>

1.74.0 · source§

impl AddAssign for Saturating<i32>

1.74.0 · source§

impl AddAssign for Saturating<i64>

1.74.0 · source§

impl AddAssign for Saturating<i128>

1.74.0 · source§

impl AddAssign for Saturating<isize>

1.74.0 · source§

impl AddAssign for Saturating<u8>

1.74.0 · source§

impl AddAssign for Saturating<u16>

1.74.0 · source§

impl AddAssign for Saturating<u32>

1.74.0 · source§

impl AddAssign for Saturating<u64>

1.74.0 · source§

impl AddAssign for Saturating<u128>

1.74.0 · source§

impl AddAssign for Saturating<usize>

source§

impl AddAssign for Wrapping<i8>

source§

impl AddAssign for Wrapping<i16>

source§

impl AddAssign for Wrapping<i32>

source§

impl AddAssign for Wrapping<i64>

source§

impl AddAssign for Wrapping<i128>

source§

impl AddAssign for Wrapping<isize>

source§

impl AddAssign for Wrapping<u8>

source§

impl AddAssign for Wrapping<u16>

source§

impl AddAssign for Wrapping<u32>

source§

impl AddAssign for Wrapping<u64>

source§

impl AddAssign for Wrapping<u128>

source§

impl AddAssign for Wrapping<usize>

1.9.0 · source§

impl AddAssign for Duration

1.22.0 · source§

impl AddAssign<&f32> for f32

1.22.0 · source§

impl AddAssign<&f64> for f64

1.22.0 · source§

impl AddAssign<&i8> for i8

1.22.0 · source§

impl AddAssign<&i8> for Saturating<i8>

1.22.0 · source§

impl AddAssign<&i8> for Wrapping<i8>

1.22.0 · source§

impl AddAssign<&i16> for i16

1.22.0 · source§

impl AddAssign<&i16> for Saturating<i16>

1.22.0 · source§

impl AddAssign<&i16> for Wrapping<i16>

1.22.0 · source§

impl AddAssign<&i32> for i32

1.22.0 · source§

impl AddAssign<&i32> for Saturating<i32>

1.22.0 · source§

impl AddAssign<&i32> for Wrapping<i32>

1.22.0 · source§

impl AddAssign<&i64> for i64

1.22.0 · source§

impl AddAssign<&i64> for Saturating<i64>

1.22.0 · source§

impl AddAssign<&i64> for Wrapping<i64>

1.22.0 · source§

impl AddAssign<&i128> for i128

1.22.0 · source§

impl AddAssign<&i128> for Saturating<i128>

1.22.0 · source§

impl AddAssign<&i128> for Wrapping<i128>

1.22.0 · source§

impl AddAssign<&isize> for isize

1.22.0 · source§

impl AddAssign<&isize> for Saturating<isize>

1.22.0 · source§

impl AddAssign<&isize> for Wrapping<isize>

1.22.0 · source§

impl AddAssign<&u8> for u8

1.22.0 · source§

impl AddAssign<&u8> for Saturating<u8>

1.22.0 · source§

impl AddAssign<&u8> for Wrapping<u8>

1.22.0 · source§

impl AddAssign<&u16> for u16

1.22.0 · source§

impl AddAssign<&u16> for Saturating<u16>

1.22.0 · source§

impl AddAssign<&u16> for Wrapping<u16>

1.22.0 · source§

impl AddAssign<&u32> for u32

1.22.0 · source§

impl AddAssign<&u32> for Saturating<u32>

1.22.0 · source§

impl AddAssign<&u32> for Wrapping<u32>

1.22.0 · source§

impl AddAssign<&u64> for u64

1.22.0 · source§

impl AddAssign<&u64> for Saturating<u64>

1.22.0 · source§

impl AddAssign<&u64> for Wrapping<u64>

1.22.0 · source§

impl AddAssign<&u128> for u128

1.22.0 · source§

impl AddAssign<&u128> for Saturating<u128>

1.22.0 · source§

impl AddAssign<&u128> for Wrapping<u128>

1.22.0 · source§

impl AddAssign<&usize> for usize

1.22.0 · source§

impl AddAssign<&usize> for Saturating<usize>

1.22.0 · source§

impl AddAssign<&usize> for Wrapping<usize>

1.22.0 · source§

impl AddAssign<&Saturating<i8>> for Saturating<i8>

1.22.0 · source§

impl AddAssign<&Saturating<i16>> for Saturating<i16>

1.22.0 · source§

impl AddAssign<&Saturating<i32>> for Saturating<i32>

1.22.0 · source§

impl AddAssign<&Saturating<i64>> for Saturating<i64>

1.22.0 · source§

impl AddAssign<&Saturating<i128>> for Saturating<i128>

1.22.0 · source§

impl AddAssign<&Saturating<isize>> for Saturating<isize>

1.22.0 · source§

impl AddAssign<&Saturating<u8>> for Saturating<u8>

1.22.0 · source§

impl AddAssign<&Saturating<u16>> for Saturating<u16>

1.22.0 · source§

impl AddAssign<&Saturating<u32>> for Saturating<u32>

1.22.0 · source§

impl AddAssign<&Saturating<u64>> for Saturating<u64>

1.22.0 · source§

impl AddAssign<&Saturating<u128>> for Saturating<u128>

1.22.0 · source§

impl AddAssign<&Saturating<usize>> for Saturating<usize>

1.22.0 · source§

impl AddAssign<&Wrapping<i8>> for Wrapping<i8>

1.22.0 · source§

impl AddAssign<&Wrapping<i16>> for Wrapping<i16>

1.22.0 · source§

impl AddAssign<&Wrapping<i32>> for Wrapping<i32>

1.22.0 · source§

impl AddAssign<&Wrapping<i64>> for Wrapping<i64>

1.22.0 · source§

impl AddAssign<&Wrapping<i128>> for Wrapping<i128>

1.22.0 · source§

impl AddAssign<&Wrapping<isize>> for Wrapping<isize>

1.22.0 · source§

impl AddAssign<&Wrapping<u8>> for Wrapping<u8>

1.22.0 · source§

impl AddAssign<&Wrapping<u16>> for Wrapping<u16>

1.22.0 · source§

impl AddAssign<&Wrapping<u32>> for Wrapping<u32>

1.22.0 · source§

impl AddAssign<&Wrapping<u64>> for Wrapping<u64>

1.22.0 · source§

impl AddAssign<&Wrapping<u128>> for Wrapping<u128>

1.22.0 · source§

impl AddAssign<&Wrapping<usize>> for Wrapping<usize>

1.74.0 · source§

impl AddAssign<i8> for Saturating<i8>

1.60.0 · source§

impl AddAssign<i8> for Wrapping<i8>

1.74.0 · source§

impl AddAssign<i16> for Saturating<i16>

1.60.0 · source§

impl AddAssign<i16> for Wrapping<i16>

1.74.0 · source§

impl AddAssign<i32> for Saturating<i32>

1.60.0 · source§

impl AddAssign<i32> for Wrapping<i32>

1.74.0 · source§

impl AddAssign<i64> for Saturating<i64>

1.60.0 · source§

impl AddAssign<i64> for Wrapping<i64>

1.74.0 · source§

impl AddAssign<i128> for Saturating<i128>

1.60.0 · source§

impl AddAssign<i128> for Wrapping<i128>

1.74.0 · source§

impl AddAssign<isize> for Saturating<isize>

1.60.0 · source§

impl AddAssign<isize> for Wrapping<isize>

1.74.0 · source§

impl AddAssign<u8> for Saturating<u8>

1.60.0 · source§

impl AddAssign<u8> for Wrapping<u8>

1.74.0 · source§

impl AddAssign<u16> for Saturating<u16>

1.60.0 · source§

impl AddAssign<u16> for Wrapping<u16>

1.74.0 · source§

impl AddAssign<u32> for Saturating<u32>

1.60.0 · source§

impl AddAssign<u32> for Wrapping<u32>

1.74.0 · source§

impl AddAssign<u64> for Saturating<u64>

1.60.0 · source§

impl AddAssign<u64> for Wrapping<u64>

1.74.0 · source§

impl AddAssign<u128> for Saturating<u128>

1.60.0 · source§

impl AddAssign<u128> for Wrapping<u128>

1.74.0 · source§

impl AddAssign<usize> for Saturating<usize>

1.60.0 · source§

impl AddAssign<usize> for Wrapping<usize>

source§

impl<T, U, const LANES: usize> AddAssign<U> for Simd<T, LANES>where Self: Add<U, Output = Self>, T: SimdElement, LaneCount<LANES>: SupportedLaneCount,