Struct fixed::Wrapping [−][src]
#[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 fixed::{types::I16F16, Wrapping}; let max = Wrapping(I16F16::MAX); let delta = Wrapping(I16F16::DELTA); assert_eq!(I16F16::MIN, (max + delta).0);
Implementations
impl<F: Fixed> Wrapping<F>
[src]
impl<F: Fixed> Wrapping<F>
[src]pub const FRAC_NBITS: u32
[src]
pub const FRAC_NBITS: u32
[src]The number of fractional bits.
See also FixedI32::FRAC_NBITS
and
FixedU32::FRAC_NBITS
.
Examples
use fixed::{types::I16F16, Wrapping}; assert_eq!(Wrapping::<I16F16>::FRAC_NBITS, I16F16::FRAC_NBITS);
pub fn from_be(w: Self) -> Self
[src]
pub fn from_be(w: Self) -> Self
[src]Converts a fixed-point number from big endian to the target’s endianness.
See also FixedI32::from_be
and
FixedU32::from_be
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x1234_5678)); if cfg!(target_endian = "big") { assert_eq!(Wrapping::from_be(w), w); } else { assert_eq!(Wrapping::from_be(w), w.swap_bytes()); }
pub fn from_le(w: Self) -> Self
[src]
pub fn from_le(w: Self) -> Self
[src]Converts a fixed-point number from little endian to the target’s endianness.
See also FixedI32::from_le
and
FixedU32::from_le
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x1234_5678)); if cfg!(target_endian = "little") { assert_eq!(Wrapping::from_le(w), w); } else { assert_eq!(Wrapping::from_le(w), w.swap_bytes()); }
pub fn to_be(self) -> Self
[src]
pub fn to_be(self) -> Self
[src]Converts self
to big endian from the target’s endianness.
See also FixedI32::to_be
and
FixedU32::to_be
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x1234_5678)); if cfg!(target_endian = "big") { assert_eq!(w.to_be(), w); } else { assert_eq!(w.to_be(), w.swap_bytes()); }
pub fn to_le(self) -> Self
[src]
pub fn to_le(self) -> Self
[src]Converts self
to little endian from the target’s endianness.
See also FixedI32::to_le
and
FixedU32::to_le
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x1234_5678)); if cfg!(target_endian = "little") { assert_eq!(w.to_le(), w); } else { assert_eq!(w.to_le(), w.swap_bytes()); }
pub fn swap_bytes(self) -> Self
[src]
pub fn swap_bytes(self) -> Self
[src]Reverses the byte order of the fixed-point number.
See also FixedI32::swap_bytes
and
FixedU32::swap_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x1234_5678)); let swapped = Wrapping(I16F16::from_bits(0x7856_3412)); assert_eq!(w.swap_bytes(), swapped);
pub fn from_be_bytes(bytes: F::Bytes) -> Self
[src]
pub fn from_be_bytes(bytes: F::Bytes) -> Self
[src]Creates a fixed-point number from its representation as a byte array in big endian.
See also
FixedI32::from_be_bytes
and
FixedU32::from_be_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; let bytes = [0x12, 0x34, 0x56, 0x78]; assert_eq!( Wrapping::<I16F16>::from_be_bytes(bytes), Wrapping::<I16F16>::from_bits(0x1234_5678) );
pub fn from_le_bytes(bytes: F::Bytes) -> Self
[src]
pub fn from_le_bytes(bytes: F::Bytes) -> Self
[src]Creates a fixed-point number from its representation as a byte array in little endian.
See also
FixedI32::from_le_bytes
and
FixedU32::from_le_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; let bytes = [0x78, 0x56, 0x34, 0x12]; assert_eq!( Wrapping::<I16F16>::from_le_bytes(bytes), Wrapping::<I16F16>::from_bits(0x1234_5678) );
pub fn from_ne_bytes(bytes: F::Bytes) -> Self
[src]
pub fn from_ne_bytes(bytes: F::Bytes) -> Self
[src]Creates a fixed-point number from its representation as a byte array in native endian.
See also
FixedI32::from_ne_bytes
and
FixedU32::from_ne_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; let bytes = if cfg!(target_endian = "big") { [0x12, 0x34, 0x56, 0x78] } else { [0x78, 0x56, 0x34, 0x12] }; assert_eq!( Wrapping::<I16F16>::from_ne_bytes(bytes), Wrapping::<I16F16>::from_bits(0x1234_5678) );
pub fn to_be_bytes(self) -> F::Bytes
[src]
pub fn to_be_bytes(self) -> F::Bytes
[src]Returns the memory representation of this fixed-point number as a byte array in big-endian byte order.
See also FixedI32::to_be_bytes
and FixedU32::to_be_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; assert_eq!( Wrapping::<I16F16>::from_bits(0x1234_5678).to_be_bytes(), [0x12, 0x34, 0x56, 0x78] );
pub fn to_le_bytes(self) -> F::Bytes
[src]
pub fn to_le_bytes(self) -> F::Bytes
[src]Returns the memory representation of this fixed-point number as a byte array in little-endian byte order.
See also FixedI32::to_le_bytes
and FixedU32::to_le_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; assert_eq!( Wrapping::<I16F16>::from_bits(0x1234_5678).to_le_bytes(), [0x78, 0x56, 0x34, 0x12] );
pub fn to_ne_bytes(self) -> F::Bytes
[src]
pub fn to_ne_bytes(self) -> F::Bytes
[src]Returns the memory representation of this fixed-point number as a byte array in native-endian byte order.
See also FixedI32::to_ne_bytes
and FixedU32::to_ne_bytes
.
Examples
use fixed::{types::I16F16, Wrapping}; let bytes = if cfg!(target_endian = "big") { [0x12, 0x34, 0x56, 0x78] } else { [0x78, 0x56, 0x34, 0x12] }; assert_eq!( Wrapping::<I16F16>::from_bits(0x1234_5678).to_ne_bytes(), bytes );
pub fn from_num<Src: ToFixed>(src: Src) -> Wrapping<F>
[src]
pub fn from_num<Src: ToFixed>(src: Src) -> Wrapping<F>
[src]Wrapping conversion from another number.
The other number can be:
- A fixed-point number. Any extra fractional bits are discarded, which rounds towards −∞.
- An integer of type
i8
,i16
,i32
,i64
,i128
,isize
,u8
,u16
,u32
,u64
,u128
, orusize
. - A floating-point number of type
f16
,bf16
,f32
,f64
orF128Bits
. 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())
.
See also
FixedI32::wrapping_from_num
and
FixedU32::wrapping_from_num
.
Panics
For floating-point numbers, panics if the value is not finite.
Examples
use 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)));
pub fn to_num<Dst: FromFixed>(self) -> Dst
[src]
pub fn to_num<Dst: FromFixed>(self) -> Dst
[src]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 discarded, which rounds towards −∞.
- An integer of type
i8
,i16
,i32
,i64
,i128
,isize
,u8
,u16
,u32
,u64
,u128
, orusize
. Any fractional bits are discarded, which rounds towards −∞. - A floating-point number of type
f16
,bf16
,f32
,f64
orF128Bits
. 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)
.
See also FixedI32::wrapping_to_num
and
FixedU32::wrapping_to_num
.
Examples
use 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); let wrapped = I2F6::from_bits(I2F6::MAX.to_bits() << 2); assert_eq!(src.to_num::<I2F6>(), wrapped);
pub fn from_str_binary(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]
pub fn from_str_binary(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]Parses a string slice containing binary digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
See also
FixedI32::wrapping_from_str_binary
and
FixedU32::wrapping_from_str_binary
.
Examples
use fixed::{types::I8F8, Wrapping}; let check = Wrapping(I8F8::from_bits(0b1110001 << (8 - 1))); assert_eq!(Wrapping::<I8F8>::from_str_binary("101100111000.1"), Ok(check));
pub fn from_str_octal(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]
pub fn from_str_octal(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]Parses a string slice containing octal digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
See also
FixedI32::wrapping_from_str_octal
and
FixedU32::wrapping_from_str_octal
.
Examples
use fixed::{types::I8F8, Wrapping}; let check = Wrapping(I8F8::from_bits(0o1654 << (8 - 3))); assert_eq!(Wrapping::<I8F8>::from_str_octal("7165.4"), Ok(check));
pub fn from_str_hex(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]
pub fn from_str_hex(src: &str) -> Result<Wrapping<F>, ParseFixedError>
[src]Parses a string slice containing hexadecimal digits to return a fixed-point number.
Rounding is to the nearest, with ties rounded to even.
See also
FixedI32::wrapping_from_str_hex
and
FixedU32::wrapping_from_str_hex
.
Examples
use fixed::{types::I8F8, Wrapping}; let check = Wrapping(I8F8::from_bits(0xFFE)); assert_eq!(Wrapping::<I8F8>::from_str_hex("C0F.FE"), Ok(check));
pub fn int(self) -> Wrapping<F>
[src]
pub fn int(self) -> Wrapping<F>
[src]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.
See also FixedI32::int
and
FixedU32::int
.
Examples
use 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)));
pub fn frac(self) -> Wrapping<F>
[src]
pub fn frac(self) -> Wrapping<F>
[src]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
.
See also FixedI32::frac
and
FixedU32::frac
.
Examples
use 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)));
pub fn round_to_zero(self) -> Wrapping<F>
[src]
pub fn round_to_zero(self) -> Wrapping<F>
[src]Rounds to the next integer towards 0.
See also
FixedI32::round_to_zero
and
FixedU32::round_to_zero
.
Examples
use 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);
pub fn ceil(self) -> Wrapping<F>
[src]
pub fn ceil(self) -> Wrapping<F>
[src]Wrapping ceil. Rounds to the next integer towards +∞, wrapping on overflow.
See also
FixedI32::wrapping_ceil
and
FixedU32::wrapping_ceil
.
Examples
use 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).ceil(), Wrapping(I16F16::MIN));
pub fn floor(self) -> Wrapping<F>
[src]
pub fn floor(self) -> Wrapping<F>
[src]Wrapping floor. Rounds to the next integer towards −∞, wrapping on overflow.
Overflow can only occur for signed numbers with zero integer bits.
See also
FixedI32::wrapping_floor
and
FixedU32::wrapping_floor
.
Examples
use 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).floor(), Wrapping(I0F32::ZERO));
pub fn round(self) -> Wrapping<F>
[src]
pub fn round(self) -> Wrapping<F>
[src]Wrapping round. Rounds to the next integer to the nearest, with ties rounded away from zero, and wrapping on overflow.
See also
FixedI32::wrapping_round
and
FixedU32::wrapping_round
.
Examples
use 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).round(), Wrapping(I16F16::MIN));
pub fn round_ties_to_even(self) -> Wrapping<F>
[src]
pub fn round_ties_to_even(self) -> Wrapping<F>
[src]Wrapping round. Rounds to the next integer to the nearest, with ties rounded to even, and wrapping on overflow.
See also
FixedI32::wrapping_round_ties_to_even
and
FixedU32::wrapping_round_ties_to_even
.
Examples
use 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); assert_eq!(max.round_ties_to_even(), Wrapping(I16F16::MIN));
pub fn count_ones(self) -> u32
[src]
pub fn count_ones(self) -> u32
[src]Returns the number of ones in the binary representation.
See also FixedI32::count_ones
and
FixedU32::count_ones
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x00FF_FF00)); assert_eq!(w.count_ones(), w.0.count_ones());
pub fn count_zeros(self) -> u32
[src]
pub fn count_zeros(self) -> u32
[src]Returns the number of zeros in the binary representation.
See also FixedI32::count_zeros
and FixedU32::count_zeros
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x00FF_FF00)); assert_eq!(w.count_zeros(), w.0.count_zeros());
pub fn leading_ones(self) -> u32
[src]
pub fn leading_ones(self) -> u32
[src]Returns the number of leading ones in the binary representation.
See also FixedI32::leading_ones
and FixedU32::leading_ones
.
Examples
use fixed::{types::U16F16, Wrapping}; let w = Wrapping(U16F16::from_bits(0xFF00_00FF)); assert_eq!(w.leading_ones(), w.0.leading_ones());
pub fn leading_zeros(self) -> u32
[src]
pub fn leading_zeros(self) -> u32
[src]Returns the number of leading zeros in the binary representation.
See also
FixedI32::leading_zeros
and
FixedU32::leading_zeros
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x00FF_FF00)); assert_eq!(w.leading_zeros(), w.0.leading_zeros());
pub fn trailing_ones(self) -> u32
[src]
pub fn trailing_ones(self) -> u32
[src]Returns the number of trailing ones in the binary representation.
See also
FixedI32::trailing_ones
and
FixedU32::trailing_ones
.
Examples
use fixed::{types::U16F16, Wrapping}; let w = Wrapping(U16F16::from_bits(0xFF00_00FF)); assert_eq!(w.trailing_ones(), w.0.trailing_ones());
pub fn trailing_zeros(self) -> u32
[src]
pub fn trailing_zeros(self) -> u32
[src]Returns the number of trailing zeros in the binary representation.
See also
FixedI32::trailing_zeros
and
FixedU32::trailing_zeros
.
Examples
use fixed::{types::I16F16, Wrapping}; let w = Wrapping(I16F16::from_bits(0x00FF_FF00)); assert_eq!(w.trailing_zeros(), w.0.trailing_zeros());
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn reverse_bits(self) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn reverse_bits(self) -> Wrapping<F>
[src]Reverses the order of the bits of the fixed-point number.
See also FixedI32::reverse_bits
and FixedU32::reverse_bits
.
Examples
use fixed::{types::I16F16, Wrapping}; let i = I16F16::from_bits(0x1234_5678); assert_eq!(Wrapping(i).reverse_bits(), Wrapping(i.reverse_bits()));
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rotate_left(self, n: u32) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rotate_left(self, n: u32) -> Wrapping<F>
[src]Shifts to the left by n
bits, wrapping the truncated bits to the right end.
See also FixedI32::rotate_left
and FixedU32::rotate_left
.
Examples
use fixed::{types::I16F16, Wrapping}; let i = I16F16::from_bits(0x00FF_FF00); assert_eq!(Wrapping(i).rotate_left(12), Wrapping(i.rotate_left(12)));
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rotate_right(self, n: u32) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rotate_right(self, n: u32) -> Wrapping<F>
[src]Shifts to the right by n
bits, wrapping the truncated bits to the left end.
See also FixedI32::rotate_right
and FixedU32::rotate_right
.
Examples
use fixed::{types::I16F16, Wrapping}; let i = I16F16::from_bits(0x00FF_FF00); assert_eq!(Wrapping(i).rotate_right(12), Wrapping(i.rotate_right(12)));
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn dist(self, other: Wrapping<F>) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn dist(self, other: Wrapping<F>) -> Wrapping<F>
[src]Returns the distance from self
to other
.
See also
FixedI32::wrapping_dist
and
FixedU32::wrapping_dist
.
Examples
use fixed::{types::I16F16, Wrapping}; type Wr = Wrapping<I16F16>; assert_eq!(Wr::from_num(-1).dist(Wr::from_num(4)), Wr::from_num(5)); assert_eq!(Wr::MIN.dist(Wr::MAX), -Wr::DELTA);
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn mean(self, other: Wrapping<F>) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn mean(self, other: Wrapping<F>) -> Wrapping<F>
[src]Returns the mean of self
and other
.
See also FixedI32::mean
and
FixedU32::mean
.
Examples
use fixed::{types::I16F16, Wrapping}; let three = Wrapping(I16F16::from_num(3)); let four = Wrapping(I16F16::from_num(4)); assert_eq!(three.mean(four), Wrapping(I16F16::from_num(3.5))); assert_eq!(three.mean(-four), Wrapping(I16F16::from_num(-0.5)));
pub fn recip(self) -> Wrapping<F>
[src]
pub fn recip(self) -> Wrapping<F>
[src]Returns the reciprocal (inverse), 1/self
.
See also
FixedI32::wrapping_recip
and
FixedU32::wrapping_recip
.
Panics
Panics if self
is zero.
Examples
use fixed::{types::I8F24, Wrapping}; let quarter = Wrapping(I8F24::from_num(0.25)); let frac_1_512 = Wrapping(I8F24::ONE / 512); assert_eq!(quarter.recip(), Wrapping(I8F24::from_num(4))); assert_eq!(frac_1_512.recip(), Wrapping(I8F24::ZERO));
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn mul_add(self, mul: Wrapping<F>, add: Wrapping<F>) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn mul_add(self, mul: Wrapping<F>, add: Wrapping<F>) -> Wrapping<F>
[src]Multiply and add. Returns self
× mul
+ add
.
See also
FixedI32::wrapping_mul_add
and
FixedU32::wrapping_mul_add
.
Examples
use fixed::{types::I16F16, Wrapping}; let half = Wrapping(I16F16::from_num(0.5)); let three = Wrapping(I16F16::from_num(3)); let four = Wrapping(I16F16::from_num(4)); let max = Wrapping(I16F16::MAX); assert_eq!(three.mul_add(half, four), Wrapping(I16F16::from_num(5.5))); assert_eq!(max.mul_add(three, max), Wrapping(I16F16::from_bits(!0 << 2)));
pub fn mul_acc(&mut self, a: Wrapping<F>, b: Wrapping<F>)
[src]
pub fn mul_acc(&mut self, a: Wrapping<F>, b: Wrapping<F>)
[src]Multiply and accumulate. Adds (a
× b
) to self
.
See also
FixedI32::wrapping_mul_acc
and
FixedU32::wrapping_mul_acc
.
Examples
use fixed::{types::I16F16, Wrapping}; let mut acc = Wrapping(I16F16::from_num(3)); acc.mul_acc(Wrapping(I16F16::from_num(4)), Wrapping(I16F16::from_num(0.5))); assert_eq!(acc, Wrapping(I16F16::from_num(5))); acc = Wrapping(I16F16::MAX); acc.mul_acc(Wrapping(I16F16::MAX), Wrapping(I16F16::from_num(3))); assert_eq!(acc, Wrapping(I16F16::MAX) * 4);
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn div_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn div_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
[src]Euclidean division.
See also
FixedI32::wrapping_div_euclid
and
FixedU32::wrapping_div_euclid
.
Panics
Panics if the divisor is zero.
Examples
use 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(I16F16::MAX) * 4i32).round_to_zero(); assert_eq!(Wrapping(I16F16::MAX).div_euclid(quarter), check);
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rem_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rem_euclid(self, divisor: Wrapping<F>) -> Wrapping<F>
[src]Remainder for Euclidean division.
See also FixedI32::rem_euclid
and
FixedU32::rem_euclid
.
Panics
Panics if the divisor is zero.
Examples
use 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)));
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn div_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn div_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
[src]Euclidean division by an integer.
See also
FixedI32::wrapping_div_euclid_int
and
FixedU32::wrapping_div_euclid_int
.
Panics
Panics if the divisor is zero.
Examples
use 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); assert_eq!(min.div_euclid_int(-1), min);
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rem_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
[src]
#[must_use = "this returns the result of the operation, without modifying the original"]pub fn rem_euclid_int(self, divisor: F::Bits) -> Wrapping<F>
[src]Remainder for Euclidean division.
See also
FixedI32::wrapping_rem_euclid_int
and
FixedU32::wrapping_rem_euclid_int
.
Panics
Panics if the divisor is zero.
Examples
use 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)));
impl<F: FixedSigned> Wrapping<F>
[src]
impl<F: FixedSigned> Wrapping<F>
[src]pub fn signed_bits(self) -> u32
[src]
pub fn signed_bits(self) -> u32
[src]Returns the number of bits required to represent the value.
The number of bits required includes an initial one for negative numbers, and an initial zero for non-negative numbers.
See also FixedI32::signed_bits
.
Examples
use fixed::{types::I4F4, Wrapping}; assert_eq!(Wrapping(I4F4::from_num(-3)).signed_bits(), 7); // “_101.0000” assert_eq!(Wrapping(I4F4::from_num(-1)).signed_bits(), 5); // “___1.0000” assert_eq!(Wrapping(I4F4::from_num(-0.0625)).signed_bits(), 1); // “____.___1” assert_eq!(Wrapping(I4F4::from_num(0)).signed_bits(), 1); // “____.___0” assert_eq!(Wrapping(I4F4::from_num(0.0625)).signed_bits(), 2); // “____.__01” assert_eq!(Wrapping(I4F4::from_num(1)).signed_bits(), 6); // “__01.0000” assert_eq!(Wrapping(I4F4::from_num(3)).signed_bits(), 7); // “_011.0000”
pub fn is_positive(self) -> bool
[src]
pub fn is_positive(self) -> bool
[src]Returns true
if the number is > 0.
See also FixedI32::is_positive
.
Examples
use fixed::{types::I16F16, Wrapping}; assert!(Wrapping(I16F16::from_num(4.3)).is_positive()); assert!(!Wrapping(I16F16::ZERO).is_positive()); assert!(!Wrapping(I16F16::from_num(-4.3)).is_positive());
pub fn is_negative(self) -> bool
[src]
pub fn is_negative(self) -> bool
[src]Returns true
if the number is < 0.
See also FixedI32::is_negative
.
Examples
use fixed::{types::I16F16, Wrapping}; assert!(!Wrapping(I16F16::from_num(4.3)).is_negative()); assert!(!Wrapping(I16F16::ZERO).is_negative()); assert!(Wrapping(I16F16::from_num(-4.3)).is_negative());
pub fn abs(self) -> Wrapping<F>
[src]
pub fn abs(self) -> Wrapping<F>
[src]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.
See also FixedI32::wrapping_abs
.
Examples
use fixed::{types::I16F16, Wrapping}; assert_eq!(Wrapping(I16F16::from_num(-5)).abs(), Wrapping(I16F16::from_num(5))); assert_eq!(Wrapping(I16F16::MIN).abs(), Wrapping(I16F16::MIN));
pub fn signum(self) -> Wrapping<F>
[src]
pub fn signum(self) -> Wrapping<F>
[src]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.
See also
FixedI32::wrapping_signum
.
Examples
use fixed::{ types::{I0F32, I1F31, I16F16}, Wrapping, }; assert_eq!(Wrapping(<I16F16>::from_num(-3.9)).signum(), Wrapping(I16F16::from_num(-1))); assert_eq!(Wrapping(<I16F16>::ZERO).signum(), Wrapping(I16F16::ZERO)); assert_eq!(Wrapping(<I16F16>::from_num(3.9)).signum(), Wrapping(I16F16::ONE)); assert_eq!(Wrapping(<I1F31>::from_num(0.5)).signum(), Wrapping(I1F31::from_num(-1))); assert_eq!(Wrapping(<I0F32>::from_num(0.25)).signum(), Wrapping(I0F32::ZERO)); assert_eq!(Wrapping(<I0F32>::from_num(-0.5)).signum(), Wrapping(I0F32::ZERO));
impl<F: FixedUnsigned> Wrapping<F>
[src]
impl<F: FixedUnsigned> Wrapping<F>
[src]pub fn significant_bits(self) -> u32
[src]
pub fn significant_bits(self) -> u32
[src]Returns the number of bits required to represent the value.
See also
FixedU32::significant_bits
.
Examples
use fixed::{types::U4F4, Wrapping}; assert_eq!(Wrapping(U4F4::from_num(0)).significant_bits(), 0); // “____.____” assert_eq!(Wrapping(U4F4::from_num(0.0625)).significant_bits(), 1); // “____.___1” assert_eq!(Wrapping(U4F4::from_num(1)).significant_bits(), 5); // “___1.0000” assert_eq!(Wrapping(U4F4::from_num(3)).significant_bits(), 6); // “__11.0000”
pub fn is_power_of_two(self) -> bool
[src]
pub fn is_power_of_two(self) -> bool
[src]Returns true
if the fixed-point number is
2k for some integer k.
See also
FixedU32::is_power_of_two
.
Examples
use fixed::{types::U16F16, Wrapping}; assert!(Wrapping(U16F16::from_num(0.5)).is_power_of_two()); assert!(Wrapping(U16F16::from_num(4)).is_power_of_two()); assert!(!Wrapping(U16F16::from_num(5)).is_power_of_two());
pub fn highest_one(self) -> Wrapping<F>
[src]
pub fn highest_one(self) -> Wrapping<F>
[src]Returns the highest one in the binary representation, or zero
if self
is zero.
If self
> 0, the highest one is equal to the largest power
of two that is ≤ self
.
See also FixedU32::highest_one
.
Examples
use fixed::{types::U16F16, Wrapping}; type T = Wrapping<U16F16>; assert_eq!(T::from_bits(0b11_0010).highest_one(), T::from_bits(0b10_0000)); assert_eq!(T::from_num(0.3).highest_one(), T::from_num(0.25)); assert_eq!(T::from_num(4).highest_one(), T::from_num(4)); assert_eq!(T::from_num(6.5).highest_one(), T::from_num(4)); assert_eq!(T::ZERO.highest_one(), T::ZERO);
pub fn next_power_of_two(self) -> Wrapping<F>
[src]
pub fn next_power_of_two(self) -> Wrapping<F>
[src]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.
See also
FixedU32::wrapping_next_power_of_two
.
Examples
use fixed::{types::U16F16, Wrapping}; type T = Wrapping<U16F16>; assert_eq!(T::from_bits(0b11_0010).next_power_of_two(), T::from_bits(0b100_0000)); assert_eq!(T::from_num(0.3).next_power_of_two(), T::from_num(0.5)); assert_eq!(T::from_num(4).next_power_of_two(), T::from_num(4)); assert_eq!(T::from_num(6.5).next_power_of_two(), T::from_num(8)); // if the next power of two is too large, it is wrapped to zero assert_eq!(T::MAX.next_power_of_two(), T::ZERO);
Trait Implementations
impl<F: Fixed> AddAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> AddAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]fn add_assign(&mut self, other: &Wrapping<F>)
[src]
fn add_assign(&mut self, other: &Wrapping<F>)
[src]Performs the +=
operation. Read more
impl<F: Fixed> AddAssign<Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> AddAssign<Wrapping<F>> for Wrapping<F>
[src]fn add_assign(&mut self, other: Wrapping<F>)
[src]
fn add_assign(&mut self, other: Wrapping<F>)
[src]Performs the +=
operation. Read more
impl<F> BitAndAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitAndAssign<&'a F>,
[src]
impl<F> BitAndAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitAndAssign<&'a F>,
[src]fn bitand_assign(&mut self, other: &Wrapping<F>)
[src]
fn bitand_assign(&mut self, other: &Wrapping<F>)
[src]Performs the &=
operation. Read more
impl<F> BitAndAssign<Wrapping<F>> for Wrapping<F> where
F: BitAndAssign<F>,
[src]
impl<F> BitAndAssign<Wrapping<F>> for Wrapping<F> where
F: BitAndAssign<F>,
[src]fn bitand_assign(&mut self, other: Wrapping<F>)
[src]
fn bitand_assign(&mut self, other: Wrapping<F>)
[src]Performs the &=
operation. Read more
impl<F> BitOrAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitOrAssign<&'a F>,
[src]
impl<F> BitOrAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitOrAssign<&'a F>,
[src]fn bitor_assign(&mut self, other: &Wrapping<F>)
[src]
fn bitor_assign(&mut self, other: &Wrapping<F>)
[src]Performs the |=
operation. Read more
impl<F> BitOrAssign<Wrapping<F>> for Wrapping<F> where
F: BitOrAssign<F>,
[src]
impl<F> BitOrAssign<Wrapping<F>> for Wrapping<F> where
F: BitOrAssign<F>,
[src]fn bitor_assign(&mut self, other: Wrapping<F>)
[src]
fn bitor_assign(&mut self, other: Wrapping<F>)
[src]Performs the |=
operation. Read more
impl<F> BitXorAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitXorAssign<&'a F>,
[src]
impl<F> BitXorAssign<&'_ Wrapping<F>> for Wrapping<F> where
F: BitXorAssign<&'a F>,
[src]fn bitxor_assign(&mut self, other: &Wrapping<F>)
[src]
fn bitxor_assign(&mut self, other: &Wrapping<F>)
[src]Performs the ^=
operation. Read more
impl<F> BitXorAssign<Wrapping<F>> for Wrapping<F> where
F: BitXorAssign<F>,
[src]
impl<F> BitXorAssign<Wrapping<F>> for Wrapping<F> where
F: BitXorAssign<F>,
[src]fn bitxor_assign(&mut self, other: Wrapping<F>)
[src]
fn bitxor_assign(&mut self, other: Wrapping<F>)
[src]Performs the ^=
operation. Read more
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedI8<Frac>>
[src]
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedI8<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedI16<Frac>>
[src]
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedI16<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedI32<Frac>>
[src]
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedI32<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedI64<Frac>>
[src]
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedI64<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedI128<Frac>>
[src]
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedI128<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedU8<Frac>>
[src]
impl<'de, Frac: LeEqU8> Deserialize<'de> for Wrapping<FixedU8<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedU16<Frac>>
[src]
impl<'de, Frac: LeEqU16> Deserialize<'de> for Wrapping<FixedU16<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedU32<Frac>>
[src]
impl<'de, Frac: LeEqU32> Deserialize<'de> for Wrapping<FixedU32<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedU64<Frac>>
[src]
impl<'de, Frac: LeEqU64> Deserialize<'de> for Wrapping<FixedU64<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedU128<Frac>>
[src]
impl<'de, Frac: LeEqU128> Deserialize<'de> for Wrapping<FixedU128<Frac>>
[src]fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]
fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>
[src]Deserialize this value from the given Serde deserializer. Read more
impl<F: Fixed> DivAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> DivAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]fn div_assign(&mut self, other: &Wrapping<F>)
[src]
fn div_assign(&mut self, other: &Wrapping<F>)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac> DivAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]fn div_assign(&mut self, other: &i128)
[src]
fn div_assign(&mut self, other: &i128)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac> DivAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]fn div_assign(&mut self, other: &i16)
[src]
fn div_assign(&mut self, other: &i16)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac> DivAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]fn div_assign(&mut self, other: &i32)
[src]
fn div_assign(&mut self, other: &i32)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac> DivAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]fn div_assign(&mut self, other: &i64)
[src]
fn div_assign(&mut self, other: &i64)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac> DivAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]fn div_assign(&mut self, other: &i8)
[src]
fn div_assign(&mut self, other: &i8)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac> DivAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]fn div_assign(&mut self, other: &u128)
[src]
fn div_assign(&mut self, other: &u128)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac> DivAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]fn div_assign(&mut self, other: &u16)
[src]
fn div_assign(&mut self, other: &u16)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac> DivAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]fn div_assign(&mut self, other: &u32)
[src]
fn div_assign(&mut self, other: &u32)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac> DivAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]fn div_assign(&mut self, other: &u64)
[src]
fn div_assign(&mut self, other: &u64)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac> DivAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]fn div_assign(&mut self, other: &u8)
[src]
fn div_assign(&mut self, other: &u8)
[src]Performs the /=
operation. Read more
impl<F: Fixed> DivAssign<Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> DivAssign<Wrapping<F>> for Wrapping<F>
[src]fn div_assign(&mut self, other: Wrapping<F>)
[src]
fn div_assign(&mut self, other: Wrapping<F>)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac> DivAssign<i128> for Wrapping<FixedI128<Frac>>
[src]fn div_assign(&mut self, other: i128)
[src]
fn div_assign(&mut self, other: i128)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac> DivAssign<i16> for Wrapping<FixedI16<Frac>>
[src]fn div_assign(&mut self, other: i16)
[src]
fn div_assign(&mut self, other: i16)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac> DivAssign<i32> for Wrapping<FixedI32<Frac>>
[src]fn div_assign(&mut self, other: i32)
[src]
fn div_assign(&mut self, other: i32)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac> DivAssign<i64> for Wrapping<FixedI64<Frac>>
[src]fn div_assign(&mut self, other: i64)
[src]
fn div_assign(&mut self, other: i64)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac> DivAssign<i8> for Wrapping<FixedI8<Frac>>
[src]fn div_assign(&mut self, other: i8)
[src]
fn div_assign(&mut self, other: i8)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac> DivAssign<u128> for Wrapping<FixedU128<Frac>>
[src]fn div_assign(&mut self, other: u128)
[src]
fn div_assign(&mut self, other: u128)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac> DivAssign<u16> for Wrapping<FixedU16<Frac>>
[src]fn div_assign(&mut self, other: u16)
[src]
fn div_assign(&mut self, other: u16)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac> DivAssign<u32> for Wrapping<FixedU32<Frac>>
[src]fn div_assign(&mut self, other: u32)
[src]
fn div_assign(&mut self, other: u32)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac> DivAssign<u64> for Wrapping<FixedU64<Frac>>
[src]fn div_assign(&mut self, other: u64)
[src]
fn div_assign(&mut self, other: u64)
[src]Performs the /=
operation. Read more
impl<Frac> DivAssign<u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac> DivAssign<u8> for Wrapping<FixedU8<Frac>>
[src]fn div_assign(&mut self, other: u8)
[src]
fn div_assign(&mut self, other: u8)
[src]Performs the /=
operation. Read more
impl<F: Fixed> MulAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> MulAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]fn mul_assign(&mut self, other: &Wrapping<F>)
[src]
fn mul_assign(&mut self, other: &Wrapping<F>)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac> MulAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]fn mul_assign(&mut self, other: &i128)
[src]
fn mul_assign(&mut self, other: &i128)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac> MulAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]fn mul_assign(&mut self, other: &i16)
[src]
fn mul_assign(&mut self, other: &i16)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac> MulAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]fn mul_assign(&mut self, other: &i32)
[src]
fn mul_assign(&mut self, other: &i32)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac> MulAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]fn mul_assign(&mut self, other: &i64)
[src]
fn mul_assign(&mut self, other: &i64)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac> MulAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]fn mul_assign(&mut self, other: &i8)
[src]
fn mul_assign(&mut self, other: &i8)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac> MulAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]fn mul_assign(&mut self, other: &u128)
[src]
fn mul_assign(&mut self, other: &u128)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac> MulAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]fn mul_assign(&mut self, other: &u16)
[src]
fn mul_assign(&mut self, other: &u16)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac> MulAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]fn mul_assign(&mut self, other: &u32)
[src]
fn mul_assign(&mut self, other: &u32)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac> MulAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]fn mul_assign(&mut self, other: &u64)
[src]
fn mul_assign(&mut self, other: &u64)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac> MulAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]fn mul_assign(&mut self, other: &u8)
[src]
fn mul_assign(&mut self, other: &u8)
[src]Performs the *=
operation. Read more
impl<F: Fixed> MulAssign<Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> MulAssign<Wrapping<F>> for Wrapping<F>
[src]fn mul_assign(&mut self, other: Wrapping<F>)
[src]
fn mul_assign(&mut self, other: Wrapping<F>)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac> MulAssign<i128> for Wrapping<FixedI128<Frac>>
[src]fn mul_assign(&mut self, other: i128)
[src]
fn mul_assign(&mut self, other: i128)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac> MulAssign<i16> for Wrapping<FixedI16<Frac>>
[src]fn mul_assign(&mut self, other: i16)
[src]
fn mul_assign(&mut self, other: i16)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac> MulAssign<i32> for Wrapping<FixedI32<Frac>>
[src]fn mul_assign(&mut self, other: i32)
[src]
fn mul_assign(&mut self, other: i32)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac> MulAssign<i64> for Wrapping<FixedI64<Frac>>
[src]fn mul_assign(&mut self, other: i64)
[src]
fn mul_assign(&mut self, other: i64)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac> MulAssign<i8> for Wrapping<FixedI8<Frac>>
[src]fn mul_assign(&mut self, other: i8)
[src]
fn mul_assign(&mut self, other: i8)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac> MulAssign<u128> for Wrapping<FixedU128<Frac>>
[src]fn mul_assign(&mut self, other: u128)
[src]
fn mul_assign(&mut self, other: u128)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac> MulAssign<u16> for Wrapping<FixedU16<Frac>>
[src]fn mul_assign(&mut self, other: u16)
[src]
fn mul_assign(&mut self, other: u16)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac> MulAssign<u32> for Wrapping<FixedU32<Frac>>
[src]fn mul_assign(&mut self, other: u32)
[src]
fn mul_assign(&mut self, other: u32)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac> MulAssign<u64> for Wrapping<FixedU64<Frac>>
[src]fn mul_assign(&mut self, other: u64)
[src]
fn mul_assign(&mut self, other: u64)
[src]Performs the *=
operation. Read more
impl<Frac> MulAssign<u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac> MulAssign<u8> for Wrapping<FixedU8<Frac>>
[src]fn mul_assign(&mut self, other: u8)
[src]
fn mul_assign(&mut self, other: u8)
[src]Performs the *=
operation. Read more
impl<F: Ord> Ord for Wrapping<F>
[src]
impl<F: Ord> Ord for Wrapping<F>
[src]impl<F: PartialOrd> PartialOrd<Wrapping<F>> for Wrapping<F>
[src]
impl<F: PartialOrd> PartialOrd<Wrapping<F>> for Wrapping<F>
[src]fn partial_cmp(&self, other: &Wrapping<F>) -> Option<Ordering>
[src]
fn partial_cmp(&self, other: &Wrapping<F>) -> Option<Ordering>
[src]This method returns an ordering between self
and other
values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than (for self
and other
) and is used by the <
operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl<F: Fixed> RemAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> RemAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]fn rem_assign(&mut self, other: &Wrapping<F>)
[src]
fn rem_assign(&mut self, other: &Wrapping<F>)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU128> RemAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac: LeEqU128> RemAssign<&'_ i128> for Wrapping<FixedI128<Frac>>
[src]fn rem_assign(&mut self, other: &i128)
[src]
fn rem_assign(&mut self, other: &i128)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU16> RemAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac: LeEqU16> RemAssign<&'_ i16> for Wrapping<FixedI16<Frac>>
[src]fn rem_assign(&mut self, other: &i16)
[src]
fn rem_assign(&mut self, other: &i16)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU32> RemAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac: LeEqU32> RemAssign<&'_ i32> for Wrapping<FixedI32<Frac>>
[src]fn rem_assign(&mut self, other: &i32)
[src]
fn rem_assign(&mut self, other: &i32)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU64> RemAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac: LeEqU64> RemAssign<&'_ i64> for Wrapping<FixedI64<Frac>>
[src]fn rem_assign(&mut self, other: &i64)
[src]
fn rem_assign(&mut self, other: &i64)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU8> RemAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac: LeEqU8> RemAssign<&'_ i8> for Wrapping<FixedI8<Frac>>
[src]fn rem_assign(&mut self, other: &i8)
[src]
fn rem_assign(&mut self, other: &i8)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU128> RemAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac: LeEqU128> RemAssign<&'_ u128> for Wrapping<FixedU128<Frac>>
[src]fn rem_assign(&mut self, other: &u128)
[src]
fn rem_assign(&mut self, other: &u128)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU16> RemAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac: LeEqU16> RemAssign<&'_ u16> for Wrapping<FixedU16<Frac>>
[src]fn rem_assign(&mut self, other: &u16)
[src]
fn rem_assign(&mut self, other: &u16)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU32> RemAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac: LeEqU32> RemAssign<&'_ u32> for Wrapping<FixedU32<Frac>>
[src]fn rem_assign(&mut self, other: &u32)
[src]
fn rem_assign(&mut self, other: &u32)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU64> RemAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac: LeEqU64> RemAssign<&'_ u64> for Wrapping<FixedU64<Frac>>
[src]fn rem_assign(&mut self, other: &u64)
[src]
fn rem_assign(&mut self, other: &u64)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU8> RemAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac: LeEqU8> RemAssign<&'_ u8> for Wrapping<FixedU8<Frac>>
[src]fn rem_assign(&mut self, other: &u8)
[src]
fn rem_assign(&mut self, other: &u8)
[src]Performs the %=
operation. Read more
impl<F: Fixed> RemAssign<Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> RemAssign<Wrapping<F>> for Wrapping<F>
[src]fn rem_assign(&mut self, other: Wrapping<F>)
[src]
fn rem_assign(&mut self, other: Wrapping<F>)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU128> RemAssign<i128> for Wrapping<FixedI128<Frac>>
[src]
impl<Frac: LeEqU128> RemAssign<i128> for Wrapping<FixedI128<Frac>>
[src]fn rem_assign(&mut self, other: i128)
[src]
fn rem_assign(&mut self, other: i128)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU16> RemAssign<i16> for Wrapping<FixedI16<Frac>>
[src]
impl<Frac: LeEqU16> RemAssign<i16> for Wrapping<FixedI16<Frac>>
[src]fn rem_assign(&mut self, other: i16)
[src]
fn rem_assign(&mut self, other: i16)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU32> RemAssign<i32> for Wrapping<FixedI32<Frac>>
[src]
impl<Frac: LeEqU32> RemAssign<i32> for Wrapping<FixedI32<Frac>>
[src]fn rem_assign(&mut self, other: i32)
[src]
fn rem_assign(&mut self, other: i32)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU64> RemAssign<i64> for Wrapping<FixedI64<Frac>>
[src]
impl<Frac: LeEqU64> RemAssign<i64> for Wrapping<FixedI64<Frac>>
[src]fn rem_assign(&mut self, other: i64)
[src]
fn rem_assign(&mut self, other: i64)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU8> RemAssign<i8> for Wrapping<FixedI8<Frac>>
[src]
impl<Frac: LeEqU8> RemAssign<i8> for Wrapping<FixedI8<Frac>>
[src]fn rem_assign(&mut self, other: i8)
[src]
fn rem_assign(&mut self, other: i8)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU128> RemAssign<u128> for Wrapping<FixedU128<Frac>>
[src]
impl<Frac: LeEqU128> RemAssign<u128> for Wrapping<FixedU128<Frac>>
[src]fn rem_assign(&mut self, other: u128)
[src]
fn rem_assign(&mut self, other: u128)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU16> RemAssign<u16> for Wrapping<FixedU16<Frac>>
[src]
impl<Frac: LeEqU16> RemAssign<u16> for Wrapping<FixedU16<Frac>>
[src]fn rem_assign(&mut self, other: u16)
[src]
fn rem_assign(&mut self, other: u16)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU32> RemAssign<u32> for Wrapping<FixedU32<Frac>>
[src]
impl<Frac: LeEqU32> RemAssign<u32> for Wrapping<FixedU32<Frac>>
[src]fn rem_assign(&mut self, other: u32)
[src]
fn rem_assign(&mut self, other: u32)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU64> RemAssign<u64> for Wrapping<FixedU64<Frac>>
[src]
impl<Frac: LeEqU64> RemAssign<u64> for Wrapping<FixedU64<Frac>>
[src]fn rem_assign(&mut self, other: u64)
[src]
fn rem_assign(&mut self, other: u64)
[src]Performs the %=
operation. Read more
impl<Frac: LeEqU8> RemAssign<u8> for Wrapping<FixedU8<Frac>>
[src]
impl<Frac: LeEqU8> RemAssign<u8> for Wrapping<FixedU8<Frac>>
[src]fn rem_assign(&mut self, other: u8)
[src]
fn rem_assign(&mut self, other: u8)
[src]Performs the %=
operation. Read more
impl<F> ShlAssign<&'_ i128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ i128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &i128)
[src]
fn shl_assign(&mut self, other: &i128)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ i16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ i16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &i16)
[src]
fn shl_assign(&mut self, other: &i16)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ i32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ i32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &i32)
[src]
fn shl_assign(&mut self, other: &i32)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ i64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ i64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &i64)
[src]
fn shl_assign(&mut self, other: &i64)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ i8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ i8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &i8)
[src]
fn shl_assign(&mut self, other: &i8)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ isize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ isize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &isize)
[src]
fn shl_assign(&mut self, other: &isize)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ u128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ u128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &u128)
[src]
fn shl_assign(&mut self, other: &u128)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ u16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ u16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &u16)
[src]
fn shl_assign(&mut self, other: &u16)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ u32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ u32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &u32)
[src]
fn shl_assign(&mut self, other: &u32)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ u64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ u64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &u64)
[src]
fn shl_assign(&mut self, other: &u64)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ u8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ u8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &u8)
[src]
fn shl_assign(&mut self, other: &u8)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<&'_ usize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<&'_ usize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: &usize)
[src]
fn shl_assign(&mut self, other: &usize)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<i128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<i128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: i128)
[src]
fn shl_assign(&mut self, other: i128)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<i16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<i16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: i16)
[src]
fn shl_assign(&mut self, other: i16)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<i32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<i32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: i32)
[src]
fn shl_assign(&mut self, other: i32)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<i64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<i64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: i64)
[src]
fn shl_assign(&mut self, other: i64)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<i8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<i8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: i8)
[src]
fn shl_assign(&mut self, other: i8)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<isize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<isize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: isize)
[src]
fn shl_assign(&mut self, other: isize)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<u128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<u128> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: u128)
[src]
fn shl_assign(&mut self, other: u128)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<u16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<u16> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: u16)
[src]
fn shl_assign(&mut self, other: u16)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<u32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<u32> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: u32)
[src]
fn shl_assign(&mut self, other: u32)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<u64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<u64> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: u64)
[src]
fn shl_assign(&mut self, other: u64)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<u8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<u8> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: u8)
[src]
fn shl_assign(&mut self, other: u8)
[src]Performs the <<=
operation. Read more
impl<F> ShlAssign<usize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]
impl<F> ShlAssign<usize> for Wrapping<F> where
F: ShlAssign<u32>,
[src]fn shl_assign(&mut self, other: usize)
[src]
fn shl_assign(&mut self, other: usize)
[src]Performs the <<=
operation. Read more
impl<F> ShrAssign<&'_ i128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ i128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &i128)
[src]
fn shr_assign(&mut self, other: &i128)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ i16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ i16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &i16)
[src]
fn shr_assign(&mut self, other: &i16)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ i32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ i32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &i32)
[src]
fn shr_assign(&mut self, other: &i32)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ i64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ i64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &i64)
[src]
fn shr_assign(&mut self, other: &i64)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ i8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ i8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &i8)
[src]
fn shr_assign(&mut self, other: &i8)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ isize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ isize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &isize)
[src]
fn shr_assign(&mut self, other: &isize)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ u128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ u128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &u128)
[src]
fn shr_assign(&mut self, other: &u128)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ u16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ u16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &u16)
[src]
fn shr_assign(&mut self, other: &u16)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ u32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ u32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &u32)
[src]
fn shr_assign(&mut self, other: &u32)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ u64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ u64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &u64)
[src]
fn shr_assign(&mut self, other: &u64)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ u8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ u8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &u8)
[src]
fn shr_assign(&mut self, other: &u8)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<&'_ usize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<&'_ usize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: &usize)
[src]
fn shr_assign(&mut self, other: &usize)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<i128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<i128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: i128)
[src]
fn shr_assign(&mut self, other: i128)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<i16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<i16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: i16)
[src]
fn shr_assign(&mut self, other: i16)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<i32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<i32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: i32)
[src]
fn shr_assign(&mut self, other: i32)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<i64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<i64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: i64)
[src]
fn shr_assign(&mut self, other: i64)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<i8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<i8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: i8)
[src]
fn shr_assign(&mut self, other: i8)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<isize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<isize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: isize)
[src]
fn shr_assign(&mut self, other: isize)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<u128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<u128> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: u128)
[src]
fn shr_assign(&mut self, other: u128)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<u16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<u16> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: u16)
[src]
fn shr_assign(&mut self, other: u16)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<u32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<u32> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: u32)
[src]
fn shr_assign(&mut self, other: u32)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<u64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<u64> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: u64)
[src]
fn shr_assign(&mut self, other: u64)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<u8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<u8> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: u8)
[src]
fn shr_assign(&mut self, other: u8)
[src]Performs the >>=
operation. Read more
impl<F> ShrAssign<usize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]
impl<F> ShrAssign<usize> for Wrapping<F> where
F: ShrAssign<u32>,
[src]fn shr_assign(&mut self, other: usize)
[src]
fn shr_assign(&mut self, other: usize)
[src]Performs the >>=
operation. Read more
impl<F: Fixed> SubAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> SubAssign<&'_ Wrapping<F>> for Wrapping<F>
[src]fn sub_assign(&mut self, other: &Wrapping<F>)
[src]
fn sub_assign(&mut self, other: &Wrapping<F>)
[src]Performs the -=
operation. Read more
impl<F: Fixed> SubAssign<Wrapping<F>> for Wrapping<F>
[src]
impl<F: Fixed> SubAssign<Wrapping<F>> for Wrapping<F>
[src]fn sub_assign(&mut self, other: Wrapping<F>)
[src]
fn sub_assign(&mut self, other: Wrapping<F>)
[src]Performs the -=
operation. Read more
impl<F: Copy> Copy for Wrapping<F>
[src]
impl<F: Eq> Eq for Wrapping<F>
[src]
impl<Frac: LeEqU8> Pod for Wrapping<FixedI8<Frac>>
[src]
impl<Frac: LeEqU16> Pod for Wrapping<FixedI16<Frac>>
[src]
impl<Frac: LeEqU32> Pod for Wrapping<FixedI32<Frac>>
[src]
impl<Frac: LeEqU64> Pod for Wrapping<FixedI64<Frac>>
[src]
impl<Frac: LeEqU128> Pod for Wrapping<FixedI128<Frac>>
[src]
impl<Frac: LeEqU8> Pod for Wrapping<FixedU8<Frac>>
[src]
impl<Frac: LeEqU16> Pod for Wrapping<FixedU16<Frac>>
[src]
impl<Frac: LeEqU32> Pod for Wrapping<FixedU32<Frac>>
[src]
impl<Frac: LeEqU64> Pod for Wrapping<FixedU64<Frac>>
[src]
impl<Frac: LeEqU128> Pod for Wrapping<FixedU128<Frac>>
[src]
impl<F> StructuralEq for Wrapping<F>
[src]
impl<F> StructuralPartialEq for Wrapping<F>
[src]
Auto Trait Implementations
impl<F> RefUnwindSafe for Wrapping<F> where
F: RefUnwindSafe,
F: RefUnwindSafe,
impl<F> Send for Wrapping<F> where
F: Send,
F: Send,
impl<F> Sync for Wrapping<F> where
F: Sync,
F: Sync,
impl<F> Unpin for Wrapping<F> where
F: Unpin,
F: Unpin,
impl<F> UnwindSafe for Wrapping<F> where
F: UnwindSafe,
F: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> CheckedAs for T
[src]
impl<T> CheckedAs for T
[src]pub fn checked_as<Dst>(self) -> Option<Dst> where
T: CheckedCast<Dst>,
[src]
pub fn checked_as<Dst>(self) -> Option<Dst> where
T: CheckedCast<Dst>,
[src]Casts the value.
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]pub fn lossless_try_into(Self) -> Option<Dst>
[src]
pub fn lossless_try_into(Self) -> Option<Dst>
[src]Performs the conversion.
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]pub fn lossy_into(Self) -> Dst
[src]
pub fn lossy_into(Self) -> Dst
[src]Performs the conversion.
impl<T> OverflowingAs for T
[src]
impl<T> OverflowingAs for T
[src]pub fn overflowing_as<Dst>(self) -> (Dst, bool) where
T: OverflowingCast<Dst>,
[src]
pub fn overflowing_as<Dst>(self) -> (Dst, bool) where
T: OverflowingCast<Dst>,
[src]Casts the value.
impl<T> SaturatingAs for T
[src]
impl<T> SaturatingAs for T
[src]pub fn saturating_as<Dst>(self) -> Dst where
T: SaturatingCast<Dst>,
[src]
pub fn saturating_as<Dst>(self) -> Dst where
T: SaturatingCast<Dst>,
[src]Casts the value.
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> UnwrappedAs for T
[src]
impl<T> UnwrappedAs for T
[src]pub fn unwrapped_as<Dst>(self) -> Dst where
T: UnwrappedCast<Dst>,
[src]
pub fn unwrapped_as<Dst>(self) -> Dst where
T: UnwrappedCast<Dst>,
[src]Casts the value.
impl<T> WrappingAs for T
[src]
impl<T> WrappingAs for T
[src]pub fn wrapping_as<Dst>(self) -> Dst where
T: WrappingCast<Dst>,
[src]
pub fn wrapping_as<Dst>(self) -> Dst where
T: WrappingCast<Dst>,
[src]Casts the value.
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
[src]
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
[src]
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
impl<T, Base> RefNum<Base> for T where
T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,
[src]
T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,