Struct bigdecimal::BigDecimal
[−]
[src]
pub struct BigDecimal { /* fields omitted */ }
A big decimal type.
Methods
impl BigDecimal
[src]
pub fn new(digits: BigInt, scale: i64) -> BigDecimal
[src]
Creates and initializes a BigDecimal
.
pub fn parse_bytes(buf: &[u8], radix: u32) -> Option<BigDecimal>
[src]
Creates and initializes a BigDecimal
.
Examples
use bigdecimal::{BigDecimal, Zero}; assert_eq!(BigDecimal::parse_bytes(b"0", 10).unwrap(), BigDecimal::zero()); // assert_eq!(BigDecimal::parse_bytes(b"f", 16), BigDecimal::parse_bytes(b"16", 10));
pub fn with_scale(&self, new_scale: i64) -> BigDecimal
[src]
Return a new BigDecimal object equivalent to self, with internal scaling set to the number specified. If the new_scale is lower than the current value (indicating a larger power of 10), digits will be dropped (as precision is lower)
pub fn sign(&self) -> Sign
[src]
Return the sign of the BigDecimal
as num::bigint::Sign
.
Examples
extern crate num; extern crate bigdecimal; use std::str::FromStr; assert_eq!(bigdecimal::BigDecimal::from_str("-1").unwrap().sign(), num::bigint::Sign::Minus); assert_eq!(bigdecimal::BigDecimal::from_str("0").unwrap().sign(), num::bigint::Sign::NoSign); assert_eq!(bigdecimal::BigDecimal::from_str("1").unwrap().sign(), num::bigint::Sign::Plus);
pub fn as_bigint_and_exponent(&self) -> (BigInt, i64)
[src]
Return the internal big integer value and an exponent. Note that a positive exponent indicates a negative power of 10.
Examples
extern crate num; extern crate bigdecimal; use std::str::FromStr; assert_eq!(bigdecimal::BigDecimal::from_str("1.1").unwrap().as_bigint_and_exponent(), (num::bigint::BigInt::from_str("11").unwrap(), 1));
pub fn into_bigint_and_exponent(self) -> (BigInt, i64)
[src]
Convert into the internal big integer value and an exponent. Note that a positive exponent indicates a negative power of 10.
Examples
extern crate num; extern crate bigdecimal; use std::str::FromStr; assert_eq!(bigdecimal::BigDecimal::from_str("1.1").unwrap().into_bigint_and_exponent(), (num::bigint::BigInt::from_str("11").unwrap(), 1));
pub fn abs(&self) -> BigDecimal
[src]
Compute the absolute value of number
Trait Implementations
impl Clone for BigDecimal
[src]
fn clone(&self) -> BigDecimal
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for BigDecimal
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Eq for BigDecimal
[src]
impl FromStr for BigDecimal
[src]
type Err = ParseBigDecimalError
The associated error which can be returned from parsing.
fn from_str(s: &str) -> Result<BigDecimal, ParseBigDecimalError>
[src]
Parses a string s
to return a value of this type. Read more
impl Hash for BigDecimal
[src]
fn hash<H: Hasher>(&self, state: &mut H)
[src]
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl PartialOrd for BigDecimal
[src]
fn partial_cmp(&self, other: &BigDecimal) -> Option<Ordering>
[src]
This method returns an ordering between self
and other
values if one exists. Read more
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
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
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Ord for BigDecimal
[src]
fn cmp(&self, other: &BigDecimal) -> Ordering
[src]
Complete ordering implementation for BigDecimal
Example
use std::str::FromStr; let a = bigdecimal::BigDecimal::from_str("-1").unwrap(); let b = bigdecimal::BigDecimal::from_str("1").unwrap(); assert!(a < b); assert!(b > a); let c = bigdecimal::BigDecimal::from_str("1").unwrap(); assert!(b >= c); assert!(c >= b); let d = bigdecimal::BigDecimal::from_str("10.0").unwrap(); assert!(d > c); let e = bigdecimal::BigDecimal::from_str(".5").unwrap(); assert!(e < c);
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
impl PartialEq for BigDecimal
[src]
fn eq(&self, rhs: &BigDecimal) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
This method tests for !=
.
impl Default for BigDecimal
[src]
fn default() -> BigDecimal
[src]
Returns the "default value" for a type. Read more
impl Zero for BigDecimal
[src]
fn zero() -> BigDecimal
[src]
Returns the additive identity element of Self
, 0
. Read more
fn is_zero(&self) -> bool
[src]
Returns true
if self
is equal to the additive identity.
impl One for BigDecimal
[src]
fn one() -> BigDecimal
[src]
Returns the multiplicative identity element of Self
, 1
. Read more
fn is_one(&self) -> bool where
Self: PartialEq<Self>,
[src]
Self: PartialEq<Self>,
Returns true
if self
is equal to the multiplicative identity. Read more
impl Add<BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the +
operator.
fn add(self, other: BigDecimal) -> BigDecimal
[src]
Performs the +
operation.
impl<'a> Add<&'a BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the +
operator.
fn add(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the +
operation.
impl<'a> Add<BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the +
operator.
fn add(self, other: BigDecimal) -> BigDecimal
[src]
Performs the +
operation.
impl<'a, 'b> Add<&'b BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the +
operator.
fn add(self, rhs: &BigDecimal) -> BigDecimal
[src]
Performs the +
operation.
impl AddAssign<BigDecimal> for BigDecimal
[src]
fn add_assign(&mut self, other: BigDecimal)
[src]
Performs the +=
operation.
impl<'a> AddAssign<&'a BigDecimal> for BigDecimal
[src]
fn add_assign(&mut self, rhs: &BigDecimal)
[src]
Performs the +=
operation.
impl Sub<BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn sub(self, other: BigDecimal) -> BigDecimal
[src]
Performs the -
operation.
impl<'a> Sub<&'a BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn sub(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the -
operation.
impl<'a> Sub<BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn sub(self, other: BigDecimal) -> BigDecimal
[src]
Performs the -
operation.
impl<'a, 'b> Sub<&'b BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn sub(self, rhs: &BigDecimal) -> BigDecimal
[src]
Performs the -
operation.
impl SubAssign<BigDecimal> for BigDecimal
[src]
fn sub_assign(&mut self, other: BigDecimal)
[src]
Performs the -=
operation.
impl<'a> SubAssign<&'a BigDecimal> for BigDecimal
[src]
fn sub_assign(&mut self, rhs: &BigDecimal)
[src]
Performs the -=
operation.
impl Mul<BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the *
operator.
fn mul(self, other: BigDecimal) -> BigDecimal
[src]
Performs the *
operation.
impl<'a> Mul<&'a BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the *
operator.
fn mul(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the *
operation.
impl<'a> Mul<BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the *
operator.
fn mul(self, other: BigDecimal) -> BigDecimal
[src]
Performs the *
operation.
impl<'a, 'b> Mul<&'b BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the *
operator.
fn mul(self, rhs: &BigDecimal) -> BigDecimal
[src]
Performs the *
operation.
impl MulAssign<BigDecimal> for BigDecimal
[src]
fn mul_assign(&mut self, other: BigDecimal)
[src]
Performs the *=
operation.
impl<'a> MulAssign<&'a BigDecimal> for BigDecimal
[src]
fn mul_assign(&mut self, rhs: &BigDecimal)
[src]
Performs the *=
operation.
impl Div<BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the /
operator.
fn div(self, other: BigDecimal) -> BigDecimal
[src]
Performs the /
operation.
impl<'a> Div<&'a BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the /
operator.
fn div(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the /
operation.
impl<'a> Div<BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the /
operator.
fn div(self, other: BigDecimal) -> BigDecimal
[src]
Performs the /
operation.
impl<'a, 'b> Div<&'b BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the /
operator.
fn div(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the /
operation.
impl Rem<BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the %
operator.
fn rem(self, other: BigDecimal) -> BigDecimal
[src]
Performs the %
operation.
impl<'a> Rem<&'a BigDecimal> for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the %
operator.
fn rem(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the %
operation.
impl<'a> Rem<BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the %
operator.
fn rem(self, other: BigDecimal) -> BigDecimal
[src]
Performs the %
operation.
impl<'a, 'b> Rem<&'b BigDecimal> for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the %
operator.
fn rem(self, other: &BigDecimal) -> BigDecimal
[src]
Performs the %
operation.
impl Neg for BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn neg(self) -> BigDecimal
[src]
Performs the unary -
operation.
impl<'a> Neg for &'a BigDecimal
[src]
type Output = BigDecimal
The resulting type after applying the -
operator.
fn neg(self) -> BigDecimal
[src]
Performs the unary -
operation.
impl Signed for BigDecimal
[src]
fn abs(&self) -> BigDecimal
[src]
Computes the absolute value. Read more
fn abs_sub(&self, other: &BigDecimal) -> BigDecimal
[src]
The positive difference of two numbers. Read more
fn signum(&self) -> BigDecimal
[src]
Returns the sign of the number. Read more
fn is_positive(&self) -> bool
[src]
Returns true if the number is positive and false if the number is zero or negative.
fn is_negative(&self) -> bool
[src]
Returns true if the number is negative and false if the number is zero or positive.
impl Display for BigDecimal
[src]
fn fmt(&self, f: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Num for BigDecimal
[src]
type FromStrRadixErr = ParseBigDecimalError
fn from_str_radix(
s: &str,
radix: u32
) -> Result<BigDecimal, ParseBigDecimalError>
[src]
s: &str,
radix: u32
) -> Result<BigDecimal, ParseBigDecimalError>
Creates and initializes a BigDecimal.
impl ToPrimitive for BigDecimal
[src]
fn to_i64(&self) -> Option<i64>
[src]
Converts the value of self
to an i64
.
fn to_u64(&self) -> Option<u64>
[src]
Converts the value of self
to an u64
.
fn to_f64(&self) -> Option<f64>
[src]
Converts the value of self
to an f64
.
fn to_isize(&self) -> Option<isize>
[src]
Converts the value of self
to an isize
.
fn to_i8(&self) -> Option<i8>
[src]
Converts the value of self
to an i8
.
fn to_i16(&self) -> Option<i16>
[src]
Converts the value of self
to an i16
.
fn to_i32(&self) -> Option<i32>
[src]
Converts the value of self
to an i32
.
fn to_usize(&self) -> Option<usize>
[src]
Converts the value of self
to a usize
.
fn to_u8(&self) -> Option<u8>
[src]
Converts the value of self
to an u8
.
fn to_u16(&self) -> Option<u16>
[src]
Converts the value of self
to an u16
.
fn to_u32(&self) -> Option<u32>
[src]
Converts the value of self
to an u32
.
fn to_f32(&self) -> Option<f32>
[src]
Converts the value of self
to an f32
.
impl From<i64> for BigDecimal
[src]
impl From<u64> for BigDecimal
[src]
impl From<(BigInt, i64)> for BigDecimal
[src]
impl From<u8> for BigDecimal
[src]
impl From<u16> for BigDecimal
[src]
impl From<u32> for BigDecimal
[src]
impl From<i8> for BigDecimal
[src]
impl From<i16> for BigDecimal
[src]
impl From<i32> for BigDecimal
[src]
impl From<f32> for BigDecimal
[src]
impl From<f64> for BigDecimal
[src]
impl FromPrimitive for BigDecimal
[src]
fn from_i64(n: i64) -> Option<Self>
[src]
Convert an i64
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_u64(n: u64) -> Option<Self>
[src]
Convert an u64
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_f32(n: f32) -> Option<Self>
[src]
Convert a f32
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_f64(n: f64) -> Option<Self>
[src]
Convert a f64
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_isize(n: isize) -> Option<Self>
[src]
Convert an isize
to return an optional value of this type. If the value cannot be represented by this value, the None
is returned. Read more
fn from_i8(n: i8) -> Option<Self>
[src]
Convert an i8
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_i16(n: i16) -> Option<Self>
[src]
Convert an i16
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_i32(n: i32) -> Option<Self>
[src]
Convert an i32
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_usize(n: usize) -> Option<Self>
[src]
Convert a usize
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_u8(n: u8) -> Option<Self>
[src]
Convert an u8
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_u16(n: u16) -> Option<Self>
[src]
Convert an u16
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more
fn from_u32(n: u32) -> Option<Self>
[src]
Convert an u32
to return an optional value of this type. If the type cannot be represented by this value, the None
is returned. Read more