std::ops::Add - Rust (original) (raw)
Trait std::ops::Add1.0.0 [−] [src]
#[lang = "add"]
pub trait Add<RHS = Self> { type Output; fn add(self, rhs: RHS) -> Self::Output; }
The addition operator +
.
Note that RHS
is Self
by default, but this is not mandatory. For example, std::time::SystemTime implements Add<Duration>
, which permits operations of the form SystemTime = SystemTime + Duration
.
use std::ops::Add;
#[derive(Debug, PartialEq)] struct Point { x: i32, y: i32, }
impl Add for Point { type Output = Point;
fn add(self, other: Point) -> Point {
Point {
x: self.x + other.x,
y: self.y + other.y,
}
}
}
assert_eq!(Point { x: 1, y: 0 } + Point { x: 2, y: 3 }, Point { x: 3, y: 3 });Run
Here is an example of the same Point
struct implementing the Add
trait using generics.
use std::ops::Add;
#[derive(Debug, PartialEq)] struct Point { x: T, y: T, }
impl<T: Add<Output=T>> Add for Point { type Output = Point;
fn add(self, other: Point<T>) -> Point<T> {
Point {
x: self.x + other.x,
y: self.y + other.y,
}
}
}
assert_eq!(Point { x: 1, y: 0 } + Point { x: 2, y: 3 }, Point { x: 3, y: 3 });Run
type [Output](#associatedtype.Output)
The resulting type after applying the +
operator.
fn [add](#tymethod.add)(self, rhs: RHS) -> Self::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output")
Performs the +
operation.
impl Add<[i32](../primitive.i32.html)> for [i32](../primitive.i32.html) type [Output](#associatedtype.Output) = [i32](../primitive.i32.html);
impl<'a, 'b> Add<&'a [i128](../primitive.i128.html)> for &'b [i128](../primitive.i128.html) type [Output](#associatedtype.Output) = <[i128](../primitive.i128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i128](../primitive.i128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>;
impl<'a> Add<[i32](../primitive.i32.html)> for &'a [i32](../primitive.i32.html) type [Output](#associatedtype.Output) = <[i32](../primitive.i32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i32](../primitive.i32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[u32](../primitive.u32.html)> for [u32](../primitive.u32.html) type [Output](#associatedtype.Output) = [u32](../primitive.u32.html);
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [u32](../primitive.u32.html)> for [u32](../primitive.u32.html) type [Output](#associatedtype.Output) = <[u32](../primitive.u32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u32](../primitive.u32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[f32](../primitive.f32.html)> for [f32](../primitive.f32.html) type [Output](#associatedtype.Output) = [f32](../primitive.f32.html);
impl Add<[i16](../primitive.i16.html)> for [i16](../primitive.i16.html) type [Output](#associatedtype.Output) = [i16](../primitive.i16.html);
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [u64](../primitive.u64.html)> for &'b [u64](../primitive.u64.html) type [Output](#associatedtype.Output) = <[u64](../primitive.u64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u64](../primitive.u64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [i8](../primitive.i8.html)> for &'b [i8](../primitive.i8.html) type [Output](#associatedtype.Output) = <[i8](../primitive.i8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i8](../primitive.i8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [usize](../primitive.usize.html)> for &'b [usize](../primitive.usize.html) type [Output](#associatedtype.Output) = <[usize](../primitive.usize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[usize](../primitive.usize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[usize](../primitive.usize.html)> for &'a [usize](../primitive.usize.html) type [Output](#associatedtype.Output) = <[usize](../primitive.usize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[usize](../primitive.usize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>;
impl<'a, 'b> Add<&'a [u32](../primitive.u32.html)> for &'b [u32](../primitive.u32.html) type [Output](#associatedtype.Output) = <[u32](../primitive.u32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u32](../primitive.u32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[f32](../primitive.f32.html)> for &'a [f32](../primitive.f32.html) type [Output](#associatedtype.Output) = <[f32](../primitive.f32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f32](../primitive.f32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [u8](../primitive.u8.html)> for [u8](../primitive.u8.html) type [Output](#associatedtype.Output) = <[u8](../primitive.u8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u8](../primitive.u8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[u8](../primitive.u8.html)> for &'a [u8](../primitive.u8.html) type [Output](#associatedtype.Output) = <[u8](../primitive.u8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u8](../primitive.u8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [f64](../primitive.f64.html)> for &'b [f64](../primitive.f64.html) type [Output](#associatedtype.Output) = <[f64](../primitive.f64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f64](../primitive.f64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [f64](../primitive.f64.html)> for [f64](../primitive.f64.html) type [Output](#associatedtype.Output) = <[f64](../primitive.f64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f64](../primitive.f64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>;
impl<'a> Add<&'a [i128](../primitive.i128.html)> for [i128](../primitive.i128.html) type [Output](#associatedtype.Output) = <[i128](../primitive.i128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i128](../primitive.i128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [isize](../primitive.isize.html)> for &'b [isize](../primitive.isize.html) type [Output](#associatedtype.Output) = <[isize](../primitive.isize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[isize](../primitive.isize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [i64](../primitive.i64.html)> for &'b [i64](../primitive.i64.html) type [Output](#associatedtype.Output) = <[i64](../primitive.i64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i64](../primitive.i64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[u32](../primitive.u32.html)> for &'a [u32](../primitive.u32.html) type [Output](#associatedtype.Output) = <[u32](../primitive.u32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u32](../primitive.u32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[u8](../primitive.u8.html)> for [u8](../primitive.u8.html) type [Output](#associatedtype.Output) = [u8](../primitive.u8.html);
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [i16](../primitive.i16.html)> for [i16](../primitive.i16.html) type [Output](#associatedtype.Output) = <[i16](../primitive.i16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i16](../primitive.i16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[i64](../primitive.i64.html)> for &'a [i64](../primitive.i64.html) type [Output](#associatedtype.Output) = <[i64](../primitive.i64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i64](../primitive.i64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [f32](../primitive.f32.html)> for &'b [f32](../primitive.f32.html) type [Output](#associatedtype.Output) = <[f32](../primitive.f32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f32](../primitive.f32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u16](../primitive.u16.html)>;
impl<'a> Add<&'a [usize](../primitive.usize.html)> for [usize](../primitive.usize.html) type [Output](#associatedtype.Output) = <[usize](../primitive.usize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[usize](../primitive.usize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[u128](../primitive.u128.html)> for &'a [u128](../primitive.u128.html) type [Output](#associatedtype.Output) = <[u128](../primitive.u128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u128](../primitive.u128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>;
impl Add<[i8](../primitive.i8.html)> for [i8](../primitive.i8.html) type [Output](#associatedtype.Output) = [i8](../primitive.i8.html);
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>;
impl<'a> Add<&'a [u128](../primitive.u128.html)> for [u128](../primitive.u128.html) type [Output](#associatedtype.Output) = <[u128](../primitive.u128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u128](../primitive.u128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[u16](../primitive.u16.html)> for &'a [u16](../primitive.u16.html) type [Output](#associatedtype.Output) = <[u16](../primitive.u16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u16](../primitive.u16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>;
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i64](../primitive.i64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [u128](../primitive.u128.html)> for &'b [u128](../primitive.u128.html) type [Output](#associatedtype.Output) = <[u128](../primitive.u128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u128](../primitive.u128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [f32](../primitive.f32.html)> for [f32](../primitive.f32.html) type [Output](#associatedtype.Output) = <[f32](../primitive.f32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f32](../primitive.f32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[f64](../primitive.f64.html)> for [f64](../primitive.f64.html) type [Output](#associatedtype.Output) = [f64](../primitive.f64.html);
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [u8](../primitive.u8.html)> for &'b [u8](../primitive.u8.html) type [Output](#associatedtype.Output) = <[u8](../primitive.u8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u8](../primitive.u8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[isize](../primitive.isize.html)> for &'a [isize](../primitive.isize.html) type [Output](#associatedtype.Output) = <[isize](../primitive.isize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[isize](../primitive.isize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[i128](../primitive.i128.html)> for [i128](../primitive.i128.html) type [Output](#associatedtype.Output) = [i128](../primitive.i128.html);
impl<'a> Add<&'a [i8](../primitive.i8.html)> for [i8](../primitive.i8.html) type [Output](#associatedtype.Output) = <[i8](../primitive.i8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i8](../primitive.i8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [isize](../primitive.isize.html)> for [isize](../primitive.isize.html) type [Output](#associatedtype.Output) = <[isize](../primitive.isize.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[isize](../primitive.isize.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [i32](../primitive.i32.html)> for [i32](../primitive.i32.html) type [Output](#associatedtype.Output) = <[i32](../primitive.i32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i32](../primitive.i32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>;
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u64](../primitive.u64.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[f64](../primitive.f64.html)> for &'a [f64](../primitive.f64.html) type [Output](#associatedtype.Output) = <[f64](../primitive.f64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[f64](../primitive.f64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[u128](../primitive.u128.html)> for [u128](../primitive.u128.html) type [Output](#associatedtype.Output) = [u128](../primitive.u128.html);
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>;
impl Add<[isize](../primitive.isize.html)> for [isize](../primitive.isize.html) type [Output](#associatedtype.Output) = [isize](../primitive.isize.html);
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[usize](../primitive.usize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [u16](../primitive.u16.html)> for &'b [u16](../primitive.u16.html) type [Output](#associatedtype.Output) = <[u16](../primitive.u16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u16](../primitive.u16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u128](../primitive.u128.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [i64](../primitive.i64.html)> for [i64](../primitive.i64.html) type [Output](#associatedtype.Output) = <[i64](../primitive.i64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i64](../primitive.i64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[u64](../primitive.u64.html)> for [u64](../primitive.u64.html) type [Output](#associatedtype.Output) = [u64](../primitive.u64.html);
impl Add<[usize](../primitive.usize.html)> for [usize](../primitive.usize.html) type [Output](#associatedtype.Output) = [usize](../primitive.usize.html);
impl<'a, 'b> Add<&'a [i16](../primitive.i16.html)> for &'b [i16](../primitive.i16.html) type [Output](#associatedtype.Output) = <[i16](../primitive.i16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i16](../primitive.i16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i16](../primitive.i16.html)>;
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [u16](../primitive.u16.html)> for [u16](../primitive.u16.html) type [Output](#associatedtype.Output) = <[u16](../primitive.u16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u16](../primitive.u16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>;
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i32](../primitive.i32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[i128](../primitive.i128.html)> for &'a [i128](../primitive.i128.html) type [Output](#associatedtype.Output) = <[i128](../primitive.i128.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i128](../primitive.i128.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[i8](../primitive.i8.html)> for &'a [i8](../primitive.i8.html) type [Output](#associatedtype.Output) = <[i8](../primitive.i8.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i8](../primitive.i8.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[i64](../primitive.i64.html)> for [i64](../primitive.i64.html) type [Output](#associatedtype.Output) = [i64](../primitive.i64.html);
impl Add<[u16](../primitive.u16.html)> for [u16](../primitive.u16.html) type [Output](#associatedtype.Output) = [u16](../primitive.u16.html);
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u32](../primitive.u32.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [u64](../primitive.u64.html)> for [u64](../primitive.u64.html) type [Output](#associatedtype.Output) = <[u64](../primitive.u64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u64](../primitive.u64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>> for &'b [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[i16](../primitive.i16.html)> for &'a [i16](../primitive.i16.html) type [Output](#associatedtype.Output) = <[i16](../primitive.i16.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i16](../primitive.i16.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)> type [Output](#associatedtype.Output) = [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i128](../primitive.i128.html)>;
impl<'a> Add<&'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>> for [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[u8](../primitive.u8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[i8](../primitive.i8.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl Add<[Duration](../../std/time/struct.Duration.html "struct std::time::Duration")> for [Duration](../../std/time/struct.Duration.html "struct std::time::Duration") type [Output](#associatedtype.Output) = [Duration](../../std/time/struct.Duration.html "struct std::time::Duration");
impl<'a> Add<[u64](../primitive.u64.html)> for &'a [u64](../primitive.u64.html) type [Output](#associatedtype.Output) = <[u64](../primitive.u64.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[u64](../primitive.u64.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a, 'b> Add<&'a [i32](../primitive.i32.html)> for &'b [i32](../primitive.i32.html) type [Output](#associatedtype.Output) = <[i32](../primitive.i32.html) as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[i32](../primitive.i32.html)>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>> for &'a [Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> type [Output](#associatedtype.Output) = <[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)> as [Add](../../std/ops/trait.Add.html "trait std::ops::Add")<[Wrapping](../../std/num/struct.Wrapping.html "struct std::num::Wrapping")<[isize](../primitive.isize.html)>>>::[Output](../../std/ops/trait.Add.html#associatedtype.Output "type std::ops::Add::Output");
impl<'a> Add<&'a [str](../primitive.str.html)> for [Cow](../../std/borrow/enum.Cow.html "enum std::borrow::Cow")<'a, [str](../primitive.str.html)> type [Output](#associatedtype.Output) = [Cow](../../std/borrow/enum.Cow.html "enum std::borrow::Cow")<'a, [str](../primitive.str.html)>;
impl<'a> Add<[Cow](../../std/borrow/enum.Cow.html "enum std::borrow::Cow")<'a, [str](../primitive.str.html)>> for [Cow](../../std/borrow/enum.Cow.html "enum std::borrow::Cow")<'a, [str](../primitive.str.html)> type [Output](#associatedtype.Output) = [Cow](../../std/borrow/enum.Cow.html "enum std::borrow::Cow")<'a, [str](../primitive.str.html)>;
impl<'a> Add<&'a [str](../primitive.str.html)> for [String](../../std/string/struct.String.html "struct std:🧵:String") type [Output](#associatedtype.Output) = [String](../../std/string/struct.String.html "struct std:🧵:String");
impl Add<[Duration](../../std/time/struct.Duration.html "struct std::time::Duration")> for [Instant](../../std/time/struct.Instant.html "struct std::time::Instant") type [Output](#associatedtype.Output) = [Instant](../../std/time/struct.Instant.html "struct std::time::Instant");
impl Add<[Duration](../../std/time/struct.Duration.html "struct std::time::Duration")> for [SystemTime](../../std/time/struct.SystemTime.html "struct std::time::SystemTime") type [Output](#associatedtype.Output) = [SystemTime](../../std/time/struct.SystemTime.html "struct std::time::SystemTime");