Struct monero::util::amount::SignedAmount [−][src]
pub struct SignedAmount(_);
Expand description
Represent an signed quantity of Monero, internally as signed monero.
The SignedAmount
type can be used to express Monero amounts that supports arithmetic and
conversion to various denominations.
Implementations
impl SignedAmount
[src]
impl SignedAmount
[src]pub const ZERO: SignedAmount
[src]
pub const ZERO: SignedAmount
[src]The zero amount.
pub const ONE_PICO: SignedAmount
[src]
pub const ONE_PICO: SignedAmount
[src]Exactly one piconero.
pub const ONE_XMR: SignedAmount
[src]
pub const ONE_XMR: SignedAmount
[src]Exactly one monero.
pub fn from_pico(piconero: i64) -> SignedAmount
[src]
pub fn from_pico(piconero: i64) -> SignedAmount
[src]Create an SignedAmount
with piconero precision and the given number of piconeros.
pub fn as_pico(self) -> i64
[src]
pub fn as_pico(self) -> i64
[src]Get the number of piconeros in this SignedAmount
.
pub fn max_value() -> SignedAmount
[src]
pub fn max_value() -> SignedAmount
[src]The maximum value of an SignedAmount
.
pub fn min_value() -> SignedAmount
[src]
pub fn min_value() -> SignedAmount
[src]The minimum value of an SignedAmount
.
pub fn from_xmr(xmr: f64) -> Result<SignedAmount, ParsingError>
[src]
pub fn from_xmr(xmr: f64) -> Result<SignedAmount, ParsingError>
[src]Convert from a value expressing moneros to an SignedAmount
.
pub fn from_str_in(
s: &str,
denom: Denomination
) -> Result<SignedAmount, ParsingError>
[src]
pub fn from_str_in(
s: &str,
denom: Denomination
) -> Result<SignedAmount, ParsingError>
[src]Parse a decimal string as a value in the given denomination.
Note: This only parses the value string. If you want to parse a value with denomination,
use FromStr
.
pub fn from_str_with_denomination(s: &str) -> Result<SignedAmount, ParsingError>
[src]
pub fn from_str_with_denomination(s: &str) -> Result<SignedAmount, ParsingError>
[src]Parses amounts with denomination suffix like they are produced with
to_string_with_denomination
or with fmt::Display
.
If you want to parse only the amount without the denomination, use from_str_in
.
pub fn to_float_in(self, denom: Denomination) -> f64
[src]
pub fn to_float_in(self, denom: Denomination) -> f64
[src]Express this SignedAmount
as a floating-point value in the given denomination.
Please be aware of the risk of using floating-point numbers.
pub fn as_xmr(self) -> f64
[src]
pub fn as_xmr(self) -> f64
[src]Express this SignedAmount
as a floating-point value in Monero.
Equivalent to to_float_in(Denomination::Monero)
.
Please be aware of the risk of using floating-point numbers.
pub fn from_float_in(
value: f64,
denom: Denomination
) -> Result<SignedAmount, ParsingError>
[src]
pub fn from_float_in(
value: f64,
denom: Denomination
) -> Result<SignedAmount, ParsingError>
[src]Convert this SignedAmount
in floating-point notation with a given denomination.
Can return error if the amount is too big, too precise or negative.
Please be aware of the risk of using floating-point numbers.
pub fn fmt_value_in(self, f: &mut dyn Write, denom: Denomination) -> Result
[src]
pub fn fmt_value_in(self, f: &mut dyn Write, denom: Denomination) -> Result
[src]Format the value of this SignedAmount
in the given denomination.
Does not include the denomination.
pub fn to_string_in(self, denom: Denomination) -> String
[src]
pub fn to_string_in(self, denom: Denomination) -> String
[src]Get a string number of this SignedAmount
in the given denomination.
Does not include the denomination.
pub fn to_string_with_denomination(self, denom: Denomination) -> String
[src]
pub fn to_string_with_denomination(self, denom: Denomination) -> String
[src]Get a formatted string of this SignedAmount
in the given denomination, suffixed with
the abbreviation for the denomination.
pub fn abs(self) -> SignedAmount
[src]
pub fn abs(self) -> SignedAmount
[src]Get the absolute value of this SignedAmount
.
pub fn signum(self) -> i64
[src]
pub fn signum(self) -> i64
[src]Returns a number representing sign of this SignedAmount
.
0
if the amount is zero1
if the amount is positive-1
if the amount is negative
pub fn is_positive(self) -> bool
[src]
pub fn is_positive(self) -> bool
[src]Returns true
if this SignedAmount
is positive and false
if this SignedAmount
is
zero or negative.
pub fn is_negative(self) -> bool
[src]
pub fn is_negative(self) -> bool
[src]Returns true
if this SignedAmount
is negative and false
if this SignedAmount
is
zero or positive.
pub fn checked_abs(self) -> Option<SignedAmount>
[src]
pub fn checked_abs(self) -> Option<SignedAmount>
[src]Get the absolute value of this SignedAmount
. Returns None
if overflow occurred.
(self == min_value()
)
pub fn checked_add(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]
pub fn checked_add(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]Checked addition.
Returns None
if overflow occurred.
pub fn checked_sub(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]
pub fn checked_sub(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]Checked subtraction.
Returns None
if overflow occurred.
pub fn checked_mul(self, rhs: i64) -> Option<SignedAmount>
[src]
pub fn checked_mul(self, rhs: i64) -> Option<SignedAmount>
[src]Checked multiplication.
Returns None
if overflow occurred.
pub fn checked_div(self, rhs: i64) -> Option<SignedAmount>
[src]
pub fn checked_div(self, rhs: i64) -> Option<SignedAmount>
[src]Checked integer division.
Be aware that integer division loses the remainder if no exact division
can be made.
Returns None
if overflow occurred.
pub fn checked_rem(self, rhs: i64) -> Option<SignedAmount>
[src]
pub fn checked_rem(self, rhs: i64) -> Option<SignedAmount>
[src]Checked remainder.
Returns None
if overflow occurred.
pub fn positive_sub(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]
pub fn positive_sub(self, rhs: SignedAmount) -> Option<SignedAmount>
[src]Subtraction that doesn’t allow negative SignedAmount
s.
Returns None
if either self
, rhs
or the result is strictly negative.
pub fn to_unsigned(self) -> Result<Amount, ParsingError>
[src]
pub fn to_unsigned(self) -> Result<Amount, ParsingError>
[src]Convert to an unsigned amount.
Trait Implementations
impl Add<SignedAmount> for SignedAmount
[src]
impl Add<SignedAmount> for SignedAmount
[src]type Output = SignedAmount
type Output = SignedAmount
The resulting type after applying the +
operator.
fn add(self, rhs: SignedAmount) -> Self::Output
[src]
fn add(self, rhs: SignedAmount) -> Self::Output
[src]Performs the +
operation. Read more
impl AddAssign<SignedAmount> for SignedAmount
[src]
impl AddAssign<SignedAmount> for SignedAmount
[src]fn add_assign(&mut self, other: SignedAmount)
[src]
fn add_assign(&mut self, other: SignedAmount)
[src]Performs the +=
operation. Read more
impl Clone for SignedAmount
[src]
impl Clone for SignedAmount
[src]fn clone(&self) -> SignedAmount
[src]
fn clone(&self) -> SignedAmount
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl Debug for SignedAmount
[src]
impl Debug for SignedAmount
[src]impl Default for SignedAmount
[src]
impl Default for SignedAmount
[src]impl Display for SignedAmount
[src]
impl Display for SignedAmount
[src]impl Div<i64> for SignedAmount
[src]
impl Div<i64> for SignedAmount
[src]impl DivAssign<i64> for SignedAmount
[src]
impl DivAssign<i64> for SignedAmount
[src]fn div_assign(&mut self, rhs: i64)
[src]
fn div_assign(&mut self, rhs: i64)
[src]Performs the /=
operation. Read more
impl FromStr for SignedAmount
[src]
impl FromStr for SignedAmount
[src]impl Hash for SignedAmount
[src]
impl Hash for SignedAmount
[src]impl Mul<i64> for SignedAmount
[src]
impl Mul<i64> for SignedAmount
[src]impl MulAssign<i64> for SignedAmount
[src]
impl MulAssign<i64> for SignedAmount
[src]fn mul_assign(&mut self, rhs: i64)
[src]
fn mul_assign(&mut self, rhs: i64)
[src]Performs the *=
operation. Read more
impl Ord for SignedAmount
[src]
impl Ord for SignedAmount
[src]impl PartialEq<SignedAmount> for SignedAmount
[src]
impl PartialEq<SignedAmount> for SignedAmount
[src]fn eq(&self, other: &SignedAmount) -> bool
[src]
fn eq(&self, other: &SignedAmount) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &SignedAmount) -> bool
[src]
fn ne(&self, other: &SignedAmount) -> bool
[src]This method tests for !=
.
impl PartialOrd<SignedAmount> for SignedAmount
[src]
impl PartialOrd<SignedAmount> for SignedAmount
[src]fn partial_cmp(&self, other: &SignedAmount) -> Option<Ordering>
[src]
fn partial_cmp(&self, other: &SignedAmount) -> Option<Ordering>
[src]This method returns an ordering between self
and other
values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than (for self
and other
) and is used by the <
operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Rem<i64> for SignedAmount
[src]
impl Rem<i64> for SignedAmount
[src]impl RemAssign<i64> for SignedAmount
[src]
impl RemAssign<i64> for SignedAmount
[src]fn rem_assign(&mut self, modulus: i64)
[src]
fn rem_assign(&mut self, modulus: i64)
[src]Performs the %=
operation. Read more
impl Sub<SignedAmount> for SignedAmount
[src]
impl Sub<SignedAmount> for SignedAmount
[src]type Output = SignedAmount
type Output = SignedAmount
The resulting type after applying the -
operator.
fn sub(self, rhs: SignedAmount) -> Self::Output
[src]
fn sub(self, rhs: SignedAmount) -> Self::Output
[src]Performs the -
operation. Read more
impl SubAssign<SignedAmount> for SignedAmount
[src]
impl SubAssign<SignedAmount> for SignedAmount
[src]fn sub_assign(&mut self, other: SignedAmount)
[src]
fn sub_assign(&mut self, other: SignedAmount)
[src]Performs the -=
operation. Read more
impl Copy for SignedAmount
[src]
impl Eq for SignedAmount
[src]
impl StructuralEq for SignedAmount
[src]
impl StructuralPartialEq for SignedAmount
[src]
Auto Trait Implementations
impl RefUnwindSafe for SignedAmount
impl Send for SignedAmount
impl Sync for SignedAmount
impl Unpin for SignedAmount
impl UnwindSafe for SignedAmount
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
[src]
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,