pub trait Truncate: Integer {
// Required method
fn truncate<T>(self) -> T
where Self: TruncateTarget<T>;
}
Expand description
Truncate to an integer of the same size or smaller, preserving the least significant bits.
assert_eq!(u16::MAX.truncate::<u8>(), u8::MAX);
assert_eq!(u32::MAX.truncate::<u16>(), u16::MAX);
assert_eq!(u64::MAX.truncate::<u32>(), u32::MAX);
assert_eq!(u128::MAX.truncate::<u64>(), u64::MAX);
assert_eq!((-1_i16).truncate::<i8>(), -1_i8);
assert_eq!((-1_i32).truncate::<i16>(), -1_i16);
assert_eq!((-1_i64).truncate::<i32>(), -1_i32);
assert_eq!((-1_i128).truncate::<i64>(), -1_i64);
Required Methods§
sourcefn truncate<T>(self) -> Twhere
Self: TruncateTarget<T>,
fn truncate<T>(self) -> Twhere
Self: TruncateTarget<T>,
Truncate an integer to an integer of the same size or smaller, preserving the least significant bits.
Object Safety§
This trait is not object safe.