pub trait RemAssign<Rhs = Self> {
// Required method
fn rem_assign(&mut self, rhs: Rhs);
}
Expand description
The remainder assignment operator %=
.
§Examples
use std::ops::RemAssign;
struct CookieJar { cookies: u32 }
impl RemAssign<u32> for CookieJar {
fn rem_assign(&mut self, piles: u32) {
self.cookies %= piles;
}
}
let mut jar = CookieJar { cookies: 31 };
let piles = 4;
println!("Splitting up {} cookies into {} even piles!", jar.cookies, piles);
jar %= piles;
println!("{} cookies remain in the cookie jar!", jar.cookies);
Required Methods§
1.8.0 · Sourcefn rem_assign(&mut self, rhs: Rhs)
fn rem_assign(&mut self, rhs: Rhs)
Implementors§
impl RemAssign for f16
impl RemAssign for f32
impl RemAssign for f64
impl RemAssign for f128
impl RemAssign for i8
impl RemAssign for i16
impl RemAssign for i32
impl RemAssign for i64
impl RemAssign for i128
impl RemAssign for isize
impl RemAssign for u8
impl RemAssign for u16
impl RemAssign for u32
impl RemAssign for u64
impl RemAssign for u128
impl RemAssign for usize
impl RemAssign for Saturating<i8>
impl RemAssign for Saturating<i16>
impl RemAssign for Saturating<i32>
impl RemAssign for Saturating<i64>
impl RemAssign for Saturating<i128>
impl RemAssign for Saturating<isize>
impl RemAssign for Saturating<u8>
impl RemAssign for Saturating<u16>
impl RemAssign for Saturating<u32>
impl RemAssign for Saturating<u64>
impl RemAssign for Saturating<u128>
impl RemAssign for Saturating<usize>
impl RemAssign for Wrapping<i8>
impl RemAssign for Wrapping<i16>
impl RemAssign for Wrapping<i32>
impl RemAssign for Wrapping<i64>
impl RemAssign for Wrapping<i128>
impl RemAssign for Wrapping<isize>
impl RemAssign for Wrapping<u8>
impl RemAssign for Wrapping<u16>
impl RemAssign for Wrapping<u32>
impl RemAssign for Wrapping<u64>
impl RemAssign for Wrapping<u128>
impl RemAssign for Wrapping<usize>
impl RemAssign<&f16> for f16
impl RemAssign<&f32> for f32
impl RemAssign<&f64> for f64
impl RemAssign<&f128> for f128
impl RemAssign<&i8> for i8
impl RemAssign<&i8> for Saturating<i8>
impl RemAssign<&i8> for Wrapping<i8>
impl RemAssign<&i16> for i16
impl RemAssign<&i16> for Saturating<i16>
impl RemAssign<&i16> for Wrapping<i16>
impl RemAssign<&i32> for i32
impl RemAssign<&i32> for Saturating<i32>
impl RemAssign<&i32> for Wrapping<i32>
impl RemAssign<&i64> for i64
impl RemAssign<&i64> for Saturating<i64>
impl RemAssign<&i64> for Wrapping<i64>
impl RemAssign<&i128> for i128
impl RemAssign<&i128> for Saturating<i128>
impl RemAssign<&i128> for Wrapping<i128>
impl RemAssign<&isize> for isize
impl RemAssign<&isize> for Saturating<isize>
impl RemAssign<&isize> for Wrapping<isize>
impl RemAssign<&u8> for u8
impl RemAssign<&u8> for Saturating<u8>
impl RemAssign<&u8> for Wrapping<u8>
impl RemAssign<&u16> for u16
impl RemAssign<&u16> for Saturating<u16>
impl RemAssign<&u16> for Wrapping<u16>
impl RemAssign<&u32> for u32
impl RemAssign<&u32> for Saturating<u32>
impl RemAssign<&u32> for Wrapping<u32>
impl RemAssign<&u64> for u64
impl RemAssign<&u64> for Saturating<u64>
impl RemAssign<&u64> for Wrapping<u64>
impl RemAssign<&u128> for u128
impl RemAssign<&u128> for Saturating<u128>
impl RemAssign<&u128> for Wrapping<u128>
impl RemAssign<&usize> for usize
impl RemAssign<&usize> for Saturating<usize>
impl RemAssign<&usize> for Wrapping<usize>
impl RemAssign<&Saturating<i8>> for Saturating<i8>
impl RemAssign<&Saturating<i16>> for Saturating<i16>
impl RemAssign<&Saturating<i32>> for Saturating<i32>
impl RemAssign<&Saturating<i64>> for Saturating<i64>
impl RemAssign<&Saturating<i128>> for Saturating<i128>
impl RemAssign<&Saturating<isize>> for Saturating<isize>
impl RemAssign<&Saturating<u8>> for Saturating<u8>
impl RemAssign<&Saturating<u16>> for Saturating<u16>
impl RemAssign<&Saturating<u32>> for Saturating<u32>
impl RemAssign<&Saturating<u64>> for Saturating<u64>
impl RemAssign<&Saturating<u128>> for Saturating<u128>
impl RemAssign<&Saturating<usize>> for Saturating<usize>
impl RemAssign<&Wrapping<i8>> for Wrapping<i8>
impl RemAssign<&Wrapping<i16>> for Wrapping<i16>
impl RemAssign<&Wrapping<i32>> for Wrapping<i32>
impl RemAssign<&Wrapping<i64>> for Wrapping<i64>
impl RemAssign<&Wrapping<i128>> for Wrapping<i128>
impl RemAssign<&Wrapping<isize>> for Wrapping<isize>
impl RemAssign<&Wrapping<u8>> for Wrapping<u8>
impl RemAssign<&Wrapping<u16>> for Wrapping<u16>
impl RemAssign<&Wrapping<u32>> for Wrapping<u32>
impl RemAssign<&Wrapping<u64>> for Wrapping<u64>
impl RemAssign<&Wrapping<u128>> for Wrapping<u128>
impl RemAssign<&Wrapping<usize>> for Wrapping<usize>
impl RemAssign<i8> for Saturating<i8>
impl RemAssign<i8> for Wrapping<i8>
impl RemAssign<i16> for Saturating<i16>
impl RemAssign<i16> for Wrapping<i16>
impl RemAssign<i32> for Saturating<i32>
impl RemAssign<i32> for Wrapping<i32>
impl RemAssign<i64> for Saturating<i64>
impl RemAssign<i64> for Wrapping<i64>
impl RemAssign<i128> for Saturating<i128>
impl RemAssign<i128> for Wrapping<i128>
impl RemAssign<isize> for Saturating<isize>
impl RemAssign<isize> for Wrapping<isize>
impl RemAssign<u8> for Saturating<u8>
impl RemAssign<u8> for Wrapping<u8>
impl RemAssign<u16> for Saturating<u16>
impl RemAssign<u16> for Wrapping<u16>
impl RemAssign<u32> for Saturating<u32>
impl RemAssign<u32> for Wrapping<u32>
impl RemAssign<u64> for Saturating<u64>
impl RemAssign<u64> for Wrapping<u64>
impl RemAssign<u128> for Saturating<u128>
impl RemAssign<u128> for Wrapping<u128>
impl RemAssign<usize> for Saturating<usize>
impl RemAssign<usize> for Wrapping<usize>
impl RemAssign<NonZero<u8>> for u8
impl RemAssign<NonZero<u16>> for u16
impl RemAssign<NonZero<u32>> for u32
impl RemAssign<NonZero<u64>> for u64
impl RemAssign<NonZero<u128>> for u128
impl RemAssign<NonZero<usize>> for usize
impl<'a, T> RemAssign<&'a Ratio<T>> for Ratio<T>
impl<'a, T> RemAssign<&'a T> for Ratio<T>
impl<O> RemAssign for F32<O>where
O: ByteOrder,
impl<O> RemAssign for F64<O>where
O: ByteOrder,
impl<O> RemAssign for I16<O>where
O: ByteOrder,
impl<O> RemAssign for I32<O>where
O: ByteOrder,
impl<O> RemAssign for I64<O>where
O: ByteOrder,
impl<O> RemAssign for I128<O>where
O: ByteOrder,
impl<O> RemAssign for Isize<O>where
O: ByteOrder,
impl<O> RemAssign for U16<O>where
O: ByteOrder,
impl<O> RemAssign for U32<O>where
O: ByteOrder,
impl<O> RemAssign for U64<O>where
O: ByteOrder,
impl<O> RemAssign for U128<O>where
O: ByteOrder,
impl<O> RemAssign for Usize<O>where
O: ByteOrder,
impl<O> RemAssign<f32> for F32<O>where
O: ByteOrder,
impl<O> RemAssign<f64> for F64<O>where
O: ByteOrder,
impl<O> RemAssign<i16> for I16<O>where
O: ByteOrder,
impl<O> RemAssign<i32> for I32<O>where
O: ByteOrder,
impl<O> RemAssign<i64> for I64<O>where
O: ByteOrder,
impl<O> RemAssign<i128> for I128<O>where
O: ByteOrder,
impl<O> RemAssign<isize> for Isize<O>where
O: ByteOrder,
impl<O> RemAssign<u16> for U16<O>where
O: ByteOrder,
impl<O> RemAssign<u32> for U32<O>where
O: ByteOrder,
impl<O> RemAssign<u64> for U64<O>where
O: ByteOrder,
impl<O> RemAssign<u128> for U128<O>where
O: ByteOrder,
impl<O> RemAssign<usize> for Usize<O>where
O: ByteOrder,
impl<O> RemAssign<F32<O>> for f32where
O: ByteOrder,
impl<O> RemAssign<F64<O>> for f64where
O: ByteOrder,
impl<O> RemAssign<I16<O>> for i16where
O: ByteOrder,
impl<O> RemAssign<I32<O>> for i32where
O: ByteOrder,
impl<O> RemAssign<I64<O>> for i64where
O: ByteOrder,
impl<O> RemAssign<I128<O>> for i128where
O: ByteOrder,
impl<O> RemAssign<Isize<O>> for isizewhere
O: ByteOrder,
impl<O> RemAssign<U16<O>> for u16where
O: ByteOrder,
impl<O> RemAssign<U32<O>> for u32where
O: ByteOrder,
impl<O> RemAssign<U64<O>> for u64where
O: ByteOrder,
impl<O> RemAssign<U128<O>> for u128where
O: ByteOrder,
impl<O> RemAssign<Usize<O>> for usizewhere
O: ByteOrder,
impl<T> RemAssign for Ratio<T>
impl<T> RemAssign for NotNan<T>
impl<T> RemAssign<T> for Ratio<T>
impl<T> RemAssign<T> for NotNan<T>
Calculates %=
with a float directly.
Panics if the provided value is NaN or the computation results in NaN