Struct substrate_fixed::Wrapping
source · #[repr(transparent)]pub struct Wrapping<F>(pub F);
Expand description
Provides intentionally wrapped arithmetic on fixed-point numbers.
The underlying value can be retrieved through the .0
index.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let max = Wrapping(I16F16::max_value());
let delta = Wrapping(I16F16::from_bits(1));
assert_eq!(I16F16::min_value(), (max + delta).0);
Tuple Fields§
§0: F
Implementations§
source§impl<F: Fixed> Wrapping<F>
impl<F: Fixed> Wrapping<F>
sourcepub fn min_value() -> Wrapping<F>
pub fn min_value() -> Wrapping<F>
Returns the smallest value that can be represented.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping::<I16F16>::min_value(), Wrapping(I16F16::min_value()));
sourcepub fn max_value() -> Wrapping<F>
pub fn max_value() -> Wrapping<F>
Returns the largest value that can be represented.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping::<I16F16>::max_value(), Wrapping(I16F16::max_value()));
sourcepub fn int_nbits() -> u32
pub fn int_nbits() -> u32
Returns the number of integer bits.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping::<I16F16>::int_nbits(), I16F16::int_nbits());
sourcepub fn frac_nbits() -> u32
pub fn frac_nbits() -> u32
Returns the number of fractional bits.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping::<I16F16>::frac_nbits(), I16F16::frac_nbits());
sourcepub fn from_bits(bits: F::Bits) -> Wrapping<F>
pub fn from_bits(bits: F::Bits) -> Wrapping<F>
Creates a fixed-point number that has a bitwise representation identical to the given integer.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping::<I16F16>::from_bits(0x1C), Wrapping(I16F16::from_bits(0x1C)));
sourcepub fn to_bits(self) -> F::Bits
pub fn to_bits(self) -> F::Bits
Creates an integer that has a bitwise representation identical to the given fixed-point number.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let w = Wrapping(I16F16::from_bits(0x1C));
assert_eq!(w.to_bits(), 0x1C);
sourcepub fn from_num<Src: ToFixed>(src: Src) -> Wrapping<F>
pub fn from_num<Src: ToFixed>(src: Src) -> Wrapping<F>
Wrapping conversion from another number.
The other number can be:
- A fixed-point number. Any extra fractional bits are truncated.
- An integer of type
i8
,i16
,i32
,i64
,i128
,isize
,u8
,u16
,u32
,u64
,u128
, orusize
. - A floating-point number of type
f32
orf64
. If thef16
feature is enabled, it can also be of typef16
orbf16
. For this conversion, the method rounds to the nearest, with ties rounding to even. - Any other number
src
for whichToFixed
is implemented, in which case this method returnsWrapping(src.wrapping_to_fixed())
.
Panics
For floating-point numbers, panics if the value is not finite.
Examples
use substrate_fixed::{
types::{I4F4, I16F16},
Wrapping,
};
// 0x1234.5678 wraps into 0x4.5
let src = I16F16::from_bits(0x1234_5678);
let dst = Wrapping::<I4F4>::from_num(src);
assert_eq!(dst, Wrapping(I4F4::from_bits(0x45)));
// 0x1234 wraps into 0x4.0
let src_int = 0x1234_i32;
let dst_int = Wrapping::<I4F4>::from_num(src_int);
assert_eq!(dst_int, Wrapping(I4F4::from_bits(0x40)));
// 129.75 wrapped into 1.75 (binary 1.1100)
let src_float = 129.75;
let dst_float = Wrapping::<I4F4>::from_num(src_float);
assert_eq!(dst_float, Wrapping(I4F4::from_bits(0b11100)));
sourcepub fn to_num<Dst: FromFixed>(self) -> Dst
pub fn to_num<Dst: FromFixed>(self) -> Dst
Converts a fixed-point number to another number, wrapping the value on overflow.
The other number can be:
- Another fixed-point number. Any extra fractional bits are truncated.
- An integer of type
i8
,i16
,i32
,i64
,i128
,isize
,u8
,u16
,u32
,u64
,u128
, orusize
. Any fractional bits are truncated. - A floating-point number of type
f32
orf64
. If thef16
feature is enabled, it can also be of typef16
orbf16
. For this conversion, the method rounds to the nearest, with ties rounding to even. - Any other type
Dst
for whichFromFixed
is implemented, in which case this method returnsDst::wrapping_from_fixed(self.0)
.
Examples
use substrate_fixed::{
types::{I16F16, I2F6, I4F4},
Wrapping,
};
// conversion that fits
let src = Wrapping(I4F4::from_num(1.75));
let expected = I16F16::from_num(1.75);
assert_eq!(src.to_num::<I16F16>(), expected);
// conversion that wraps
let src = Wrapping(I4F4::max_value());
let wrapped = I2F6::from_bits(I2F6::max_value().to_bits() << 2);
assert_eq!(src.to_num::<I2F6>(), wrapped);
sourcepub fn from_str_binary(src: &str) -> Result<Wrapping<F>, ParseFixedError>
pub fn from_str_binary(src: &str) -> Result<Wrapping<F>, ParseFixedError>
Parses a string slice containing binary digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
Examples
use substrate_fixed::{types::I8F8, Wrapping};
let check = Wrapping(I8F8::from_bits(0b1110001 << (8 - 1)));
assert_eq!(Wrapping::<I8F8>::from_str_binary("101100111000.1"), Ok(check));
sourcepub fn from_str_octal(src: &str) -> Result<Wrapping<F>, ParseFixedError>
pub fn from_str_octal(src: &str) -> Result<Wrapping<F>, ParseFixedError>
Parses a string slice containing octal digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
Examples
use substrate_fixed::{types::I8F8, Wrapping};
let check = Wrapping(I8F8::from_bits(0o1654 << (8 - 3)));
assert_eq!(Wrapping::<I8F8>::from_str_octal("7165.4"), Ok(check));
sourcepub fn from_str_hex(src: &str) -> Result<Wrapping<F>, ParseFixedError>
pub fn from_str_hex(src: &str) -> Result<Wrapping<F>, ParseFixedError>
Parses a string slice containing hexadecimal digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
Examples
use substrate_fixed::{types::I8F8, Wrapping};
let check = Wrapping(I8F8::from_bits(0xFFE));
assert_eq!(Wrapping::<I8F8>::from_str_hex("C0F.FE"), Ok(check));
sourcepub fn int(self) -> Wrapping<F>
pub fn int(self) -> Wrapping<F>
Returns the integer part.
Note that since the numbers are stored in two’s complement,
negative numbers with non-zero fractional parts will be
rounded towards −∞, except in the case where there are no
integer bits, for example for the type
Wrapping<I0F16>
,
where the return value is always zero.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping(I16F16::from_num(12.25)).int(), Wrapping(I16F16::from_num(12)));
assert_eq!(Wrapping(I16F16::from_num(-12.25)).int(), Wrapping(I16F16::from_num(-13)));
sourcepub fn frac(self) -> Wrapping<F>
pub fn frac(self) -> Wrapping<F>
Returns the fractional part.
Note that since the numbers are stored in two’s complement,
the returned fraction will be non-negative for negative
numbers, except in the case where there are no integer bits,
for example for the type
Wrapping<I0F16>
,
where the return value is always equal to self
.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping(I16F16::from_num(12.25)).frac(), Wrapping(I16F16::from_num(0.25)));
assert_eq!(Wrapping(I16F16::from_num(-12.25)).frac(), Wrapping(I16F16::from_num(0.75)));
sourcepub fn round_to_zero(self) -> Wrapping<F>
pub fn round_to_zero(self) -> Wrapping<F>
Rounds to the next integer towards 0.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let three = Wrapping(I16F16::from_num(3));
assert_eq!(Wrapping(I16F16::from_num(3.9)).round_to_zero(), three);
assert_eq!(Wrapping(I16F16::from_num(-3.9)).round_to_zero(), -three);
sourcepub fn ceil(self) -> Wrapping<F>
pub fn ceil(self) -> Wrapping<F>
Wrapping ceil. Rounds to the next integer towards +∞, wrapping on overflow.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let two_half = Wrapping(I16F16::from_num(5) / 2);
assert_eq!(two_half.ceil(), Wrapping(I16F16::from_num(3)));
assert_eq!(Wrapping(I16F16::max_value()).ceil(), Wrapping(I16F16::min_value()));
sourcepub fn floor(self) -> Wrapping<F>
pub fn floor(self) -> Wrapping<F>
Wrapping floor. Rounds to the next integer towards −∞, wrapping on overflow.
Overflow can only occur for signed numbers with zero integer bits.
Examples
use substrate_fixed::{
types::{I0F32, I16F16},
Wrapping,
};
let two_half = Wrapping(I16F16::from_num(5) / 2);
assert_eq!(two_half.floor(), Wrapping(I16F16::from_num(2)));
assert_eq!(Wrapping(I0F32::min_value()).floor(), Wrapping(I0F32::from_num(0)));
sourcepub fn round(self) -> Wrapping<F>
pub fn round(self) -> Wrapping<F>
Wrapping round. Rounds to the next integer to the nearest, with ties rounded away from zero, and wrapping on overflow.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let two_half = Wrapping(I16F16::from_num(5) / 2);
assert_eq!(two_half.round(), Wrapping(I16F16::from_num(3)));
assert_eq!((-two_half).round(), Wrapping(I16F16::from_num(-3)));
assert_eq!(Wrapping(I16F16::max_value()).round(), Wrapping(I16F16::min_value()));
sourcepub fn round_ties_to_even(self) -> Wrapping<F>
pub fn round_ties_to_even(self) -> Wrapping<F>
Wrapping round. Rounds to the next integer to the nearest, with ties rounded to even, and wrapping on overflow.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let two_half = Wrapping(I16F16::from_num(2.5));
assert_eq!(two_half.round_ties_to_even(), Wrapping(I16F16::from_num(2)));
let three_half = Wrapping(I16F16::from_num(3.5));
assert_eq!(three_half.round_ties_to_even(), Wrapping(I16F16::from_num(4)));
let max = Wrapping(I16F16::max_value());
assert_eq!(max.round_ties_to_even(), Wrapping(I16F16::min_value()));
sourcepub fn count_ones(self) -> u32
pub fn count_ones(self) -> u32
Returns the number of ones in the binary representation.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let w = Wrapping(I16F16::from_bits(0x00FF_FF00));
assert_eq!(w.count_ones(), w.0.count_ones());
sourcepub fn count_zeros(self) -> u32
pub fn count_zeros(self) -> u32
Returns the number of zeros in the binary representation.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let w = Wrapping(I16F16::from_bits(0x00FF_FF00));
assert_eq!(w.count_zeros(), w.0.count_zeros());
sourcepub fn leading_zeros(self) -> u32
pub fn leading_zeros(self) -> u32
Returns the number of leading zeros in the binary representation.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let w = Wrapping(I16F16::from_bits(0x00FF_FF00));
assert_eq!(w.leading_zeros(), w.0.leading_zeros());
sourcepub fn trailing_zeros(self) -> u32
pub fn trailing_zeros(self) -> u32
Returns the number of trailing zeros in the binary representation.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let w = Wrapping(I16F16::from_bits(0x00FF_FF00));
assert_eq!(w.trailing_zeros(), w.0.trailing_zeros());
sourcepub fn rotate_left(self, n: u32) -> Wrapping<F>
pub fn rotate_left(self, n: u32) -> Wrapping<F>
Shifts to the left by n
bits, wrapping the truncated bits to the right end.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let i = I16F16::from_bits(0x00FF_FF00);
assert_eq!(Wrapping(i).rotate_left(12), Wrapping(i.rotate_left(12)));
sourcepub fn rotate_right(self, n: u32) -> Wrapping<F>
pub fn rotate_right(self, n: u32) -> Wrapping<F>
Shifts to the right by n
bits, wrapping the truncated bits to the left end.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let i = I16F16::from_bits(0x00FF_FF00);
assert_eq!(Wrapping(i).rotate_right(12), Wrapping(i.rotate_right(12)));
sourcepub fn div_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
pub fn div_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
Euclidean division.
Panics
Panics if the divisor is zero.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let num = Wrapping(I16F16::from_num(7.5));
let den = Wrapping(I16F16::from_num(2));
assert_eq!(num.div_euclid(den), Wrapping(I16F16::from_num(3)));
let quarter = Wrapping(I16F16::from_num(0.25));
let check = (Wrapping::max_value() * 4i32).round_to_zero();
assert_eq!(Wrapping::max_value().div_euclid(quarter), check);
sourcepub fn rem_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
pub fn rem_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
Remainder for Euclidean division.
Panics
Panics if the divisor is zero.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let num = Wrapping(I16F16::from_num(7.5));
let den = Wrapping(I16F16::from_num(2));
assert_eq!(num.rem_euclid(den), Wrapping(I16F16::from_num(1.5)));
assert_eq!((-num).rem_euclid(den), Wrapping(I16F16::from_num(0.5)));
sourcepub fn div_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
pub fn div_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
Euclidean division by an integer.
Panics
Panics if the divisor is zero.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let num = Wrapping(I16F16::from_num(7.5));
assert_eq!(num.div_euclid_int(2), Wrapping(I16F16::from_num(3)));
let min = Wrapping(I16F16::min_value());
assert_eq!(min.div_euclid_int(-1), min);
sourcepub fn rem_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
pub fn rem_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
Remainder for Euclidean division.
Panics
Panics if the divisor is zero.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
let num = Wrapping(I16F16::from_num(7.5));
assert_eq!(num.rem_euclid_int(2), Wrapping(I16F16::from_num(1.5)));
assert_eq!((-num).rem_euclid_int(2), Wrapping(I16F16::from_num(0.5)));
source§impl<F: FixedSigned> Wrapping<F>
impl<F: FixedSigned> Wrapping<F>
sourcepub fn is_positive(self) -> bool
pub fn is_positive(self) -> bool
sourcepub fn is_negative(self) -> bool
pub fn is_negative(self) -> bool
sourcepub fn abs(self) -> Wrapping<F>
pub fn abs(self) -> Wrapping<F>
Wrapping absolute value. Returns the absolute value, wrapping on overflow.
Overflow can only occur when trying to find the absolute value of the minimum value.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping(I16F16::from_num(-5)).abs(), Wrapping(I16F16::from_num(5)));
assert_eq!(Wrapping(I16F16::min_value()).abs(), Wrapping(I16F16::min_value()));
sourcepub fn signum(self) -> Wrapping<F>
pub fn signum(self) -> Wrapping<F>
Returns a number representing the sign of self
.
Warning
Using this method when 1 and −1 cannot be represented is almost certainly a bug, however, this is allowed and gives the following wrapped results.
- When there are no integer bits, for example for the type
Wrapping<I0F16>
, the return value is always zero. - When there is one integer bit, for example for the type
Wrapping<I1F15>
, the return value is zero whenself
is zero, and −1 otherwise. This means that for a positive number, −1 is returned, because +1 does not fit and is wrapped to −1.
Examples
use substrate_fixed::{types::I16F16, Wrapping};
assert_eq!(Wrapping(<I16F16>::from_num(-3.9)).signum(), Wrapping(I16F16::from_num(-1)));
assert_eq!(Wrapping(<I16F16>::from_num(0)).signum(), Wrapping(I16F16::from_num(0)));
assert_eq!(Wrapping(<I16F16>::from_num(3.9)).signum(), Wrapping(I16F16::from_num(1)));
source§impl<F: FixedUnsigned> Wrapping<F>
impl<F: FixedUnsigned> Wrapping<F>
sourcepub fn is_power_of_two(self) -> bool
pub fn is_power_of_two(self) -> bool
sourcepub fn next_power_of_two(self) -> Wrapping<F>
pub fn next_power_of_two(self) -> Wrapping<F>
Returns the smallest power of two that is ≥ self
.
If the next power of two is too large to fit, it is wrapped to zero.
Examples
use substrate_fixed::{types::U16F16, Wrapping};
let half = Wrapping(U16F16::from_num(0.5));
assert_eq!(Wrapping(U16F16::from_num(0.3)).next_power_of_two(), half);
let four = Wrapping(U16F16::from_num(4));
assert_eq!(Wrapping(U16F16::from_num(4)).next_power_of_two(), four);
let zero = Wrapping(U16F16::from_num(0));
assert_eq!(Wrapping(U16F16::max_value()).next_power_of_two(), zero);
Trait Implementations§
source§impl<'a, F: Fixed> AddAssign<&'a Wrapping<F>> for Wrapping<F>
impl<'a, F: Fixed> AddAssign<&'a Wrapping<F>> for Wrapping<F>
source§fn add_assign(&mut self, other: &Wrapping<F>)
fn add_assign(&mut self, other: &Wrapping<F>)
+=
operation. Read moresource§impl<F: Fixed> AddAssign for Wrapping<F>
impl<F: Fixed> AddAssign for Wrapping<F>
source§fn add_assign(&mut self, other: Wrapping<F>)
fn add_assign(&mut self, other: Wrapping<F>)
+=
operation. Read moresource§impl<'a, 'b, F> BitAnd<&'a Wrapping<F>> for &'b Wrapping<F>where
&'b F: BitAnd<&'a F, Output = F>,
impl<'a, 'b, F> BitAnd<&'a Wrapping<F>> for &'b Wrapping<F>where &'b F: BitAnd<&'a F, Output = F>,
source§impl<'a, F> BitAndAssign<&'a Wrapping<F>> for Wrapping<F>where
F: BitAndAssign<&'a F>,
impl<'a, F> BitAndAssign<&'a Wrapping<F>> for Wrapping<F>where F: BitAndAssign<&'a F>,
source§fn bitand_assign(&mut self, other: &'a Wrapping<F>)
fn bitand_assign(&mut self, other: &'a Wrapping<F>)
&=
operation. Read moresource§impl<F> BitAndAssign for Wrapping<F>where
F: BitAndAssign<F>,
impl<F> BitAndAssign for Wrapping<F>where F: BitAndAssign<F>,
source§fn bitand_assign(&mut self, other: Wrapping<F>)
fn bitand_assign(&mut self, other: Wrapping<F>)
&=
operation. Read moresource§impl<'a, 'b, F> BitOr<&'a Wrapping<F>> for &'b Wrapping<F>where
&'b F: BitOr<&'a F, Output = F>,
impl<'a, 'b, F> BitOr<&'a Wrapping<F>> for &'b Wrapping<F>where &'b F: BitOr<&'a F, Output = F>,
source§impl<'a, F> BitOrAssign<&'a Wrapping<F>> for Wrapping<F>where
F: BitOrAssign<&'a F>,
impl<'a, F> BitOrAssign<&'a Wrapping<F>> for Wrapping<F>where F: BitOrAssign<&'a F>,
source§fn bitor_assign(&mut self, other: &'a Wrapping<F>)
fn bitor_assign(&mut self, other: &'a Wrapping<F>)
|=
operation. Read moresource§impl<F> BitOrAssign for Wrapping<F>where
F: BitOrAssign<F>,
impl<F> BitOrAssign for Wrapping<F>where F: BitOrAssign<F>,
source§fn bitor_assign(&mut self, other: Wrapping<F>)
fn bitor_assign(&mut self, other: Wrapping<F>)
|=
operation. Read moresource§impl<'a, 'b, F> BitXor<&'a Wrapping<F>> for &'b Wrapping<F>where
&'b F: BitXor<&'a F, Output = F>,
impl<'a, 'b, F> BitXor<&'a Wrapping<F>> for &'b Wrapping<F>where &'b F: BitXor<&'a F, Output = F>,
source§impl<'a, F> BitXorAssign<&'a Wrapping<F>> for Wrapping<F>where
F: BitXorAssign<&'a F>,
impl<'a, F> BitXorAssign<&'a Wrapping<F>> for Wrapping<F>where F: BitXorAssign<&'a F>,
source§fn bitxor_assign(&mut self, other: &'a Wrapping<F>)
fn bitxor_assign(&mut self, other: &'a Wrapping<F>)
^=
operation. Read moresource§impl<F> BitXorAssign for Wrapping<F>where
F: BitXorAssign<F>,
impl<F> BitXorAssign for Wrapping<F>where F: BitXorAssign<F>,
source§fn bitxor_assign(&mut self, other: Wrapping<F>)
fn bitxor_assign(&mut self, other: Wrapping<F>)
^=
operation. Read moresource§impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedI128<Frac>>
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedI128<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedI16<Frac>>
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedI16<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedI32<Frac>>
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedI32<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedI64<Frac>>
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedI64<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedI8<Frac>>
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedI8<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedU128<Frac>>
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedU128<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedU16<Frac>>
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedU16<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedU32<Frac>>
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedU32<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedU64<Frac>>
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedU64<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedU8<Frac>>
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedU8<Frac>>
source§fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
source§impl<'a, F: Fixed> DivAssign<&'a Wrapping<F>> for Wrapping<F>
impl<'a, F: Fixed> DivAssign<&'a Wrapping<F>> for Wrapping<F>
source§fn div_assign(&mut self, other: &Wrapping<F>)
fn div_assign(&mut self, other: &Wrapping<F>)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a i128> for Wrapping<FixedI128<Frac>>
impl<'a, Frac> DivAssign<&'a i128> for Wrapping<FixedI128<Frac>>
source§fn div_assign(&mut self, other: &i128)
fn div_assign(&mut self, other: &i128)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a i16> for Wrapping<FixedI16<Frac>>
impl<'a, Frac> DivAssign<&'a i16> for Wrapping<FixedI16<Frac>>
source§fn div_assign(&mut self, other: &i16)
fn div_assign(&mut self, other: &i16)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a i32> for Wrapping<FixedI32<Frac>>
impl<'a, Frac> DivAssign<&'a i32> for Wrapping<FixedI32<Frac>>
source§fn div_assign(&mut self, other: &i32)
fn div_assign(&mut self, other: &i32)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a i64> for Wrapping<FixedI64<Frac>>
impl<'a, Frac> DivAssign<&'a i64> for Wrapping<FixedI64<Frac>>
source§fn div_assign(&mut self, other: &i64)
fn div_assign(&mut self, other: &i64)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a i8> for Wrapping<FixedI8<Frac>>
impl<'a, Frac> DivAssign<&'a i8> for Wrapping<FixedI8<Frac>>
source§fn div_assign(&mut self, other: &i8)
fn div_assign(&mut self, other: &i8)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a u128> for Wrapping<FixedU128<Frac>>
impl<'a, Frac> DivAssign<&'a u128> for Wrapping<FixedU128<Frac>>
source§fn div_assign(&mut self, other: &u128)
fn div_assign(&mut self, other: &u128)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a u16> for Wrapping<FixedU16<Frac>>
impl<'a, Frac> DivAssign<&'a u16> for Wrapping<FixedU16<Frac>>
source§fn div_assign(&mut self, other: &u16)
fn div_assign(&mut self, other: &u16)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a u32> for Wrapping<FixedU32<Frac>>
impl<'a, Frac> DivAssign<&'a u32> for Wrapping<FixedU32<Frac>>
source§fn div_assign(&mut self, other: &u32)
fn div_assign(&mut self, other: &u32)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a u64> for Wrapping<FixedU64<Frac>>
impl<'a, Frac> DivAssign<&'a u64> for Wrapping<FixedU64<Frac>>
source§fn div_assign(&mut self, other: &u64)
fn div_assign(&mut self, other: &u64)
/=
operation. Read moresource§impl<'a, Frac> DivAssign<&'a u8> for Wrapping<FixedU8<Frac>>
impl<'a, Frac> DivAssign<&'a u8> for Wrapping<FixedU8<Frac>>
source§fn div_assign(&mut self, other: &u8)
fn div_assign(&mut self, other: &u8)
/=
operation. Read moresource§impl<Frac> DivAssign<i128> for Wrapping<FixedI128<Frac>>
impl<Frac> DivAssign<i128> for Wrapping<FixedI128<Frac>>
source§fn div_assign(&mut self, other: i128)
fn div_assign(&mut self, other: i128)
/=
operation. Read moresource§impl<Frac> DivAssign<i16> for Wrapping<FixedI16<Frac>>
impl<Frac> DivAssign<i16> for Wrapping<FixedI16<Frac>>
source§fn div_assign(&mut self, other: i16)
fn div_assign(&mut self, other: i16)
/=
operation. Read moresource§impl<Frac> DivAssign<i32> for Wrapping<FixedI32<Frac>>
impl<Frac> DivAssign<i32> for Wrapping<FixedI32<Frac>>
source§fn div_assign(&mut self, other: i32)
fn div_assign(&mut self, other: i32)
/=
operation. Read moresource§impl<Frac> DivAssign<i64> for Wrapping<FixedI64<Frac>>
impl<Frac> DivAssign<i64> for Wrapping<FixedI64<Frac>>
source§fn div_assign(&mut self, other: i64)
fn div_assign(&mut self, other: i64)
/=
operation. Read moresource§impl<Frac> DivAssign<i8> for Wrapping<FixedI8<Frac>>
impl<Frac> DivAssign<i8> for Wrapping<FixedI8<Frac>>
source§fn div_assign(&mut self, other: i8)
fn div_assign(&mut self, other: i8)
/=
operation. Read moresource§impl<Frac> DivAssign<u128> for Wrapping<FixedU128<Frac>>
impl<Frac> DivAssign<u128> for Wrapping<FixedU128<Frac>>
source§fn div_assign(&mut self, other: u128)
fn div_assign(&mut self, other: u128)
/=
operation. Read moresource§impl<Frac> DivAssign<u16> for Wrapping<FixedU16<Frac>>
impl<Frac> DivAssign<u16> for Wrapping<FixedU16<Frac>>
source§fn div_assign(&mut self, other: u16)
fn div_assign(&mut self, other: u16)
/=
operation. Read moresource§impl<Frac> DivAssign<u32> for Wrapping<FixedU32<Frac>>
impl<Frac> DivAssign<u32> for Wrapping<FixedU32<Frac>>
source§fn div_assign(&mut self, other: u32)
fn div_assign(&mut self, other: u32)
/=
operation. Read moresource§impl<Frac> DivAssign<u64> for Wrapping<FixedU64<Frac>>
impl<Frac> DivAssign<u64> for Wrapping<FixedU64<Frac>>
source§fn div_assign(&mut self, other: u64)
fn div_assign(&mut self, other: u64)
/=
operation. Read moresource§impl<Frac> DivAssign<u8> for Wrapping<FixedU8<Frac>>
impl<Frac> DivAssign<u8> for Wrapping<FixedU8<Frac>>
source§fn div_assign(&mut self, other: u8)
fn div_assign(&mut self, other: u8)
/=
operation. Read moresource§impl<F: Fixed> DivAssign for Wrapping<F>
impl<F: Fixed> DivAssign for Wrapping<F>
source§fn div_assign(&mut self, other: Wrapping<F>)
fn div_assign(&mut self, other: Wrapping<F>)
/=
operation. Read moresource§impl<'a, F: Fixed> MulAssign<&'a Wrapping<F>> for Wrapping<F>
impl<'a, F: Fixed> MulAssign<&'a Wrapping<F>> for Wrapping<F>
source§fn mul_assign(&mut self, other: &Wrapping<F>)
fn mul_assign(&mut self, other: &Wrapping<F>)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a i128> for Wrapping<FixedI128<Frac>>
impl<'a, Frac> MulAssign<&'a i128> for Wrapping<FixedI128<Frac>>
source§fn mul_assign(&mut self, other: &i128)
fn mul_assign(&mut self, other: &i128)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a i16> for Wrapping<FixedI16<Frac>>
impl<'a, Frac> MulAssign<&'a i16> for Wrapping<FixedI16<Frac>>
source§fn mul_assign(&mut self, other: &i16)
fn mul_assign(&mut self, other: &i16)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a i32> for Wrapping<FixedI32<Frac>>
impl<'a, Frac> MulAssign<&'a i32> for Wrapping<FixedI32<Frac>>
source§fn mul_assign(&mut self, other: &i32)
fn mul_assign(&mut self, other: &i32)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a i64> for Wrapping<FixedI64<Frac>>
impl<'a, Frac> MulAssign<&'a i64> for Wrapping<FixedI64<Frac>>
source§fn mul_assign(&mut self, other: &i64)
fn mul_assign(&mut self, other: &i64)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a i8> for Wrapping<FixedI8<Frac>>
impl<'a, Frac> MulAssign<&'a i8> for Wrapping<FixedI8<Frac>>
source§fn mul_assign(&mut self, other: &i8)
fn mul_assign(&mut self, other: &i8)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a u128> for Wrapping<FixedU128<Frac>>
impl<'a, Frac> MulAssign<&'a u128> for Wrapping<FixedU128<Frac>>
source§fn mul_assign(&mut self, other: &u128)
fn mul_assign(&mut self, other: &u128)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a u16> for Wrapping<FixedU16<Frac>>
impl<'a, Frac> MulAssign<&'a u16> for Wrapping<FixedU16<Frac>>
source§fn mul_assign(&mut self, other: &u16)
fn mul_assign(&mut self, other: &u16)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a u32> for Wrapping<FixedU32<Frac>>
impl<'a, Frac> MulAssign<&'a u32> for Wrapping<FixedU32<Frac>>
source§fn mul_assign(&mut self, other: &u32)
fn mul_assign(&mut self, other: &u32)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a u64> for Wrapping<FixedU64<Frac>>
impl<'a, Frac> MulAssign<&'a u64> for Wrapping<FixedU64<Frac>>
source§fn mul_assign(&mut self, other: &u64)
fn mul_assign(&mut self, other: &u64)
*=
operation. Read moresource§impl<'a, Frac> MulAssign<&'a u8> for Wrapping<FixedU8<Frac>>
impl<'a, Frac> MulAssign<&'a u8> for Wrapping<FixedU8<Frac>>
source§fn mul_assign(&mut self, other: &u8)
fn mul_assign(&mut self, other: &u8)
*=
operation. Read moresource§impl<Frac> MulAssign<i128> for Wrapping<FixedI128<Frac>>
impl<Frac> MulAssign<i128> for Wrapping<FixedI128<Frac>>
source§fn mul_assign(&mut self, other: i128)
fn mul_assign(&mut self, other: i128)
*=
operation. Read moresource§impl<Frac> MulAssign<i16> for Wrapping<FixedI16<Frac>>
impl<Frac> MulAssign<i16> for Wrapping<FixedI16<Frac>>
source§fn mul_assign(&mut self, other: i16)
fn mul_assign(&mut self, other: i16)
*=
operation. Read moresource§impl<Frac> MulAssign<i32> for Wrapping<FixedI32<Frac>>
impl<Frac> MulAssign<i32> for Wrapping<FixedI32<Frac>>
source§fn mul_assign(&mut self, other: i32)
fn mul_assign(&mut self, other: i32)
*=
operation. Read moresource§impl<Frac> MulAssign<i64> for Wrapping<FixedI64<Frac>>
impl<Frac> MulAssign<i64> for Wrapping<FixedI64<Frac>>
source§fn mul_assign(&mut self, other: i64)
fn mul_assign(&mut self, other: i64)
*=
operation. Read moresource§impl<Frac> MulAssign<i8> for Wrapping<FixedI8<Frac>>
impl<Frac> MulAssign<i8> for Wrapping<FixedI8<Frac>>
source§fn mul_assign(&mut self, other: i8)
fn mul_assign(&mut self, other: i8)
*=
operation. Read moresource§impl<Frac> MulAssign<u128> for Wrapping<FixedU128<Frac>>
impl<Frac> MulAssign<u128> for Wrapping<FixedU128<Frac>>
source§fn mul_assign(&mut self, other: u128)
fn mul_assign(&mut self, other: u128)
*=
operation. Read moresource§impl<Frac> MulAssign<u16> for Wrapping<FixedU16<Frac>>
impl<Frac> MulAssign<u16> for Wrapping<FixedU16<Frac>>
source§fn mul_assign(&mut self, other: u16)
fn mul_assign(&mut self, other: u16)
*=
operation. Read moresource§impl<Frac> MulAssign<u32> for Wrapping<FixedU32<Frac>>
impl<Frac> MulAssign<u32> for Wrapping<FixedU32<Frac>>
source§fn mul_assign(&mut self, other: u32)
fn mul_assign(&mut self, other: u32)
*=
operation. Read moresource§impl<Frac> MulAssign<u64> for Wrapping<FixedU64<Frac>>
impl<Frac> MulAssign<u64> for Wrapping<FixedU64<Frac>>
source§fn mul_assign(&mut self, other: u64)
fn mul_assign(&mut self, other: u64)
*=
operation. Read moresource§impl<Frac> MulAssign<u8> for Wrapping<FixedU8<Frac>>
impl<Frac> MulAssign<u8> for Wrapping<FixedU8<Frac>>
source§fn mul_assign(&mut self, other: u8)
fn mul_assign(&mut self, other: u8)
*=
operation. Read moresource§impl<F: Fixed> MulAssign for Wrapping<F>
impl<F: Fixed> MulAssign for Wrapping<F>
source§fn mul_assign(&mut self, other: Wrapping<F>)
fn mul_assign(&mut self, other: Wrapping<F>)
*=
operation. Read moresource§impl<F: Ord> Ord for Wrapping<F>
impl<F: Ord> Ord for Wrapping<F>
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl<F: PartialEq> PartialEq for Wrapping<F>
impl<F: PartialEq> PartialEq for Wrapping<F>
source§impl<F: PartialOrd> PartialOrd for Wrapping<F>
impl<F: PartialOrd> PartialOrd for Wrapping<F>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl<'a, F: Fixed> RemAssign<&'a Wrapping<F>> for Wrapping<F>
impl<'a, F: Fixed> RemAssign<&'a Wrapping<F>> for Wrapping<F>
source§fn rem_assign(&mut self, other: &Wrapping<F>)
fn rem_assign(&mut self, other: &Wrapping<F>)
%=
operation. Read moresource§impl<'a, Frac: LeEqU128> RemAssign<&'a i128> for Wrapping<FixedI128<Frac>>
impl<'a, Frac: LeEqU128> RemAssign<&'a i128> for Wrapping<FixedI128<Frac>>
source§fn rem_assign(&mut self, other: &i128)
fn rem_assign(&mut self, other: &i128)
%=
operation. Read moresource§impl<'a, Frac: LeEqU16> RemAssign<&'a i16> for Wrapping<FixedI16<Frac>>
impl<'a, Frac: LeEqU16> RemAssign<&'a i16> for Wrapping<FixedI16<Frac>>
source§fn rem_assign(&mut self, other: &i16)
fn rem_assign(&mut self, other: &i16)
%=
operation. Read moresource§impl<'a, Frac: LeEqU32> RemAssign<&'a i32> for Wrapping<FixedI32<Frac>>
impl<'a, Frac: LeEqU32> RemAssign<&'a i32> for Wrapping<FixedI32<Frac>>
source§fn rem_assign(&mut self, other: &i32)
fn rem_assign(&mut self, other: &i32)
%=
operation. Read moresource§impl<'a, Frac: LeEqU64> RemAssign<&'a i64> for Wrapping<FixedI64<Frac>>
impl<'a, Frac: LeEqU64> RemAssign<&'a i64> for Wrapping<FixedI64<Frac>>
source§fn rem_assign(&mut self, other: &i64)
fn rem_assign(&mut self, other: &i64)
%=
operation. Read moresource§impl<'a, Frac: LeEqU8> RemAssign<&'a i8> for Wrapping<FixedI8<Frac>>
impl<'a, Frac: LeEqU8> RemAssign<&'a i8> for Wrapping<FixedI8<Frac>>
source§fn rem_assign(&mut self, other: &i8)
fn rem_assign(&mut self, other: &i8)
%=
operation. Read moresource§impl<'a, Frac: LeEqU128> RemAssign<&'a u128> for Wrapping<FixedU128<Frac>>
impl<'a, Frac: LeEqU128> RemAssign<&'a u128> for Wrapping<FixedU128<Frac>>
source§fn rem_assign(&mut self, other: &u128)
fn rem_assign(&mut self, other: &u128)
%=
operation. Read moresource§impl<'a, Frac: LeEqU16> RemAssign<&'a u16> for Wrapping<FixedU16<Frac>>
impl<'a, Frac: LeEqU16> RemAssign<&'a u16> for Wrapping<FixedU16<Frac>>
source§fn rem_assign(&mut self, other: &u16)
fn rem_assign(&mut self, other: &u16)
%=
operation. Read moresource§impl<'a, Frac: LeEqU32> RemAssign<&'a u32> for Wrapping<FixedU32<Frac>>
impl<'a, Frac: LeEqU32> RemAssign<&'a u32> for Wrapping<FixedU32<Frac>>
source§fn rem_assign(&mut self, other: &u32)
fn rem_assign(&mut self, other: &u32)
%=
operation. Read moresource§impl<'a, Frac: LeEqU64> RemAssign<&'a u64> for Wrapping<FixedU64<Frac>>
impl<'a, Frac: LeEqU64> RemAssign<&'a u64> for Wrapping<FixedU64<Frac>>
source§fn rem_assign(&mut self, other: &u64)
fn rem_assign(&mut self, other: &u64)
%=
operation. Read moresource§impl<'a, Frac: LeEqU8> RemAssign<&'a u8> for Wrapping<FixedU8<Frac>>
impl<'a, Frac: LeEqU8> RemAssign<&'a u8> for Wrapping<FixedU8<Frac>>
source§fn rem_assign(&mut self, other: &u8)
fn rem_assign(&mut self, other: &u8)
%=
operation. Read moresource§impl<Frac: LeEqU128> RemAssign<i128> for Wrapping<FixedI128<Frac>>
impl<Frac: LeEqU128> RemAssign<i128> for Wrapping<FixedI128<Frac>>
source§fn rem_assign(&mut self, other: i128)
fn rem_assign(&mut self, other: i128)
%=
operation. Read moresource§impl<Frac: LeEqU16> RemAssign<i16> for Wrapping<FixedI16<Frac>>
impl<Frac: LeEqU16> RemAssign<i16> for Wrapping<FixedI16<Frac>>
source§fn rem_assign(&mut self, other: i16)
fn rem_assign(&mut self, other: i16)
%=
operation. Read moresource§impl<Frac: LeEqU32> RemAssign<i32> for Wrapping<FixedI32<Frac>>
impl<Frac: LeEqU32> RemAssign<i32> for Wrapping<FixedI32<Frac>>
source§fn rem_assign(&mut self, other: i32)
fn rem_assign(&mut self, other: i32)
%=
operation. Read moresource§impl<Frac: LeEqU64> RemAssign<i64> for Wrapping<FixedI64<Frac>>
impl<Frac: LeEqU64> RemAssign<i64> for Wrapping<FixedI64<Frac>>
source§fn rem_assign(&mut self, other: i64)
fn rem_assign(&mut self, other: i64)
%=
operation. Read moresource§impl<Frac: LeEqU8> RemAssign<i8> for Wrapping<FixedI8<Frac>>
impl<Frac: LeEqU8> RemAssign<i8> for Wrapping<FixedI8<Frac>>
source§fn rem_assign(&mut self, other: i8)
fn rem_assign(&mut self, other: i8)
%=
operation. Read moresource§impl<Frac: LeEqU128> RemAssign<u128> for Wrapping<FixedU128<Frac>>
impl<Frac: LeEqU128> RemAssign<u128> for Wrapping<FixedU128<Frac>>
source§fn rem_assign(&mut self, other: u128)
fn rem_assign(&mut self, other: u128)
%=
operation. Read moresource§impl<Frac: LeEqU16> RemAssign<u16> for Wrapping<FixedU16<Frac>>
impl<Frac: LeEqU16> RemAssign<u16> for Wrapping<FixedU16<Frac>>
source§fn rem_assign(&mut self, other: u16)
fn rem_assign(&mut self, other: u16)
%=
operation. Read moresource§impl<Frac: LeEqU32> RemAssign<u32> for Wrapping<FixedU32<Frac>>
impl<Frac: LeEqU32> RemAssign<u32> for Wrapping<FixedU32<Frac>>
source§fn rem_assign(&mut self, other: u32)
fn rem_assign(&mut self, other: u32)
%=
operation. Read moresource§impl<Frac: LeEqU64> RemAssign<u64> for Wrapping<FixedU64<Frac>>
impl<Frac: LeEqU64> RemAssign<u64> for Wrapping<FixedU64<Frac>>
source§fn rem_assign(&mut self, other: u64)
fn rem_assign(&mut self, other: u64)
%=
operation. Read moresource§impl<Frac: LeEqU8> RemAssign<u8> for Wrapping<FixedU8<Frac>>
impl<Frac: LeEqU8> RemAssign<u8> for Wrapping<FixedU8<Frac>>
source§fn rem_assign(&mut self, other: u8)
fn rem_assign(&mut self, other: u8)
%=
operation. Read moresource§impl<F: Fixed> RemAssign for Wrapping<F>
impl<F: Fixed> RemAssign for Wrapping<F>
source§fn rem_assign(&mut self, other: Wrapping<F>)
fn rem_assign(&mut self, other: Wrapping<F>)
%=
operation. Read moresource§impl<'a, F> ShlAssign<&'a i128> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a i128> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &i128)
fn shl_assign(&mut self, other: &i128)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a i16> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a i16> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &i16)
fn shl_assign(&mut self, other: &i16)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a i32> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a i32> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &i32)
fn shl_assign(&mut self, other: &i32)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a i64> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a i64> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &i64)
fn shl_assign(&mut self, other: &i64)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a i8> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a i8> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &i8)
fn shl_assign(&mut self, other: &i8)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a isize> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a isize> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &isize)
fn shl_assign(&mut self, other: &isize)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a u128> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a u128> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &u128)
fn shl_assign(&mut self, other: &u128)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a u16> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a u16> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &u16)
fn shl_assign(&mut self, other: &u16)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a u32> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a u32> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &u32)
fn shl_assign(&mut self, other: &u32)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a u64> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a u64> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &u64)
fn shl_assign(&mut self, other: &u64)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a u8> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a u8> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &u8)
fn shl_assign(&mut self, other: &u8)
<<=
operation. Read moresource§impl<'a, F> ShlAssign<&'a usize> for Wrapping<F>where
F: ShlAssign<u32>,
impl<'a, F> ShlAssign<&'a usize> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: &usize)
fn shl_assign(&mut self, other: &usize)
<<=
operation. Read moresource§impl<F> ShlAssign<i128> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<i128> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: i128)
fn shl_assign(&mut self, other: i128)
<<=
operation. Read moresource§impl<F> ShlAssign<i16> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<i16> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: i16)
fn shl_assign(&mut self, other: i16)
<<=
operation. Read moresource§impl<F> ShlAssign<i32> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<i32> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: i32)
fn shl_assign(&mut self, other: i32)
<<=
operation. Read moresource§impl<F> ShlAssign<i64> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<i64> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: i64)
fn shl_assign(&mut self, other: i64)
<<=
operation. Read moresource§impl<F> ShlAssign<i8> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<i8> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: i8)
fn shl_assign(&mut self, other: i8)
<<=
operation. Read moresource§impl<F> ShlAssign<isize> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<isize> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: isize)
fn shl_assign(&mut self, other: isize)
<<=
operation. Read moresource§impl<F> ShlAssign<u128> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<u128> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: u128)
fn shl_assign(&mut self, other: u128)
<<=
operation. Read moresource§impl<F> ShlAssign<u16> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<u16> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: u16)
fn shl_assign(&mut self, other: u16)
<<=
operation. Read moresource§impl<F> ShlAssign<u32> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<u32> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: u32)
fn shl_assign(&mut self, other: u32)
<<=
operation. Read moresource§impl<F> ShlAssign<u64> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<u64> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: u64)
fn shl_assign(&mut self, other: u64)
<<=
operation. Read moresource§impl<F> ShlAssign<u8> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<u8> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: u8)
fn shl_assign(&mut self, other: u8)
<<=
operation. Read moresource§impl<F> ShlAssign<usize> for Wrapping<F>where
F: ShlAssign<u32>,
impl<F> ShlAssign<usize> for Wrapping<F>where F: ShlAssign<u32>,
source§fn shl_assign(&mut self, other: usize)
fn shl_assign(&mut self, other: usize)
<<=
operation. Read moresource§impl<'a, F> ShrAssign<&'a i128> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a i128> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &i128)
fn shr_assign(&mut self, other: &i128)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a i16> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a i16> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &i16)
fn shr_assign(&mut self, other: &i16)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a i32> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a i32> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &i32)
fn shr_assign(&mut self, other: &i32)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a i64> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a i64> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &i64)
fn shr_assign(&mut self, other: &i64)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a i8> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a i8> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &i8)
fn shr_assign(&mut self, other: &i8)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a isize> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a isize> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &isize)
fn shr_assign(&mut self, other: &isize)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a u128> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a u128> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &u128)
fn shr_assign(&mut self, other: &u128)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a u16> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a u16> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &u16)
fn shr_assign(&mut self, other: &u16)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a u32> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a u32> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &u32)
fn shr_assign(&mut self, other: &u32)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a u64> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a u64> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &u64)
fn shr_assign(&mut self, other: &u64)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a u8> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a u8> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &u8)
fn shr_assign(&mut self, other: &u8)
>>=
operation. Read moresource§impl<'a, F> ShrAssign<&'a usize> for Wrapping<F>where
F: ShrAssign<u32>,
impl<'a, F> ShrAssign<&'a usize> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: &usize)
fn shr_assign(&mut self, other: &usize)
>>=
operation. Read moresource§impl<F> ShrAssign<i128> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<i128> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: i128)
fn shr_assign(&mut self, other: i128)
>>=
operation. Read moresource§impl<F> ShrAssign<i16> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<i16> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: i16)
fn shr_assign(&mut self, other: i16)
>>=
operation. Read moresource§impl<F> ShrAssign<i32> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<i32> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: i32)
fn shr_assign(&mut self, other: i32)
>>=
operation. Read moresource§impl<F> ShrAssign<i64> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<i64> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: i64)
fn shr_assign(&mut self, other: i64)
>>=
operation. Read moresource§impl<F> ShrAssign<i8> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<i8> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: i8)
fn shr_assign(&mut self, other: i8)
>>=
operation. Read moresource§impl<F> ShrAssign<isize> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<isize> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: isize)
fn shr_assign(&mut self, other: isize)
>>=
operation. Read moresource§impl<F> ShrAssign<u128> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<u128> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: u128)
fn shr_assign(&mut self, other: u128)
>>=
operation. Read moresource§impl<F> ShrAssign<u16> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<u16> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: u16)
fn shr_assign(&mut self, other: u16)
>>=
operation. Read moresource§impl<F> ShrAssign<u32> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<u32> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: u32)
fn shr_assign(&mut self, other: u32)
>>=
operation. Read moresource§impl<F> ShrAssign<u64> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<u64> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: u64)
fn shr_assign(&mut self, other: u64)
>>=
operation. Read moresource§impl<F> ShrAssign<u8> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<u8> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: u8)
fn shr_assign(&mut self, other: u8)
>>=
operation. Read moresource§impl<F> ShrAssign<usize> for Wrapping<F>where
F: ShrAssign<u32>,
impl<F> ShrAssign<usize> for Wrapping<F>where F: ShrAssign<u32>,
source§fn shr_assign(&mut self, other: usize)
fn shr_assign(&mut self, other: usize)
>>=
operation. Read moresource§impl<'a, F: Fixed> SubAssign<&'a Wrapping<F>> for Wrapping<F>
impl<'a, F: Fixed> SubAssign<&'a Wrapping<F>> for Wrapping<F>
source§fn sub_assign(&mut self, other: &Wrapping<F>)
fn sub_assign(&mut self, other: &Wrapping<F>)
-=
operation. Read moresource§impl<F: Fixed> SubAssign for Wrapping<F>
impl<F: Fixed> SubAssign for Wrapping<F>
source§fn sub_assign(&mut self, other: Wrapping<F>)
fn sub_assign(&mut self, other: Wrapping<F>)
-=
operation. Read more