# Struct bitflags::__core::num::Wrapping [−] [src]

    pub struct Wrapping<T>(pub T);

1.0.0

Provides intentionally-wrapped arithmetic on `T`.

Operations like `+` on `u32` values is intended to never overflow, and in some debug configurations overflow is detected and results in a panic. While most arithmetic falls into this category, some code explicitly expects and relies upon modular arithmetic (e.g., hashing).

Wrapping arithmetic can be achieved either through methods like `wrapping_add`, or through the `Wrapping<T>` type, which says that all standard arithmetic operations on the underlying value are intended to have wrapping semantics.

## Trait Implementations

### `impl<T> Debug for Wrapping<T> where T: Debug`

#### `fn fmt(&self, f: &mut Formatter) -> Result<(), Error>`

### `impl<T> Display for Wrapping<T> where T: Display` 1.10.0

#### `fn fmt(&self, f: &mut Formatter) -> Result<(), Error>`

### `impl Shl<usize> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn shl(self, other: usize) -> Wrapping<u8>`

### `impl ShlAssign<usize> for Wrapping<u8>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn shr(self, other: usize) -> Wrapping<u8>`

### `impl ShrAssign<usize> for Wrapping<u8>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn shl(self, other: usize) -> Wrapping<u16>`

### `impl ShlAssign<usize> for Wrapping<u16>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn shr(self, other: usize) -> Wrapping<u16>`

### `impl ShrAssign<usize> for Wrapping<u16>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn shl(self, other: usize) -> Wrapping<u32>`

### `impl ShlAssign<usize> for Wrapping<u32>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn shr(self, other: usize) -> Wrapping<u32>`

### `impl ShrAssign<usize> for Wrapping<u32>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn shl(self, other: usize) -> Wrapping<u64>`

### `impl ShlAssign<usize> for Wrapping<u64>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn shr(self, other: usize) -> Wrapping<u64>`

### `impl ShrAssign<usize> for Wrapping<u64>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn shl(self, other: usize) -> Wrapping<usize>`

### `impl ShlAssign<usize> for Wrapping<usize>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn shr(self, other: usize) -> Wrapping<usize>`

### `impl ShrAssign<usize> for Wrapping<usize>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn shl(self, other: usize) -> Wrapping<i8>`

### `impl ShlAssign<usize> for Wrapping<i8>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn shr(self, other: usize) -> Wrapping<i8>`

### `impl ShrAssign<usize> for Wrapping<i8>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn shl(self, other: usize) -> Wrapping<i16>`

### `impl ShlAssign<usize> for Wrapping<i16>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn shr(self, other: usize) -> Wrapping<i16>`

### `impl ShrAssign<usize> for Wrapping<i16>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn shl(self, other: usize) -> Wrapping<i32>`

### `impl ShlAssign<usize> for Wrapping<i32>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn shr(self, other: usize) -> Wrapping<i32>`

### `impl ShrAssign<usize> for Wrapping<i32>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn shl(self, other: usize) -> Wrapping<i64>`

### `impl ShlAssign<usize> for Wrapping<i64>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn shr(self, other: usize) -> Wrapping<i64>`

### `impl ShrAssign<usize> for Wrapping<i64>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Shl<usize> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn shl(self, other: usize) -> Wrapping<isize>`

### `impl ShlAssign<usize> for Wrapping<isize>`1.7.0

#### `fn shl_assign(&mut self, other: usize)`

### `impl Shr<usize> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn shr(self, other: usize) -> Wrapping<isize>`

### `impl ShrAssign<usize> for Wrapping<isize>`1.7.0

#### `fn shr_assign(&mut self, other: usize)`

### `impl Add<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn add(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl AddAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<usize>)`

### `impl Sub<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn sub(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl SubAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<usize>)`

### `impl Mul<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn mul(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl MulAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<usize>)`

### `impl Div<Wrapping<usize>> for Wrapping<usize>`1.3.0

#### `type Output = Wrapping<usize>`

#### `fn div(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl DivAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<usize>)`

### `impl Rem<Wrapping<usize>> for Wrapping<usize>`1.7.0

#### `type Output = Wrapping<usize>`

#### `fn rem(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl RemAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<usize>)`

### `impl Not for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn not(self) -> Wrapping<usize>`

### `impl BitXor<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn bitxor(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl BitXorAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<usize>)`

### `impl BitOr<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn bitor(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl BitOrAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<usize>)`

### `impl BitAnd<Wrapping<usize>> for Wrapping<usize>`

#### `type Output = Wrapping<usize>`

#### `fn bitand(self, other: Wrapping<usize>) -> Wrapping<usize>`

### `impl BitAndAssign<Wrapping<usize>> for Wrapping<usize>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<usize>)`

### `impl Add<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn add(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl AddAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<u8>)`

### `impl Sub<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn sub(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl SubAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<u8>)`

### `impl Mul<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn mul(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl MulAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<u8>)`

### `impl Div<Wrapping<u8>> for Wrapping<u8>`1.3.0

#### `type Output = Wrapping<u8>`

#### `fn div(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl DivAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<u8>)`

### `impl Rem<Wrapping<u8>> for Wrapping<u8>`1.7.0

#### `type Output = Wrapping<u8>`

#### `fn rem(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl RemAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<u8>)`

### `impl Not for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn not(self) -> Wrapping<u8>`

### `impl BitXor<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn bitxor(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl BitXorAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<u8>)`

### `impl BitOr<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn bitor(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl BitOrAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<u8>)`

### `impl BitAnd<Wrapping<u8>> for Wrapping<u8>`

#### `type Output = Wrapping<u8>`

#### `fn bitand(self, other: Wrapping<u8>) -> Wrapping<u8>`

### `impl BitAndAssign<Wrapping<u8>> for Wrapping<u8>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<u8>)`

### `impl Add<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn add(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl AddAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<u16>)`

### `impl Sub<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn sub(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl SubAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<u16>)`

### `impl Mul<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn mul(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl MulAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<u16>)`

### `impl Div<Wrapping<u16>> for Wrapping<u16>`1.3.0

#### `type Output = Wrapping<u16>`

#### `fn div(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl DivAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<u16>)`

### `impl Rem<Wrapping<u16>> for Wrapping<u16>`1.7.0

#### `type Output = Wrapping<u16>`

#### `fn rem(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl RemAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<u16>)`

### `impl Not for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn not(self) -> Wrapping<u16>`

### `impl BitXor<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn bitxor(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl BitXorAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<u16>)`

### `impl BitOr<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn bitor(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl BitOrAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<u16>)`

### `impl BitAnd<Wrapping<u16>> for Wrapping<u16>`

#### `type Output = Wrapping<u16>`

#### `fn bitand(self, other: Wrapping<u16>) -> Wrapping<u16>`

### `impl BitAndAssign<Wrapping<u16>> for Wrapping<u16>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<u16>)`

### `impl Add<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn add(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl AddAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<u32>)`

### `impl Sub<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn sub(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl SubAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<u32>)`

### `impl Mul<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn mul(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl MulAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<u32>)`

### `impl Div<Wrapping<u32>> for Wrapping<u32>`1.3.0

#### `type Output = Wrapping<u32>`

#### `fn div(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl DivAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<u32>)`

### `impl Rem<Wrapping<u32>> for Wrapping<u32>`1.7.0

#### `type Output = Wrapping<u32>`

#### `fn rem(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl RemAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<u32>)`

### `impl Not for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn not(self) -> Wrapping<u32>`

### `impl BitXor<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn bitxor(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl BitXorAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<u32>)`

### `impl BitOr<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn bitor(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl BitOrAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<u32>)`

### `impl BitAnd<Wrapping<u32>> for Wrapping<u32>`

#### `type Output = Wrapping<u32>`

#### `fn bitand(self, other: Wrapping<u32>) -> Wrapping<u32>`

### `impl BitAndAssign<Wrapping<u32>> for Wrapping<u32>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<u32>)`

### `impl Add<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn add(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl AddAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<u64>)`

### `impl Sub<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn sub(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl SubAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<u64>)`

### `impl Mul<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn mul(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl MulAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<u64>)`

### `impl Div<Wrapping<u64>> for Wrapping<u64>`1.3.0

#### `type Output = Wrapping<u64>`

#### `fn div(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl DivAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<u64>)`

### `impl Rem<Wrapping<u64>> for Wrapping<u64>`1.7.0

#### `type Output = Wrapping<u64>`

#### `fn rem(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl RemAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<u64>)`

### `impl Not for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn not(self) -> Wrapping<u64>`

### `impl BitXor<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn bitxor(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl BitXorAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<u64>)`

### `impl BitOr<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn bitor(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl BitOrAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<u64>)`

### `impl BitAnd<Wrapping<u64>> for Wrapping<u64>`

#### `type Output = Wrapping<u64>`

#### `fn bitand(self, other: Wrapping<u64>) -> Wrapping<u64>`

### `impl BitAndAssign<Wrapping<u64>> for Wrapping<u64>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<u64>)`

### `impl Add<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn add(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl AddAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<isize>)`

### `impl Sub<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn sub(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl SubAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<isize>)`

### `impl Mul<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn mul(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl MulAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<isize>)`

### `impl Div<Wrapping<isize>> for Wrapping<isize>`1.3.0

#### `type Output = Wrapping<isize>`

#### `fn div(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl DivAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<isize>)`

### `impl Rem<Wrapping<isize>> for Wrapping<isize>`1.7.0

#### `type Output = Wrapping<isize>`

#### `fn rem(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl RemAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<isize>)`

### `impl Not for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn not(self) -> Wrapping<isize>`

### `impl BitXor<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn bitxor(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl BitXorAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<isize>)`

### `impl BitOr<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn bitor(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl BitOrAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<isize>)`

### `impl BitAnd<Wrapping<isize>> for Wrapping<isize>`

#### `type Output = Wrapping<isize>`

#### `fn bitand(self, other: Wrapping<isize>) -> Wrapping<isize>`

### `impl BitAndAssign<Wrapping<isize>> for Wrapping<isize>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<isize>)`

### `impl Add<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn add(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl AddAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<i8>)`

### `impl Sub<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn sub(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl SubAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<i8>)`

### `impl Mul<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn mul(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl MulAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<i8>)`

### `impl Div<Wrapping<i8>> for Wrapping<i8>`1.3.0

#### `type Output = Wrapping<i8>`

#### `fn div(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl DivAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<i8>)`

### `impl Rem<Wrapping<i8>> for Wrapping<i8>`1.7.0

#### `type Output = Wrapping<i8>`

#### `fn rem(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl RemAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<i8>)`

### `impl Not for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn not(self) -> Wrapping<i8>`

### `impl BitXor<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn bitxor(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl BitXorAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<i8>)`

### `impl BitOr<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn bitor(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl BitOrAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<i8>)`

### `impl BitAnd<Wrapping<i8>> for Wrapping<i8>`

#### `type Output = Wrapping<i8>`

#### `fn bitand(self, other: Wrapping<i8>) -> Wrapping<i8>`

### `impl BitAndAssign<Wrapping<i8>> for Wrapping<i8>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<i8>)`

### `impl Add<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn add(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl AddAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<i16>)`

### `impl Sub<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn sub(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl SubAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<i16>)`

### `impl Mul<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn mul(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl MulAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<i16>)`

### `impl Div<Wrapping<i16>> for Wrapping<i16>`1.3.0

#### `type Output = Wrapping<i16>`

#### `fn div(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl DivAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<i16>)`

### `impl Rem<Wrapping<i16>> for Wrapping<i16>`1.7.0

#### `type Output = Wrapping<i16>`

#### `fn rem(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl RemAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<i16>)`

### `impl Not for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn not(self) -> Wrapping<i16>`

### `impl BitXor<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn bitxor(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl BitXorAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<i16>)`

### `impl BitOr<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn bitor(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl BitOrAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<i16>)`

### `impl BitAnd<Wrapping<i16>> for Wrapping<i16>`

#### `type Output = Wrapping<i16>`

#### `fn bitand(self, other: Wrapping<i16>) -> Wrapping<i16>`

### `impl BitAndAssign<Wrapping<i16>> for Wrapping<i16>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<i16>)`

### `impl Add<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn add(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl AddAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<i32>)`

### `impl Sub<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn sub(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl SubAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<i32>)`

### `impl Mul<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn mul(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl MulAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<i32>)`

### `impl Div<Wrapping<i32>> for Wrapping<i32>`1.3.0

#### `type Output = Wrapping<i32>`

#### `fn div(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl DivAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<i32>)`

### `impl Rem<Wrapping<i32>> for Wrapping<i32>`1.7.0

#### `type Output = Wrapping<i32>`

#### `fn rem(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl RemAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<i32>)`

### `impl Not for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn not(self) -> Wrapping<i32>`

### `impl BitXor<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn bitxor(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl BitXorAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<i32>)`

### `impl BitOr<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn bitor(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl BitOrAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<i32>)`

### `impl BitAnd<Wrapping<i32>> for Wrapping<i32>`

#### `type Output = Wrapping<i32>`

#### `fn bitand(self, other: Wrapping<i32>) -> Wrapping<i32>`

### `impl BitAndAssign<Wrapping<i32>> for Wrapping<i32>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<i32>)`

### `impl Add<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn add(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl AddAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn add_assign(&mut self, other: Wrapping<i64>)`

### `impl Sub<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn sub(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl SubAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn sub_assign(&mut self, other: Wrapping<i64>)`

### `impl Mul<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn mul(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl MulAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn mul_assign(&mut self, other: Wrapping<i64>)`

### `impl Div<Wrapping<i64>> for Wrapping<i64>`1.3.0

#### `type Output = Wrapping<i64>`

#### `fn div(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl DivAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn div_assign(&mut self, other: Wrapping<i64>)`

### `impl Rem<Wrapping<i64>> for Wrapping<i64>`1.7.0

#### `type Output = Wrapping<i64>`

#### `fn rem(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl RemAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn rem_assign(&mut self, other: Wrapping<i64>)`

### `impl Not for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn not(self) -> Wrapping<i64>`

### `impl BitXor<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn bitxor(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl BitXorAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn bitxor_assign(&mut self, other: Wrapping<i64>)`

### `impl BitOr<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn bitor(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl BitOrAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn bitor_assign(&mut self, other: Wrapping<i64>)`

### `impl BitAnd<Wrapping<i64>> for Wrapping<i64>`

#### `type Output = Wrapping<i64>`

#### `fn bitand(self, other: Wrapping<i64>) -> Wrapping<i64>`

### `impl BitAndAssign<Wrapping<i64>> for Wrapping<i64>`1.8.0

#### `fn bitand_assign(&mut self, other: Wrapping<i64>)`

### Derived Implementations

### `impl<T> Hash for Wrapping<T> where T: Hash`

#### `fn hash<__HT>(&self, __arg_0: &mut __HT) where __HT: Hasher`

#### `fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher` 1.3.0

### `impl<T> Default for Wrapping<T> where T: Default`

#### `fn default() -> Wrapping<T>`

### `impl<T> Copy for Wrapping<T> where T: Copy`

### `impl<T> Clone for Wrapping<T> where T: Clone`

#### `fn clone(&self) -> Wrapping<T>`

#### `fn clone_from(&mut self, source: &Self)`

### `impl<T> Ord for Wrapping<T> where T: Ord`

#### `fn cmp(&self, __arg_0: &Wrapping<T>) -> Ordering`

### `impl<T> PartialOrd<Wrapping<T>> for Wrapping<T> where T: PartialOrd<T>`

#### `fn partial_cmp(&self, __arg_0: &Wrapping<T>) -> Option<Ordering>`

#### `fn lt(&self, __arg_0: &Wrapping<T>) -> bool`

#### `fn le(&self, __arg_0: &Wrapping<T>) -> bool`

#### `fn gt(&self, __arg_0: &Wrapping<T>) -> bool`

#### `fn ge(&self, __arg_0: &Wrapping<T>) -> bool`

### `impl<T> Eq for Wrapping<T> where T: Eq`

### `impl<T> PartialEq<Wrapping<T>> for Wrapping<T> where T: PartialEq<T>`

#### `fn eq(&self, __arg_0: &Wrapping<T>) -> bool`

#### `fn ne(&self, __arg_0: &Wrapping<T>) -> bool`

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)