Struct everscale_types::num::Tokens

source ·
#[repr(transparent)]
pub struct Tokens(_);
Expand description

Variable-length 120-bit integer. Used for native currencies.

Stored as 4 bits of len (0..=15), followed by len bytes.

Implementations§

source§

impl Tokens

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 = 4u16

The number of data bits that the length occupies.

source

pub const MAX_BITS: u16 = 124u16

The maximum number of data bits that this struct occupies.

source

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

Creates a new integer value from a primitive integer.

source

pub const fn into_inner(self) -> u128

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<Tokens> for Tokens

§

type Output = Tokens

The resulting type after applying the + operator.
source§

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

Performs the + operation. Read more
source§

impl Add<u128> for Tokens

§

type Output = Tokens

The resulting type after applying the + operator.
source§

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

Performs the + operation. Read more
source§

impl AddAssign<Tokens> for Tokens

source§

fn add_assign(&mut self, rhs: Self)

Performs the += operation. Read more
source§

impl AddAssign<u128> for Tokens

source§

fn add_assign(&mut self, rhs: u128)

Performs the += operation. Read more
source§

impl Binary for Tokens

source§

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

Formats the value using the given formatter.
source§

impl Clone for Tokens

source§

fn clone(&self) -> Tokens

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 Tokens

source§

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

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

impl Default for Tokens

source§

fn default() -> Tokens

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

impl Display for Tokens

source§

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

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

impl Div<Tokens> for Tokens

§

type Output = Tokens

The resulting type after applying the / operator.
source§

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

Performs the / operation. Read more
source§

impl Div<u128> for Tokens

§

type Output = Tokens

The resulting type after applying the / operator.
source§

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

Performs the / operation. Read more
source§

impl DivAssign<Tokens> for Tokens

source§

fn div_assign(&mut self, rhs: Self)

Performs the /= operation. Read more
source§

impl DivAssign<u128> for Tokens

source§

fn div_assign(&mut self, rhs: u128)

Performs the /= operation. Read more
source§

impl From<Tokens> for u128

source§

fn from(value: Tokens) -> Self

Converts to this type from the input type.
source§

impl FromStr for Tokens

§

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 Tokens

source§

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

Tries to load itself from a cell slice.
source§

impl LowerHex for Tokens

source§

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

Formats the value using the given formatter.
source§

impl Mul<Tokens> for Tokens

§

type Output = Tokens

The resulting type after applying the * operator.
source§

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

Performs the * operation. Read more
source§

impl Mul<u128> for Tokens

§

type Output = Tokens

The resulting type after applying the * operator.
source§

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

Performs the * operation. Read more
source§

impl MulAssign<Tokens> for Tokens

source§

fn mul_assign(&mut self, rhs: Self)

Performs the *= operation. Read more
source§

impl MulAssign<u128> for Tokens

source§

fn mul_assign(&mut self, rhs: u128)

Performs the *= operation. Read more
source§

impl Ord for Tokens

source§

fn cmp(&self, other: &Tokens) -> 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<Tokens> for Tokens

source§

fn eq(&self, other: &Tokens) -> 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<Tokens> for u128

source§

fn eq(&self, other: &Tokens) -> 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<u128> for Tokens

source§

fn eq(&self, other: &u128) -> 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<Tokens> for Tokens

source§

fn partial_cmp(&self, other: &Tokens) -> 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 Tokens

§

type Output = Tokens

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 Tokens

source§

fn shl_assign(&mut self, rhs: u8)

Performs the <<= operation. Read more
source§

impl Shr<u8> for Tokens

§

type Output = Tokens

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 Tokens

source§

fn shr_assign(&mut self, rhs: u8)

Performs the >>= operation. Read more
source§

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

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<Tokens> for Tokens

§

type Output = Tokens

The resulting type after applying the - operator.
source§

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

Performs the - operation. Read more
source§

impl Sub<u128> for Tokens

§

type Output = Tokens

The resulting type after applying the - operator.
source§

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

Performs the - operation. Read more
source§

impl SubAssign<Tokens> for Tokens

source§

fn sub_assign(&mut self, rhs: Self)

Performs the -= operation. Read more
source§

impl SubAssign<u128> for Tokens

source§

fn sub_assign(&mut self, rhs: u128)

Performs the -= operation. Read more
source§

impl UpperHex for Tokens

source§

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

Formats the value using the given formatter.
source§

impl Copy for Tokens

source§

impl Eq for Tokens

source§

impl StructuralEq for Tokens

source§

impl StructuralPartialEq for Tokens

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.