pub struct u3(/* private fields */);
Expand description
The 3-bit unsigned integer type.
Implementations§
Source§impl u3
impl u3
Sourcepub const fn min_value() -> Self
pub const fn min_value() -> Self
Returns the smallest value that can be represented by this integer type.
Sourcepub const fn max_value() -> Self
pub const fn max_value() -> Self
Returns the largest value that can be represented by this integer type.
pub fn new(value: u8) -> Self
Sourcepub const fn wrapping_sub(self, rhs: Self) -> Self
pub const fn wrapping_sub(self, rhs: Self) -> Self
Wrapping (modular) subtraction. Computes self - other
,
wrapping around at the boundary of the type.
§Examples
Basic usage:
use num_x::*;
assert_eq!(i5::MIN.wrapping_sub(i5::new(1)), i5::MAX);
assert_eq!(i5::new(-10).wrapping_sub(i5::new(5)), i5::new(-15));
assert_eq!(i5::new(-15).wrapping_sub(i5::new(5)), i5::new(12));
Sourcepub const fn wrapping_add(self, rhs: Self) -> Self
pub const fn wrapping_add(self, rhs: Self) -> Self
Wrapping (modular) addition. Computes self + other
,
wrapping around at the boundary of the type.
§Examples
Basic usage:
use num_x::*;
assert_eq!(i5::MAX.wrapping_add(i5::new(1)), i5::MIN);
assert_eq!(i5::new(10).wrapping_add(i5::new(5)), i5::new(15));
assert_eq!(i5::new(15).wrapping_add(i5::new(5)), i5::new(-12));
pub const fn capacity(self) -> u32
pub const fn rotate_left(self, n: u32) -> Self
pub const fn rotate_right(self, n: u32) -> Self
pub const fn count_ones(self) -> u32
pub const fn count_zeros(self) -> u32
pub const fn leading_zeros(self) -> u32
pub const fn trailing_zeros(self) -> u32
pub const fn reverse_bits(self) -> Self
pub const fn is_power_of_two(self) -> bool
Trait Implementations§
Source§impl BitAndAssign for u3
impl BitAndAssign for u3
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
Performs the
&=
operation. Read moreSource§impl BitOrAssign for u3
impl BitOrAssign for u3
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
Performs the
|=
operation. Read moreSource§impl BitXorAssign for u3
impl BitXorAssign for u3
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
Performs the
^=
operation. Read moreSource§impl Ord for u3
impl Ord for u3
Source§impl PartialOrd for u3
impl PartialOrd for u3
Source§impl<T> ShlAssign<T> for u3
impl<T> ShlAssign<T> for u3
Source§fn shl_assign(&mut self, rhs: T)
fn shl_assign(&mut self, rhs: T)
Performs the
<<=
operation. Read moreSource§impl<T> ShrAssign<T> for u3
impl<T> ShrAssign<T> for u3
Source§fn shr_assign(&mut self, rhs: T)
fn shr_assign(&mut self, rhs: T)
Performs the
>>=
operation. Read moreimpl Copy for u3
impl Eq for u3
Auto Trait Implementations§
impl Freeze for u3
impl RefUnwindSafe for u3
impl Send for u3
impl Sync for u3
impl Unpin for u3
impl UnwindSafe for u3
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more