## Operator: &+=

``` operator &+= { associativity right precedence assignment }```

### Declarations

func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`
func &+=(_: inout Self, rhs: Self)

Adds two values and stores the result in the left-hand-side variable, discarding any overflow.

The masking addition assignment operator (`&+=`) silently discards any overflow that occurs during the operation. In the following example, the sum of `100` and `121` is greater than the maximum representable `Int8` value, so the result is the overflowed value:

``````var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)``````

Parameters: lhs: The first value to add. rhs: The second value to add.

#### Declaration

`func &+=(lhs: inout Self, rhs: Self)`

#### Declared In

`FixedWidthInteger`