Struct cosmwasm_std::Uint128
source · [−]pub struct Uint128(_);
Expand description
A thin wrapper around u128 that is using strings for JSON encoding/decoding, such that the full u128 range can be used for clients that convert JSON numbers to floats, like JavaScript and jq.
Examples
Use from
to create instances of this and u128
to get the value out:
let a = Uint128::from(123u128);
assert_eq!(a.u128(), 123);
let b = Uint128::from(42u64);
assert_eq!(b.u128(), 42);
let c = Uint128::from(70u32);
assert_eq!(c.u128(), 70);
Implementations
sourceimpl Uint128
impl Uint128
pub const MAX: Self = _
pub const MIN: Self = _
sourcepub const fn new(value: u128) -> Self
pub const fn new(value: u128) -> Self
Creates a Uint128(value).
This method is less flexible than from
but can be called in a const context.
sourcepub const fn to_be_bytes(self) -> [u8; 16]
pub const fn to_be_bytes(self) -> [u8; 16]
Returns a copy of the number as big endian bytes.
sourcepub const fn to_le_bytes(self) -> [u8; 16]
pub const fn to_le_bytes(self) -> [u8; 16]
Returns a copy of the number as little endian bytes.
pub const fn is_zero(&self) -> bool
pub fn pow(self, exp: u32) -> Self
sourcepub fn multiply_ratio<A: Into<u128>, B: Into<u128>>(
&self,
numerator: A,
denominator: B
) -> Uint128
pub fn multiply_ratio<A: Into<u128>, B: Into<u128>>(
&self,
numerator: A,
denominator: B
) -> Uint128
Returns self * numerator / denominator
sourcepub fn checked_multiply_ratio<A: Into<u128>, B: Into<u128>>(
&self,
numerator: A,
denominator: B
) -> Result<Uint128, CheckedMultiplyRatioError>
pub fn checked_multiply_ratio<A: Into<u128>, B: Into<u128>>(
&self,
numerator: A,
denominator: B
) -> Result<Uint128, CheckedMultiplyRatioError>
Returns self * numerator / denominator
pub fn checked_add(self, other: Self) -> Result<Self, OverflowError>
pub fn checked_sub(self, other: Self) -> Result<Self, OverflowError>
pub fn checked_mul(self, other: Self) -> Result<Self, OverflowError>
pub fn checked_pow(self, exp: u32) -> Result<Self, OverflowError>
pub fn checked_div(self, other: Self) -> Result<Self, DivideByZeroError>
pub fn checked_div_euclid(self, other: Self) -> Result<Self, DivideByZeroError>
pub fn checked_rem(self, other: Self) -> Result<Self, DivideByZeroError>
pub fn wrapping_add(self, other: Self) -> Self
pub fn wrapping_sub(self, other: Self) -> Self
pub fn wrapping_mul(self, other: Self) -> Self
pub fn wrapping_pow(self, other: u32) -> Self
pub fn saturating_add(self, other: Self) -> Self
pub fn saturating_sub(self, other: Self) -> Self
pub fn saturating_mul(self, other: Self) -> Self
pub fn saturating_pow(self, exp: u32) -> Self
pub const fn abs_diff(self, other: Self) -> Self
Trait Implementations
sourceimpl<'a> AddAssign<&'a Uint128> for Uint128
impl<'a> AddAssign<&'a Uint128> for Uint128
sourcefn add_assign(&mut self, rhs: &'a Uint128)
fn add_assign(&mut self, rhs: &'a Uint128)
+=
operation. Read moresourceimpl AddAssign<Uint128> for Uint128
impl AddAssign<Uint128> for Uint128
sourcefn add_assign(&mut self, rhs: Uint128)
fn add_assign(&mut self, rhs: Uint128)
+=
operation. Read moresourceimpl<'de> Deserialize<'de> for Uint128
impl<'de> Deserialize<'de> for Uint128
sourcefn deserialize<D>(deserializer: D) -> Result<Uint128, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Uint128, D::Error>where
D: Deserializer<'de>,
Deserialized from an integer string using base 10
sourceimpl<'a> DivAssign<&'a Uint128> for Uint128
impl<'a> DivAssign<&'a Uint128> for Uint128
sourcefn div_assign(&mut self, rhs: &'a Uint128)
fn div_assign(&mut self, rhs: &'a Uint128)
/=
operation. Read moresourceimpl DivAssign<Uint128> for Decimal
impl DivAssign<Uint128> for Decimal
sourcefn div_assign(&mut self, rhs: Uint128)
fn div_assign(&mut self, rhs: Uint128)
/=
operation. Read moresourceimpl DivAssign<Uint128> for Uint128
impl DivAssign<Uint128> for Uint128
sourcefn div_assign(&mut self, rhs: Self)
fn div_assign(&mut self, rhs: Self)
/=
operation. Read moresourceimpl JsonSchema for Uint128
impl JsonSchema for Uint128
sourcefn schema_name() -> String
fn schema_name() -> String
sourcefn json_schema(gen: &mut SchemaGenerator) -> Schema
fn json_schema(gen: &mut SchemaGenerator) -> Schema
sourcefn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moresourceimpl Mul<Decimal> for Uint128
impl Mul<Decimal> for Uint128
Both du and ud with d: Decimal and u: Uint128 returns an Uint128. There is no specific reason for this decision other than the initial use cases we have. If you need a Decimal result for the same calculation, use Decimal(du) or Decimal(ud).
sourceimpl MulAssign<&Uint128> for Uint128
impl MulAssign<&Uint128> for Uint128
sourcefn mul_assign(&mut self, other: &Uint128)
fn mul_assign(&mut self, other: &Uint128)
*=
operation. Read moresourceimpl MulAssign<Uint128> for Uint128
impl MulAssign<Uint128> for Uint128
sourcefn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
*=
operation. Read moresourceimpl Ord for Uint128
impl Ord for Uint128
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
sourceimpl PartialOrd<Uint128> for Uint128
impl PartialOrd<Uint128> for Uint128
sourcefn partial_cmp(&self, other: &Uint128) -> Option<Ordering>
fn partial_cmp(&self, other: &Uint128) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresourceimpl RemAssign<&Uint128> for Uint128
impl RemAssign<&Uint128> for Uint128
sourcefn rem_assign(&mut self, other: &Uint128)
fn rem_assign(&mut self, other: &Uint128)
%=
operation. Read moresourceimpl RemAssign<Uint128> for Uint128
impl RemAssign<Uint128> for Uint128
sourcefn rem_assign(&mut self, rhs: Uint128)
fn rem_assign(&mut self, rhs: Uint128)
%=
operation. Read moresourceimpl<'a> ShrAssign<&'a u32> for Uint128
impl<'a> ShrAssign<&'a u32> for Uint128
sourcefn shr_assign(&mut self, rhs: &'a u32)
fn shr_assign(&mut self, rhs: &'a u32)
>>=
operation. Read moresourceimpl ShrAssign<u32> for Uint128
impl ShrAssign<u32> for Uint128
sourcefn shr_assign(&mut self, rhs: u32)
fn shr_assign(&mut self, rhs: u32)
>>=
operation. Read moresourceimpl SubAssign<&Uint128> for Uint128
impl SubAssign<&Uint128> for Uint128
sourcefn sub_assign(&mut self, other: &Uint128)
fn sub_assign(&mut self, other: &Uint128)
-=
operation. Read moresourceimpl SubAssign<Uint128> for Uint128
impl SubAssign<Uint128> for Uint128
sourcefn sub_assign(&mut self, rhs: Uint128)
fn sub_assign(&mut self, rhs: Uint128)
-=
operation. Read more