#[repr(transparent)]
pub struct VarUint24(_);
Expand description

Variable-length 24-bit integer.

Stored as 2 bits of len (0..=3), followed by len bytes.

Implementations§

source§

impl VarUint24

source

pub const ZERO: Self = _

The additive identity for this integer type, i.e. 0.

source

pub const ONE: Self = _

The multiplicative identity for this integer type, i.e. 1.

source

pub const MIN: Self = _

The smallest value that can be represented by this integer type.

source

pub const MAX: Self = _

The largest value that can be represented by this integer type.

source

pub const LEN_BITS: u16 = 2u16

The number of data bits that the length occupies.

source

pub const MAX_BITS: u16 = 26u16

The maximum number of data bits that this struct occupies.

source

pub const fn new(value: u32) -> Self

Creates a new integer value from a primitive integer.

source

pub const fn into_inner(self) -> u32

Converts integer into an underlying primitive integer.

source

pub const fn is_zero(&self) -> bool

Returns true if an underlying primitive integer is zero.

source

pub const fn is_valid(&self) -> bool

Returns true if an underlying primitive integer fits into the repr.

source

pub const fn bit_len(&self) -> Option<u16>

Returns number of data bits that this struct occupies. Returns None if an underlying primitive integer is too large.

source

pub const fn unwrap_bit_len(&self) -> u16

Returns number of data bits that this struct occupies. Returns MAX_BITS if an underlying primitive integer is too large.

source

pub const fn checked_add(self, rhs: Self) -> Option<Self>

Checked integer addition. Computes self + rhs, returning None if overflow occurred.

source

pub const fn checked_sub(self, rhs: Self) -> Option<Self>

Checked integer subtraction. Computes self - rhs, returning None if overflow occurred.

source

pub const fn checked_mul(self, rhs: Self) -> Option<Self>

Checked integer multiplication. Computes self * rhs, returning None if overflow occurred.

source

pub const fn checked_div(self, rhs: Self) -> Option<Self>

Checked integer division. Computes self / rhs, returning None if rhs == 0 or overflow occurred.

Trait Implementations§

source§

impl Add<VarUint24> for VarUint24

§

type Output = VarUint24

The resulting type after applying the + operator.
source§

fn add(self, rhs: Self) -> Self::Output

Performs the + operation. Read more
source§

impl Add<u32> for VarUint24

§

type Output = VarUint24

The resulting type after applying the + operator.
source§

fn add(self, rhs: u32) -> Self::Output

Performs the + operation. Read more
source§

impl AddAssign<VarUint24> for VarUint24

source§

fn add_assign(&mut self, rhs: Self)

Performs the += operation. Read more
source§

impl AddAssign<u32> for VarUint24

source§

fn add_assign(&mut self, rhs: u32)

Performs the += operation. Read more
source§

impl Binary for VarUint24

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl Clone for VarUint24

source§

fn clone(&self) -> VarUint24

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for VarUint24

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for VarUint24

source§

fn default() -> VarUint24

Returns the “default value” for a type. Read more
source§

impl Display for VarUint24

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Div<VarUint24> for VarUint24

§

type Output = VarUint24

The resulting type after applying the / operator.
source§

fn div(self, rhs: Self) -> Self::Output

Performs the / operation. Read more
source§

impl Div<u32> for VarUint24

§

type Output = VarUint24

The resulting type after applying the / operator.
source§

fn div(self, rhs: u32) -> Self::Output

Performs the / operation. Read more
source§

impl DivAssign<VarUint24> for VarUint24

source§

fn div_assign(&mut self, rhs: Self)

Performs the /= operation. Read more
source§

impl DivAssign<u32> for VarUint24

source§

fn div_assign(&mut self, rhs: u32)

Performs the /= operation. Read more
source§

impl From<VarUint24> for u32

source§

fn from(value: VarUint24) -> Self

Converts to this type from the input type.
source§

impl FromStr for VarUint24

§

type Err = ParseIntError

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl<'a, C: CellFamily> Load<'a, C> for VarUint24

source§

fn load_from(slice: &mut CellSlice<'a, C>) -> Option<Self>

Tries to load itself from a cell slice.
source§

impl LowerHex for VarUint24

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl Mul<VarUint24> for VarUint24

§

type Output = VarUint24

The resulting type after applying the * operator.
source§

fn mul(self, rhs: Self) -> Self::Output

Performs the * operation. Read more
source§

impl Mul<u32> for VarUint24

§

type Output = VarUint24

The resulting type after applying the * operator.
source§

fn mul(self, rhs: u32) -> Self::Output

Performs the * operation. Read more
source§

impl MulAssign<VarUint24> for VarUint24

source§

fn mul_assign(&mut self, rhs: Self)

Performs the *= operation. Read more
source§

impl MulAssign<u32> for VarUint24

source§

fn mul_assign(&mut self, rhs: u32)

Performs the *= operation. Read more
source§

impl Ord for VarUint24

source§

fn cmp(&self, other: &VarUint24) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl PartialEq<VarUint24> for VarUint24

source§

fn eq(&self, other: &VarUint24) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialEq<VarUint24> for u32

source§

fn eq(&self, other: &VarUint24) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialEq<u32> for VarUint24

source§

fn eq(&self, other: &u32) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<VarUint24> for VarUint24

source§

fn partial_cmp(&self, other: &VarUint24) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Shl<u8> for VarUint24

§

type Output = VarUint24

The resulting type after applying the << operator.
source§

fn shl(self, rhs: u8) -> Self::Output

Performs the << operation. Read more
source§

impl ShlAssign<u8> for VarUint24

source§

fn shl_assign(&mut self, rhs: u8)

Performs the <<= operation. Read more
source§

impl Shr<u8> for VarUint24

§

type Output = VarUint24

The resulting type after applying the >> operator.
source§

fn shr(self, rhs: u8) -> Self::Output

Performs the >> operation. Read more
source§

impl ShrAssign<u8> for VarUint24

source§

fn shr_assign(&mut self, rhs: u8)

Performs the >>= operation. Read more
source§

impl<C: CellFamily> Store<C> for VarUint24

source§

fn store_into( &self, builder: &mut CellBuilder<C>, _: &mut dyn Finalizer<C> ) -> bool

Tries to store itself into the cell builder.
source§

impl Sub<VarUint24> for VarUint24

§

type Output = VarUint24

The resulting type after applying the - operator.
source§

fn sub(self, rhs: Self) -> Self::Output

Performs the - operation. Read more
source§

impl Sub<u32> for VarUint24

§

type Output = VarUint24

The resulting type after applying the - operator.
source§

fn sub(self, rhs: u32) -> Self::Output

Performs the - operation. Read more
source§

impl SubAssign<VarUint24> for VarUint24

source§

fn sub_assign(&mut self, rhs: Self)

Performs the -= operation. Read more
source§

impl SubAssign<u32> for VarUint24

source§

fn sub_assign(&mut self, rhs: u32)

Performs the -= operation. Read more
source§

impl UpperHex for VarUint24

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter.
source§

impl Copy for VarUint24

source§

impl Eq for VarUint24

source§

impl StructuralEq for VarUint24

source§

impl StructuralPartialEq for VarUint24

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.