Struct scrypto::math::U256

source ·
#[repr(transparent)]
pub struct U256(pub BUint<4>);
Expand description

Provides safe integer arithmetic.

Operations like +, ‘-’, ‘*’, or ‘/’ sometimes produce overflow which is detected and results in a panic, in of silently wrapping around.

The bit length of output type will be the greater one in the math operation, and if any of the types was signed, then the resulting type will be signed too, otherwise the output type is unsigned.

The underlying value can be retrieved through the .0 index of the U256 tuple.

Layout

U256 will have the same methods and traits as the built-in counterpart.

Tuple Fields§

§0: BUint<4>

Implementations§

source§

impl U256

source

pub const fn count_ones(self) -> u32

Returns the number of ones in the binary representation of self.

source

pub const fn count_zeros(self) -> u32

Returns the number of zeros in the binary representation of self.

source

pub const fn trailing_zeros(self) -> u32

Returns the number of trailing zeros in the binary representation of self.

source

pub const fn swap_bytes(self) -> U256

Reverses the byte order of the integer.

source

pub const fn reverse_bits(self) -> U256

Reverses the bit pattern of the integer.

source

pub const fn leading_zeros(self) -> u32

Returns the number of leading zeros in the binary representation of self.

source

pub const fn from_be(x: U256) -> U256

Converts an integer from big endian to the target’s endianness.

On big endian this is a no-op. On little endian the bytes are swapped.

source

pub const fn from_le(x: U256) -> U256

Converts an integer from little endian to the target’s endianness.

On little endian this is a no-op. On big endian the bytes are swapped.

source

pub const fn to_be(self) -> U256

Converts self to big endian from the target’s endianness.

On big endian this is a no-op. On little endian the bytes are swapped.

source

pub const fn to_le(self) -> U256

Converts self to little endian from the target’s endianness.

On little endian this is a no-op. On big endian the bytes are swapped.

source§

impl U256

source

pub fn from_le_bytes(bytes: &[u8]) -> U256

source§

impl U256

source

pub fn to_le_bytes(&self) -> [u8; 32]

source§

impl U256

source

pub const fn from_digits(digits: [u64; 4]) -> U256

source

pub const fn to_digits(&self) -> [u64; 4]

source§

impl U256

source

pub const MIN: U256 = Self(BUint<4>::MIN)

source

pub const MAX: U256 = Self(BUint<4>::MAX)

source

pub const ZERO: U256 = Self(BUint<4>::ZERO)

source

pub const ONE: U256 = Self(BUint<4>::ONE)

source

pub const TEN: U256 = Self(BUint<4>::TEN)

source

pub const BITS: u32 = 256u32

source

pub const BYTES: u32 = 32u32

source

pub const N: usize = 4usize

source§

impl U256

Trait Implementations§

source§

impl Add<&U256> for &U256

§

type Output = <U256 as Add<U256>>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: &U256) -> <U256 as Add<U256>>::Output

Performs the + operation. Read more
source§

impl Add<&U256> for U256

§

type Output = <U256 as Add<U256>>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: &U256) -> <U256 as Add<U256>>::Output

Performs the + operation. Read more
source§

impl Add<Decimal> for U256

§

type Output = Decimal

The resulting type after applying the + operator.
source§

fn add(self, other: Decimal) -> <U256 as Add<Decimal>>::Output

Performs the + operation. Read more
source§

impl Add<PreciseDecimal> for U256

§

type Output = PreciseDecimal

The resulting type after applying the + operator.
source§

fn add(self, other: PreciseDecimal) -> <U256 as Add<PreciseDecimal>>::Output

Performs the + operation. Read more
source§

impl<'a> Add<U256> for &'a U256

§

type Output = <U256 as Add<U256>>::Output

The resulting type after applying the + operator.
source§

fn add(self, other: U256) -> <U256 as Add<U256>>::Output

Performs the + operation. Read more
source§

impl Add<U256> for Decimal

§

type Output = Decimal

The resulting type after applying the + operator.
source§

fn add(self, other: U256) -> <Decimal as Add<U256>>::Output

Performs the + operation. Read more
source§

impl Add<U256> for PreciseDecimal

§

type Output = PreciseDecimal

The resulting type after applying the + operator.
source§

fn add(self, other: U256) -> <PreciseDecimal as Add<U256>>::Output

Performs the + operation. Read more
source§

impl Add<U256> for U256

§

type Output = U256

The resulting type after applying the + operator.
source§

fn add(self, other: U256) -> U256

Performs the + operation. Read more
source§

impl AddAssign<&U256> for U256

source§

fn add_assign(&mut self, other: &U256)

Performs the += operation. Read more
source§

impl AddAssign<U256> for Decimal

source§

fn add_assign(&mut self, other: U256)

Performs the += operation. Read more
source§

impl AddAssign<U256> for PreciseDecimal

source§

fn add_assign(&mut self, other: U256)

Performs the += operation. Read more
source§

impl AddAssign<U256> for U256

source§

fn add_assign(&mut self, other: U256)

Performs the += operation. Read more
source§

impl BitAnd<U256> for U256

§

type Output = U256

The resulting type after applying the & operator.
source§

fn bitand(self, other: U256) -> U256

Performs the & operation. Read more
source§

impl BitAndAssign<U256> for U256

source§

fn bitand_assign(&mut self, other: U256)

Performs the &= operation. Read more
source§

impl BitOr<U256> for U256

§

type Output = U256

The resulting type after applying the | operator.
source§

fn bitor(self, other: U256) -> U256

Performs the | operation. Read more
source§

impl BitOrAssign<U256> for U256

source§

fn bitor_assign(&mut self, other: U256)

Performs the |= operation. Read more
source§

impl BitXor<U256> for U256

§

type Output = U256

The resulting type after applying the ^ operator.
source§

fn bitxor(self, other: U256) -> U256

Performs the ^ operation. Read more
source§

impl BitXorAssign<U256> for U256

source§

fn bitxor_assign(&mut self, other: U256)

Performs the ^= operation. Read more
source§

impl Cbrt for U256

source§

fn cbrt(self) -> U256

source§

impl CheckedAdd<Decimal> for U256

source§

impl CheckedAdd<PreciseDecimal> for U256

source§

impl CheckedAdd<U256> for Decimal

source§

impl CheckedAdd<U256> for PreciseDecimal

source§

impl CheckedAdd<U256> for U256

source§

impl CheckedDiv<Decimal> for U256

source§

impl CheckedDiv<PreciseDecimal> for U256

source§

impl CheckedDiv<U256> for Decimal

source§

impl CheckedDiv<U256> for PreciseDecimal

source§

impl CheckedDiv<U256> for U256

source§

impl CheckedMul<Decimal> for U256

source§

impl CheckedMul<PreciseDecimal> for U256

source§

impl CheckedMul<U256> for Decimal

source§

impl CheckedMul<U256> for PreciseDecimal

source§

impl CheckedMul<U256> for U256

source§

impl CheckedSub<Decimal> for U256

source§

impl CheckedSub<PreciseDecimal> for U256

source§

impl CheckedSub<U256> for Decimal

source§

impl CheckedSub<U256> for PreciseDecimal

source§

impl CheckedSub<U256> for U256

source§

impl Clone for U256

source§

fn clone(&self) -> U256

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 U256

source§

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

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

impl Default for U256

source§

fn default() -> U256

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

impl Display for U256

source§

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

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

impl Div<&U256> for &U256

§

type Output = <U256 as Div<U256>>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: &U256) -> <U256 as Div<U256>>::Output

Performs the / operation. Read more
source§

impl Div<&U256> for U256

§

type Output = <U256 as Div<U256>>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: &U256) -> <U256 as Div<U256>>::Output

Performs the / operation. Read more
source§

impl Div<Decimal> for U256

§

type Output = Decimal

The resulting type after applying the / operator.
source§

fn div(self, other: Decimal) -> <U256 as Div<Decimal>>::Output

Performs the / operation. Read more
source§

impl Div<PreciseDecimal> for U256

§

type Output = PreciseDecimal

The resulting type after applying the / operator.
source§

fn div(self, other: PreciseDecimal) -> <U256 as Div<PreciseDecimal>>::Output

Performs the / operation. Read more
source§

impl<'a> Div<U256> for &'a U256

§

type Output = <U256 as Div<U256>>::Output

The resulting type after applying the / operator.
source§

fn div(self, other: U256) -> <U256 as Div<U256>>::Output

Performs the / operation. Read more
source§

impl Div<U256> for Decimal

§

type Output = Decimal

The resulting type after applying the / operator.
source§

fn div(self, other: U256) -> <Decimal as Div<U256>>::Output

Performs the / operation. Read more
source§

impl Div<U256> for PreciseDecimal

§

type Output = PreciseDecimal

The resulting type after applying the / operator.
source§

fn div(self, other: U256) -> <PreciseDecimal as Div<U256>>::Output

Performs the / operation. Read more
source§

impl Div<U256> for U256

§

type Output = U256

The resulting type after applying the / operator.
source§

fn div(self, other: U256) -> U256

Performs the / operation. Read more
source§

impl DivAssign<&U256> for U256

source§

fn div_assign(&mut self, other: &U256)

Performs the /= operation. Read more
source§

impl DivAssign<U256> for Decimal

source§

fn div_assign(&mut self, other: U256)

Performs the /= operation. Read more
source§

impl DivAssign<U256> for PreciseDecimal

source§

fn div_assign(&mut self, other: U256)

Performs the /= operation. Read more
source§

impl DivAssign<U256> for U256

source§

fn div_assign(&mut self, other: U256)

Performs the /= operation. Read more
source§

impl From<U192> for U256

source§

fn from(val: U192) -> U256

Converts to this type from the input type.
source§

impl From<U256> for BigInt

source§

fn from(val: U256) -> BigInt

Converts to this type from the input type.
source§

impl From<U256> for I320

source§

fn from(val: U256) -> I320

Converts to this type from the input type.
source§

impl From<U256> for I384

source§

fn from(val: U256) -> I384

Converts to this type from the input type.
source§

impl From<U256> for I448

source§

fn from(val: U256) -> I448

Converts to this type from the input type.
source§

impl From<U256> for I512

source§

fn from(val: U256) -> I512

Converts to this type from the input type.
source§

impl From<U256> for I768

source§

fn from(val: U256) -> I768

Converts to this type from the input type.
source§

impl From<U256> for U320

source§

fn from(val: U256) -> U320

Converts to this type from the input type.
source§

impl From<U256> for U384

source§

fn from(val: U256) -> U384

Converts to this type from the input type.
source§

impl From<U256> for U448

source§

fn from(val: U256) -> U448

Converts to this type from the input type.
source§

impl From<U256> for U512

source§

fn from(val: U256) -> U512

Converts to this type from the input type.
source§

impl From<U256> for U768

source§

fn from(val: U256) -> U768

Converts to this type from the input type.
source§

impl From<u128> for U256

source§

fn from(val: u128) -> U256

Converts to this type from the input type.
source§

impl From<u16> for U256

source§

fn from(val: u16) -> U256

Converts to this type from the input type.
source§

impl From<u32> for U256

source§

fn from(val: u32) -> U256

Converts to this type from the input type.
source§

impl From<u64> for U256

source§

fn from(val: u64) -> U256

Converts to this type from the input type.
source§

impl From<u8> for U256

source§

fn from(val: u8) -> U256

Converts to this type from the input type.
source§

impl From<usize> for U256

source§

fn from(val: usize) -> U256

Converts to this type from the input type.
source§

impl FromPrimitive for U256

source§

fn from_u8(n: u8) -> Option<U256>

Converts an u8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<U256>

Converts an u16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<U256>

Converts an u32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<U256>

Converts an u64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<U256>

Converts an u128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<U256>

Converts a usize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<U256>

Converts an i8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<U256>

Converts an i16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<U256>

Converts an i32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i64(n: i64) -> Option<U256>

Converts an i64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<U256>

Converts an i128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_isize(n: isize) -> Option<U256>

Converts an isize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_f32(n: f32) -> Option<Self>

Converts a f32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<Self>

Converts a f64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

impl FromStr for U256

§

type Err = ParseU256Error

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

fn from_str(val: &str) -> Result<U256, <U256 as FromStr>::Err>

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

impl Hash for U256

source§

fn hash<H>(&self, state: &mut H)where H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Mul<&U256> for &U256

§

type Output = <U256 as Mul<U256>>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: &U256) -> <U256 as Mul<U256>>::Output

Performs the * operation. Read more
source§

impl Mul<&U256> for U256

§

type Output = <U256 as Mul<U256>>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: &U256) -> <U256 as Mul<U256>>::Output

Performs the * operation. Read more
source§

impl Mul<Decimal> for U256

§

type Output = Decimal

The resulting type after applying the * operator.
source§

fn mul(self, other: Decimal) -> <U256 as Mul<Decimal>>::Output

Performs the * operation. Read more
source§

impl Mul<PreciseDecimal> for U256

§

type Output = PreciseDecimal

The resulting type after applying the * operator.
source§

fn mul(self, other: PreciseDecimal) -> <U256 as Mul<PreciseDecimal>>::Output

Performs the * operation. Read more
source§

impl<'a> Mul<U256> for &'a U256

§

type Output = <U256 as Mul<U256>>::Output

The resulting type after applying the * operator.
source§

fn mul(self, other: U256) -> <U256 as Mul<U256>>::Output

Performs the * operation. Read more
source§

impl Mul<U256> for Decimal

§

type Output = Decimal

The resulting type after applying the * operator.
source§

fn mul(self, other: U256) -> <Decimal as Mul<U256>>::Output

Performs the * operation. Read more
source§

impl Mul<U256> for PreciseDecimal

§

type Output = PreciseDecimal

The resulting type after applying the * operator.
source§

fn mul(self, other: U256) -> <PreciseDecimal as Mul<U256>>::Output

Performs the * operation. Read more
source§

impl Mul<U256> for U256

§

type Output = U256

The resulting type after applying the * operator.
source§

fn mul(self, other: U256) -> U256

Performs the * operation. Read more
source§

impl MulAssign<&U256> for U256

source§

fn mul_assign(&mut self, other: &U256)

Performs the *= operation. Read more
source§

impl MulAssign<U256> for Decimal

source§

fn mul_assign(&mut self, other: U256)

Performs the *= operation. Read more
source§

impl MulAssign<U256> for PreciseDecimal

source§

fn mul_assign(&mut self, other: U256)

Performs the *= operation. Read more
source§

impl MulAssign<U256> for U256

source§

fn mul_assign(&mut self, other: U256)

Performs the *= operation. Read more
source§

impl Not for &U256

§

type Output = <U256 as Not>::Output

The resulting type after applying the ! operator.
source§

fn not(self) -> <U256 as Not>::Output

Performs the unary ! operation. Read more
source§

impl Not for U256

§

type Output = U256

The resulting type after applying the ! operator.
source§

fn not(self) -> U256

Performs the unary ! operation. Read more
source§

impl NthRoot for U256

source§

fn nth_root(self, n: u32) -> U256

source§

impl One for U256

source§

fn one() -> U256

Returns the multiplicative identity element of Self, 1. Read more
source§

fn set_one(&mut self)

Sets self to the multiplicative identity element of Self, 1.
source§

fn is_one(&self) -> boolwhere Self: PartialEq<Self>,

Returns true if self is equal to the multiplicative identity. Read more
source§

impl Ord for U256

source§

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

source§

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

source§

fn partial_cmp(&self, other: &U256) -> 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 Pow<u32> for U256

source§

fn pow(self, exp: u32) -> U256

Raises self to the power of exp, using exponentiation by squaring.

§

type Output = U256

The result after applying the operator.
source§

impl Rem<&U256> for &U256

§

type Output = <U256 as Rem<U256>>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: &U256) -> <U256 as Rem<U256>>::Output

Performs the % operation. Read more
source§

impl Rem<&U256> for U256

§

type Output = <U256 as Rem<U256>>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: &U256) -> <U256 as Rem<U256>>::Output

Performs the % operation. Read more
source§

impl<'a> Rem<U256> for &'a U256

§

type Output = <U256 as Rem<U256>>::Output

The resulting type after applying the % operator.
source§

fn rem(self, other: U256) -> <U256 as Rem<U256>>::Output

Performs the % operation. Read more
source§

impl Rem<U256> for U256

§

type Output = U256

The resulting type after applying the % operator.
source§

fn rem(self, other: U256) -> U256

Performs the % operation. Read more
source§

impl RemAssign<&U256> for U256

source§

fn rem_assign(&mut self, other: &U256)

Performs the %= operation. Read more
source§

impl RemAssign<U256> for U256

source§

fn rem_assign(&mut self, other: U256)

Performs the %= operation. Read more
source§

impl Shl<u32> for U256

§

type Output = U256

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

fn shl(self, other: u32) -> U256

Performs the << operation. Read more
source§

impl ShlAssign<u32> for U256

source§

fn shl_assign(&mut self, other: u32)

Performs the <<= operation. Read more
source§

impl Shr<u32> for U256

§

type Output = U256

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

fn shr(self, other: u32) -> U256

Performs the >> operation. Read more
source§

impl ShrAssign<u32> for U256

source§

fn shr_assign(&mut self, other: u32)

Performs the >>= operation. Read more
source§

impl Sqrt for U256

source§

fn sqrt(self) -> U256

source§

impl Sub<&U256> for &U256

§

type Output = <U256 as Sub<U256>>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: &U256) -> <U256 as Sub<U256>>::Output

Performs the - operation. Read more
source§

impl Sub<&U256> for U256

§

type Output = <U256 as Sub<U256>>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: &U256) -> <U256 as Sub<U256>>::Output

Performs the - operation. Read more
source§

impl Sub<Decimal> for U256

§

type Output = Decimal

The resulting type after applying the - operator.
source§

fn sub(self, other: Decimal) -> <U256 as Sub<Decimal>>::Output

Performs the - operation. Read more
source§

impl Sub<PreciseDecimal> for U256

§

type Output = PreciseDecimal

The resulting type after applying the - operator.
source§

fn sub(self, other: PreciseDecimal) -> <U256 as Sub<PreciseDecimal>>::Output

Performs the - operation. Read more
source§

impl<'a> Sub<U256> for &'a U256

§

type Output = <U256 as Sub<U256>>::Output

The resulting type after applying the - operator.
source§

fn sub(self, other: U256) -> <U256 as Sub<U256>>::Output

Performs the - operation. Read more
source§

impl Sub<U256> for Decimal

§

type Output = Decimal

The resulting type after applying the - operator.
source§

fn sub(self, other: U256) -> <Decimal as Sub<U256>>::Output

Performs the - operation. Read more
source§

impl Sub<U256> for PreciseDecimal

§

type Output = PreciseDecimal

The resulting type after applying the - operator.
source§

fn sub(self, other: U256) -> <PreciseDecimal as Sub<U256>>::Output

Performs the - operation. Read more
source§

impl Sub<U256> for U256

§

type Output = U256

The resulting type after applying the - operator.
source§

fn sub(self, other: U256) -> U256

Performs the - operation. Read more
source§

impl SubAssign<&U256> for U256

source§

fn sub_assign(&mut self, other: &U256)

Performs the -= operation. Read more
source§

impl SubAssign<U256> for Decimal

source§

fn sub_assign(&mut self, other: U256)

Performs the -= operation. Read more
source§

impl SubAssign<U256> for PreciseDecimal

source§

fn sub_assign(&mut self, other: U256)

Performs the -= operation. Read more
source§

impl SubAssign<U256> for U256

source§

fn sub_assign(&mut self, other: U256)

Performs the -= operation. Read more
source§

impl ToPrimitive for U256

source§

fn to_u8(&self) -> Option<u8>

Converts the value of self to a u8. If the value cannot be represented by a u8, then None is returned.
source§

fn to_u16(&self) -> Option<u16>

Converts the value of self to a u16. If the value cannot be represented by a u16, then None is returned.
source§

fn to_u32(&self) -> Option<u32>

Converts the value of self to a u32. If the value cannot be represented by a u32, then None is returned.
source§

fn to_u64(&self) -> Option<u64>

Converts the value of self to a u64. If the value cannot be represented by a u64, then None is returned.
source§

fn to_u128(&self) -> Option<u128>

Converts the value of self to a u128. If the value cannot be represented by a u128 (u64 under the default implementation), then None is returned. Read more
source§

fn to_usize(&self) -> Option<usize>

Converts the value of self to a usize. If the value cannot be represented by a usize, then None is returned.
source§

fn to_i8(&self) -> Option<i8>

Converts the value of self to an i8. If the value cannot be represented by an i8, then None is returned.
source§

fn to_i16(&self) -> Option<i16>

Converts the value of self to an i16. If the value cannot be represented by an i16, then None is returned.
source§

fn to_i32(&self) -> Option<i32>

Converts the value of self to an i32. If the value cannot be represented by an i32, then None is returned.
source§

fn to_i64(&self) -> Option<i64>

Converts the value of self to an i64. If the value cannot be represented by an i64, then None is returned.
source§

fn to_i128(&self) -> Option<i128>

Converts the value of self to an i128. If the value cannot be represented by an i128 (i64 under the default implementation), then None is returned. Read more
source§

fn to_isize(&self) -> Option<isize>

Converts the value of self to an isize. If the value cannot be represented by an isize, then None is returned.
source§

fn to_f32(&self) -> Option<f32>

Converts the value of self to an f32. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f32.
source§

fn to_f64(&self) -> Option<f64>

Converts the value of self to an f64. Overflows may map to positive or negative inifinity, otherwise None is returned if the value cannot be represented by an f64. Read more
source§

impl TryFrom<&[u8]> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(bytes: &[u8]) -> Result<U256, <U256 as TryFrom<&[u8]>>::Error>

Performs the conversion.
source§

impl TryFrom<BigInt> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: BigInt) -> Result<U256, <U256 as TryFrom<BigInt>>::Error>

Performs the conversion.
source§

impl TryFrom<I192> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I192) -> Result<U256, <U256 as TryFrom<I192>>::Error>

Performs the conversion.
source§

impl TryFrom<I256> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I256) -> Result<U256, <U256 as TryFrom<I256>>::Error>

Performs the conversion.
source§

impl TryFrom<I320> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I320) -> Result<U256, <U256 as TryFrom<I320>>::Error>

Performs the conversion.
source§

impl TryFrom<I384> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I384) -> Result<U256, <U256 as TryFrom<I384>>::Error>

Performs the conversion.
source§

impl TryFrom<I448> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I448) -> Result<U256, <U256 as TryFrom<I448>>::Error>

Performs the conversion.
source§

impl TryFrom<I512> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I512) -> Result<U256, <U256 as TryFrom<I512>>::Error>

Performs the conversion.
source§

impl TryFrom<I768> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: I768) -> Result<U256, <U256 as TryFrom<I768>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for Decimal

§

type Error = ParseDecimalError

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<Decimal, <Decimal as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for I192

§

type Error = ParseI192Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<I192, <I192 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for I256

§

type Error = ParseI256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<I256, <I256 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for PreciseDecimal

§

type Error = ParsePreciseDecimalError

The type returned in the event of a conversion error.
source§

fn try_from( val: U256 ) -> Result<PreciseDecimal, <PreciseDecimal as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for U192

§

type Error = ParseU192Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<U192, <U192 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for i128

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<i128, <i128 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for i16

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<i16, <i16 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for i32

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<i32, <i32 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for i64

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<i64, <i64 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for i8

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<i8, <i8 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for isize

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<isize, <isize as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for u128

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<u128, <u128 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for u16

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<u16, <u16 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for u32

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<u32, <u32 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for u64

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<u64, <u64 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for u8

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<u8, <u8 as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U256> for usize

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U256) -> Result<usize, <usize as TryFrom<U256>>::Error>

Performs the conversion.
source§

impl TryFrom<U320> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U320) -> Result<U256, <U256 as TryFrom<U320>>::Error>

Performs the conversion.
source§

impl TryFrom<U384> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U384) -> Result<U256, <U256 as TryFrom<U384>>::Error>

Performs the conversion.
source§

impl TryFrom<U448> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U448) -> Result<U256, <U256 as TryFrom<U448>>::Error>

Performs the conversion.
source§

impl TryFrom<U512> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U512) -> Result<U256, <U256 as TryFrom<U512>>::Error>

Performs the conversion.
source§

impl TryFrom<U768> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: U768) -> Result<U256, <U256 as TryFrom<U768>>::Error>

Performs the conversion.
source§

impl TryFrom<Vec<u8, Global>> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from( bytes: Vec<u8, Global> ) -> Result<U256, <U256 as TryFrom<Vec<u8, Global>>>::Error>

Performs the conversion.
source§

impl TryFrom<i128> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: i128) -> Result<U256, <U256 as TryFrom<i128>>::Error>

Performs the conversion.
source§

impl TryFrom<i16> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: i16) -> Result<U256, <U256 as TryFrom<i16>>::Error>

Performs the conversion.
source§

impl TryFrom<i32> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: i32) -> Result<U256, <U256 as TryFrom<i32>>::Error>

Performs the conversion.
source§

impl TryFrom<i64> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: i64) -> Result<U256, <U256 as TryFrom<i64>>::Error>

Performs the conversion.
source§

impl TryFrom<i8> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: i8) -> Result<U256, <U256 as TryFrom<i8>>::Error>

Performs the conversion.
source§

impl TryFrom<isize> for U256

§

type Error = ParseU256Error

The type returned in the event of a conversion error.
source§

fn try_from(val: isize) -> Result<U256, <U256 as TryFrom<isize>>::Error>

Performs the conversion.
source§

impl Zero for U256

source§

fn zero() -> U256

Returns the additive identity element of Self, 0. Read more
source§

fn is_zero(&self) -> bool

Returns true if self is equal to the additive identity.
source§

fn set_zero(&mut self)

Sets self to the additive identity element of Self, 0.
source§

impl Copy for U256

source§

impl Eq for U256

Auto Trait Implementations§

§

impl RefUnwindSafe for U256

§

impl Send for U256

§

impl Sync for U256

§

impl Unpin for U256

§

impl UnwindSafe for U256

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<U> As for U

§

fn as_<T>(self) -> Twhere T: CastFrom<U>,

Casts self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
§

impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

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.
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.
source§

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

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

source§

impl<T, Rhs> NumAssignOps<Rhs> for Twhere T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,

source§

impl<T, Rhs, Output> NumOps<Rhs, Output> for Twhere T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,

source§

impl<T, Base> RefNum<Base> for Twhere T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,