lib

Core libraries for Radroots
git clone https://radroots.dev/git/lib.git
Log | Files | Refs | README

radroots_core.txt (46023B)


      1 pub mod radroots_core
      2 pub mod radroots_core::currency
      3 #[non_exhaustive] pub enum radroots_core::currency::ParseError
      4 pub radroots_core::currency::ParseError::InvalidFormat
      5 impl core::convert::From<radroots_core::currency::ParseError> for radroots_core::Error
      6 pub fn radroots_core::Error::from(radroots_core::currency::ParseError) -> Self
      7 impl core::error::Error for radroots_core::currency::ParseError
      8 impl core::fmt::Display for radroots_core::currency::ParseError
      9 pub fn radroots_core::currency::ParseError::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
     10 pub struct radroots_core::currency::Currency(_)
     11 impl radroots_core::currency::Currency
     12 pub const radroots_core::currency::Currency::AUD: radroots_core::currency::Currency
     13 pub const radroots_core::currency::Currency::CAD: radroots_core::currency::Currency
     14 pub const radroots_core::currency::Currency::EUR: radroots_core::currency::Currency
     15 pub const radroots_core::currency::Currency::GBP: radroots_core::currency::Currency
     16 pub const radroots_core::currency::Currency::JPY: radroots_core::currency::Currency
     17 pub const radroots_core::currency::Currency::USD: radroots_core::currency::Currency
     18 pub const fn radroots_core::currency::Currency::as_bytes(&self) -> &[u8; 3]
     19 pub fn radroots_core::currency::Currency::as_str(&self) -> &str
     20 pub const fn radroots_core::currency::Currency::from_const([u8; 3]) -> core::result::Result<Self, radroots_core::currency::ParseError>
     21 pub fn radroots_core::currency::Currency::from_str_upper(&str) -> core::result::Result<Self, radroots_core::currency::ParseError>
     22 pub const fn radroots_core::currency::Currency::minor_unit_exponent(&self) -> u32
     23 impl core::convert::TryFrom<&str> for radroots_core::currency::Currency
     24 pub type radroots_core::currency::Currency::Error = radroots_core::currency::ParseError
     25 pub fn radroots_core::currency::Currency::try_from(&str) -> core::result::Result<Self, Self::Error>
     26 impl core::fmt::Debug for radroots_core::currency::Currency
     27 pub fn radroots_core::currency::Currency::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
     28 impl core::fmt::Display for radroots_core::currency::Currency
     29 pub fn radroots_core::currency::Currency::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
     30 impl core::str::traits::FromStr for radroots_core::currency::Currency
     31 pub type radroots_core::currency::Currency::Err = radroots_core::currency::ParseError
     32 pub fn radroots_core::currency::Currency::from_str(&str) -> core::result::Result<Self, Self::Err>
     33 impl serde_core::ser::Serialize for radroots_core::currency::Currency
     34 pub fn radroots_core::currency::Currency::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
     35 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::currency::Currency
     36 pub fn radroots_core::currency::Currency::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
     37 pub mod radroots_core::decimal
     38 #[non_exhaustive] pub enum radroots_core::decimal::Error
     39 pub radroots_core::decimal::Error::ArithmeticOverflow
     40 pub radroots_core::decimal::Error::DivisionByZero
     41 pub radroots_core::decimal::Error::InvalidFormat
     42 pub radroots_core::decimal::Error::OutOfRange
     43 pub radroots_core::decimal::Error::PrecisionLoss
     44 pub radroots_core::decimal::Error::ScaleOutOfRange
     45 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::Error
     46 pub fn radroots_core::Error::from(radroots_core::decimal::Error) -> Self
     47 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::money::Error
     48 pub fn radroots_core::money::Error::from(radroots_core::decimal::Error) -> Self
     49 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::quantity::Error
     50 pub fn radroots_core::quantity::Error::from(radroots_core::decimal::Error) -> Self
     51 impl core::error::Error for radroots_core::decimal::Error
     52 impl core::fmt::Display for radroots_core::decimal::Error
     53 pub fn radroots_core::decimal::Error::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
     54 pub struct radroots_core::decimal::Decimal(_)
     55 impl radroots_core::decimal::Decimal
     56 pub const radroots_core::decimal::Decimal::MAX: Self
     57 pub const radroots_core::decimal::Decimal::MAX_SCALE: u32
     58 pub const radroots_core::decimal::Decimal::MIN: Self
     59 pub const radroots_core::decimal::Decimal::ONE: Self
     60 pub const radroots_core::decimal::Decimal::ZERO: Self
     61 pub fn radroots_core::decimal::Decimal::checked_add(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
     62 pub fn radroots_core::decimal::Decimal::checked_div(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
     63 pub fn radroots_core::decimal::Decimal::checked_mul(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
     64 pub fn radroots_core::decimal::Decimal::checked_sub(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
     65 pub fn radroots_core::decimal::Decimal::from_f64_display(f64) -> core::result::Result<Self, radroots_core::decimal::Error>
     66 pub fn radroots_core::decimal::Decimal::from_str_exact(&str) -> core::result::Result<Self, radroots_core::decimal::Error>
     67 pub fn radroots_core::decimal::Decimal::is_sign_negative(&self) -> bool
     68 pub fn radroots_core::decimal::Decimal::is_zero(&self) -> bool
     69 pub fn radroots_core::decimal::Decimal::normalize(&self) -> Self
     70 pub fn radroots_core::decimal::Decimal::rescale(&mut self, u32)
     71 pub fn radroots_core::decimal::Decimal::scale(&self) -> u32
     72 pub fn radroots_core::decimal::Decimal::to_f64_lossy(&self) -> core::option::Option<f64>
     73 pub fn radroots_core::decimal::Decimal::to_u64_exact(&self) -> core::option::Option<u64>
     74 pub fn radroots_core::decimal::Decimal::try_rescale_exact(&mut self, u32) -> core::result::Result<(), radroots_core::decimal::Error>
     75 impl core::convert::From<i32> for radroots_core::decimal::Decimal
     76 pub fn radroots_core::decimal::Decimal::from(i32) -> Self
     77 impl core::convert::From<i64> for radroots_core::decimal::Decimal
     78 pub fn radroots_core::decimal::Decimal::from(i64) -> Self
     79 impl core::convert::From<u32> for radroots_core::decimal::Decimal
     80 pub fn radroots_core::decimal::Decimal::from(u32) -> Self
     81 impl core::convert::From<u64> for radroots_core::decimal::Decimal
     82 pub fn radroots_core::decimal::Decimal::from(u64) -> Self
     83 impl core::fmt::Display for radroots_core::decimal::Decimal
     84 pub fn radroots_core::decimal::Decimal::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
     85 impl core::str::traits::FromStr for radroots_core::decimal::Decimal
     86 pub type radroots_core::decimal::Decimal::Err = radroots_core::decimal::Error
     87 pub fn radroots_core::decimal::Decimal::from_str(&str) -> core::result::Result<Self, Self::Err>
     88 impl serde_core::ser::Serialize for radroots_core::decimal::Decimal
     89 pub fn radroots_core::decimal::Decimal::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
     90 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::decimal::Decimal
     91 pub fn radroots_core::decimal::Decimal::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
     92 pub mod radroots_core::money
     93 #[non_exhaustive] pub enum radroots_core::money::Error
     94 pub radroots_core::money::Error::AmountOverflow
     95 pub radroots_core::money::Error::ArithmeticOverflow
     96 pub radroots_core::money::Error::CurrencyMismatch
     97 pub radroots_core::money::Error::DivisionByZero
     98 pub radroots_core::money::Error::NegativeAmount
     99 pub radroots_core::money::Error::NotWholeMinorUnits
    100 pub radroots_core::money::Error::PrecisionLoss
    101 pub radroots_core::money::Error::ScaleOutOfRange
    102 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::money::Error
    103 pub fn radroots_core::money::Error::from(radroots_core::decimal::Error) -> Self
    104 impl core::convert::From<radroots_core::money::Error> for radroots_core::Error
    105 pub fn radroots_core::Error::from(radroots_core::money::Error) -> Self
    106 impl core::error::Error for radroots_core::money::Error
    107 impl core::fmt::Display for radroots_core::money::Error
    108 pub fn radroots_core::money::Error::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    109 pub struct radroots_core::money::Money
    110 impl radroots_core::money::Money
    111 pub const fn radroots_core::money::Money::amount(&self) -> radroots_core::decimal::Decimal
    112 pub fn radroots_core::money::Money::checked_add(&self, &Self) -> core::result::Result<Self, radroots_core::money::Error>
    113 pub fn radroots_core::money::Money::checked_div_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::money::Error>
    114 pub fn radroots_core::money::Money::checked_mul_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::money::Error>
    115 pub fn radroots_core::money::Money::checked_sub(&self, &Self) -> core::result::Result<Self, radroots_core::money::Error>
    116 pub const fn radroots_core::money::Money::currency(&self) -> radroots_core::currency::Currency
    117 pub fn radroots_core::money::Money::from_minor_units_u32(u32, radroots_core::currency::Currency) -> Self
    118 pub fn radroots_core::money::Money::from_minor_units_u64(u64, radroots_core::currency::Currency) -> Self
    119 pub fn radroots_core::money::Money::is_zero(&self) -> bool
    120 pub fn radroots_core::money::Money::quantize_to_currency(self) -> Self
    121 pub fn radroots_core::money::Money::to_minor_units_u32_exact(&self) -> core::result::Result<u32, radroots_core::money::Error>
    122 pub fn radroots_core::money::Money::to_minor_units_u32_rounded(&self) -> core::result::Result<u32, radroots_core::money::Error>
    123 pub fn radroots_core::money::Money::to_minor_units_u64_exact(&self) -> core::result::Result<u64, radroots_core::money::Error>
    124 pub fn radroots_core::money::Money::to_minor_units_u64_rounded(&self) -> core::result::Result<u64, radroots_core::money::Error>
    125 pub fn radroots_core::money::Money::try_new(radroots_core::decimal::Decimal, radroots_core::currency::Currency) -> core::result::Result<Self, radroots_core::money::Error>
    126 pub fn radroots_core::money::Money::try_with_scale_exact(self, u32) -> core::result::Result<Self, radroots_core::money::Error>
    127 pub fn radroots_core::money::Money::zero(radroots_core::currency::Currency) -> Self
    128 impl core::fmt::Display for radroots_core::money::Money
    129 pub fn radroots_core::money::Money::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    130 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::money::Money
    131 pub fn radroots_core::money::Money::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    132 pub mod radroots_core::percent
    133 #[non_exhaustive] pub enum radroots_core::percent::ParseError
    134 pub radroots_core::percent::ParseError::InvalidNumber
    135 impl core::convert::From<radroots_core::percent::ParseError> for radroots_core::Error
    136 pub fn radroots_core::Error::from(radroots_core::percent::ParseError) -> Self
    137 impl core::error::Error for radroots_core::percent::ParseError
    138 impl core::fmt::Display for radroots_core::percent::ParseError
    139 pub fn radroots_core::percent::ParseError::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    140 pub struct radroots_core::percent::Percent
    141 impl radroots_core::percent::Percent
    142 pub fn radroots_core::percent::Percent::new(radroots_core::decimal::Decimal) -> Self
    143 pub fn radroots_core::percent::Percent::try_from_ratio(radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::decimal::Error>
    144 pub fn radroots_core::percent::Percent::try_of_money(&self, &radroots_core::money::Money) -> core::result::Result<radroots_core::money::Money, radroots_core::money::Error>
    145 pub fn radroots_core::percent::Percent::try_of_money_quantized(&self, &radroots_core::money::Money) -> core::result::Result<radroots_core::money::Money, radroots_core::money::Error>
    146 pub fn radroots_core::percent::Percent::try_to_ratio(&self) -> core::result::Result<radroots_core::decimal::Decimal, radroots_core::decimal::Error>
    147 pub const fn radroots_core::percent::Percent::value(&self) -> radroots_core::decimal::Decimal
    148 impl core::fmt::Display for radroots_core::percent::Percent
    149 pub fn radroots_core::percent::Percent::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    150 impl core::str::traits::FromStr for radroots_core::percent::Percent
    151 pub type radroots_core::percent::Percent::Err = radroots_core::percent::ParseError
    152 pub fn radroots_core::percent::Percent::from_str(&str) -> core::result::Result<Self, Self::Err>
    153 pub mod radroots_core::pricing
    154 #[non_exhaustive] pub enum radroots_core::pricing::DiscountError
    155 pub radroots_core::pricing::DiscountError::NegativeThreshold
    156 pub radroots_core::pricing::DiscountError::NegativeValue
    157 impl core::convert::From<radroots_core::pricing::DiscountError> for radroots_core::Error
    158 pub fn radroots_core::Error::from(radroots_core::pricing::DiscountError) -> Self
    159 impl core::error::Error for radroots_core::pricing::DiscountError
    160 impl core::fmt::Display for radroots_core::pricing::DiscountError
    161 pub fn radroots_core::pricing::DiscountError::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    162 pub enum radroots_core::pricing::DiscountScope
    163 pub radroots_core::pricing::DiscountScope::Bin
    164 pub radroots_core::pricing::DiscountScope::OrderTotal
    165 pub enum radroots_core::pricing::DiscountThreshold
    166 pub radroots_core::pricing::DiscountThreshold::BinCount
    167 pub radroots_core::pricing::DiscountThreshold::BinCount::bin_id: alloc::string::String
    168 pub radroots_core::pricing::DiscountThreshold::BinCount::min: u32
    169 pub radroots_core::pricing::DiscountThreshold::OrderQuantity
    170 pub radroots_core::pricing::DiscountThreshold::OrderQuantity::min: radroots_core::quantity::Quantity
    171 pub enum radroots_core::pricing::DiscountValue
    172 pub radroots_core::pricing::DiscountValue::MoneyPerBin(radroots_core::money::Money)
    173 pub radroots_core::pricing::DiscountValue::Percent(radroots_core::percent::Percent)
    174 pub enum radroots_core::pricing::Error
    175 pub radroots_core::pricing::Error::ArithmeticOverflow
    176 pub radroots_core::pricing::Error::NegativePrice
    177 pub radroots_core::pricing::Error::NegativeRequestedQuantity
    178 pub radroots_core::pricing::Error::NonConvertibleUnits
    179 pub radroots_core::pricing::Error::NonConvertibleUnits::from: radroots_core::unit::Unit
    180 pub radroots_core::pricing::Error::NonConvertibleUnits::to: radroots_core::unit::Unit
    181 pub radroots_core::pricing::Error::PerQuantityNegative
    182 pub radroots_core::pricing::Error::PerQuantityZero
    183 pub radroots_core::pricing::Error::UnitMismatch
    184 pub radroots_core::pricing::Error::UnitMismatch::have: radroots_core::unit::Unit
    185 pub radroots_core::pricing::Error::UnitMismatch::want: radroots_core::unit::Unit
    186 impl core::convert::From<radroots_core::pricing::Error> for radroots_core::Error
    187 pub fn radroots_core::Error::from(radroots_core::pricing::Error) -> Self
    188 impl core::error::Error for radroots_core::pricing::Error
    189 impl core::fmt::Display for radroots_core::pricing::Error
    190 pub fn radroots_core::pricing::Error::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    191 pub struct radroots_core::pricing::Discount
    192 impl radroots_core::pricing::Discount
    193 pub fn radroots_core::pricing::Discount::is_non_negative(&self) -> bool
    194 pub fn radroots_core::pricing::Discount::scope(&self) -> &radroots_core::pricing::DiscountScope
    195 pub fn radroots_core::pricing::Discount::threshold(&self) -> &radroots_core::pricing::DiscountThreshold
    196 pub fn radroots_core::pricing::Discount::try_new(radroots_core::pricing::DiscountScope, radroots_core::pricing::DiscountThreshold, radroots_core::pricing::DiscountValue) -> core::result::Result<Self, radroots_core::pricing::DiscountError>
    197 pub fn radroots_core::pricing::Discount::validate(&self) -> core::result::Result<(), radroots_core::pricing::DiscountError>
    198 pub fn radroots_core::pricing::Discount::value(&self) -> &radroots_core::pricing::DiscountValue
    199 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::pricing::Discount
    200 pub fn radroots_core::pricing::Discount::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    201 pub struct radroots_core::pricing::QuantityPrice
    202 impl radroots_core::QuantityPrice
    203 pub fn radroots_core::QuantityPrice::amount(&self) -> &radroots_core::money::Money
    204 pub fn radroots_core::QuantityPrice::is_price_per_canonical_unit(&self) -> bool
    205 pub fn radroots_core::QuantityPrice::quantity(&self) -> &radroots_core::quantity::Quantity
    206 pub fn radroots_core::QuantityPrice::try_cost_for_amount_in(&self, radroots_core::decimal::Decimal, radroots_core::unit::Unit) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    207 pub fn radroots_core::QuantityPrice::try_cost_for_quantity_in(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    208 pub fn radroots_core::QuantityPrice::try_new(radroots_core::money::Money, radroots_core::quantity::Quantity) -> core::result::Result<Self, radroots_core::pricing::Error>
    209 pub fn radroots_core::QuantityPrice::try_to_canonical_unit_price(&self) -> core::result::Result<radroots_core::QuantityPrice, radroots_core::pricing::Error>
    210 pub fn radroots_core::QuantityPrice::try_to_unit_price(&self, radroots_core::unit::Unit) -> core::result::Result<radroots_core::QuantityPrice, radroots_core::pricing::Error>
    211 pub fn radroots_core::QuantityPrice::validate(&self) -> core::result::Result<(), radroots_core::pricing::Error>
    212 impl radroots_core::pricing::QuantityPriceOps for radroots_core::QuantityPrice
    213 pub fn radroots_core::QuantityPrice::try_cost_for(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    214 pub fn radroots_core::QuantityPrice::try_cost_for_rounded(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    215 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::QuantityPrice
    216 pub fn radroots_core::QuantityPrice::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    217 pub trait radroots_core::pricing::QuantityPriceOps: radroots_core::quantity_price::sealed::Sealed
    218 pub fn radroots_core::pricing::QuantityPriceOps::try_cost_for(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    219 pub fn radroots_core::pricing::QuantityPriceOps::try_cost_for_rounded(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    220 impl radroots_core::pricing::QuantityPriceOps for radroots_core::QuantityPrice
    221 pub fn radroots_core::QuantityPrice::try_cost_for(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    222 pub fn radroots_core::QuantityPrice::try_cost_for_rounded(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    223 pub mod radroots_core::quantity
    224 #[non_exhaustive] pub enum radroots_core::quantity::Error
    225 pub radroots_core::quantity::Error::ArithmeticOverflow
    226 pub radroots_core::quantity::Error::DivisionByZero
    227 pub radroots_core::quantity::Error::NegativeAmount
    228 pub radroots_core::quantity::Error::UnitMismatch
    229 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::quantity::Error
    230 pub fn radroots_core::quantity::Error::from(radroots_core::decimal::Error) -> Self
    231 impl core::convert::From<radroots_core::quantity::Error> for radroots_core::Error
    232 pub fn radroots_core::Error::from(radroots_core::quantity::Error) -> Self
    233 impl core::error::Error for radroots_core::quantity::Error
    234 impl core::fmt::Display for radroots_core::quantity::Error
    235 pub fn radroots_core::quantity::Error::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    236 pub struct radroots_core::quantity::Quantity
    237 impl radroots_core::quantity::Quantity
    238 pub const fn radroots_core::quantity::Quantity::amount(&self) -> radroots_core::decimal::Decimal
    239 pub fn radroots_core::quantity::Quantity::canonical_unit(&self) -> radroots_core::unit::Unit
    240 pub fn radroots_core::quantity::Quantity::checked_add(&self, &radroots_core::quantity::Quantity) -> core::option::Option<radroots_core::quantity::Quantity>
    241 pub fn radroots_core::quantity::Quantity::checked_div_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    242 pub fn radroots_core::quantity::Quantity::checked_mul_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    243 pub fn radroots_core::quantity::Quantity::checked_sub(&self, &radroots_core::quantity::Quantity) -> core::option::Option<radroots_core::quantity::Quantity>
    244 pub fn radroots_core::quantity::Quantity::clear_label(self) -> Self
    245 pub fn radroots_core::quantity::Quantity::is_canonical(&self) -> bool
    246 pub fn radroots_core::quantity::Quantity::is_zero(&self) -> bool
    247 pub fn radroots_core::quantity::Quantity::label(&self) -> core::option::Option<&str>
    248 pub fn radroots_core::quantity::Quantity::to_canonical(&self) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::unit::ConvertError>
    249 pub fn radroots_core::quantity::Quantity::try_add(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    250 pub fn radroots_core::quantity::Quantity::try_convert_to(&self, radroots_core::unit::Unit) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::unit::ConvertError>
    251 pub fn radroots_core::quantity::Quantity::try_new(radroots_core::decimal::Decimal, radroots_core::unit::Unit) -> core::result::Result<Self, radroots_core::quantity::Error>
    252 pub fn radroots_core::quantity::Quantity::try_sub(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    253 pub const fn radroots_core::quantity::Quantity::unit(&self) -> radroots_core::unit::Unit
    254 pub fn radroots_core::quantity::Quantity::with_label<S: core::convert::Into<alloc::string::String>>(self, S) -> Self
    255 pub fn radroots_core::quantity::Quantity::with_optional_label<S: core::convert::Into<alloc::string::String>>(self, core::option::Option<S>) -> Self
    256 pub fn radroots_core::quantity::Quantity::zero(radroots_core::unit::Unit) -> Self
    257 impl core::fmt::Display for radroots_core::quantity::Quantity
    258 pub fn radroots_core::quantity::Quantity::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    259 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::quantity::Quantity
    260 pub fn radroots_core::quantity::Quantity::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    261 pub mod radroots_core::unit
    262 pub enum radroots_core::unit::ConvertError
    263 pub radroots_core::unit::ConvertError::ArithmeticOverflow
    264 pub radroots_core::unit::ConvertError::ArithmeticOverflow::from: radroots_core::unit::Unit
    265 pub radroots_core::unit::ConvertError::ArithmeticOverflow::to: radroots_core::unit::Unit
    266 pub radroots_core::unit::ConvertError::NotConvertibleUnits
    267 pub radroots_core::unit::ConvertError::NotConvertibleUnits::from: radroots_core::unit::Unit
    268 pub radroots_core::unit::ConvertError::NotConvertibleUnits::to: radroots_core::unit::Unit
    269 pub radroots_core::unit::ConvertError::NotMassUnit
    270 pub radroots_core::unit::ConvertError::NotMassUnit::from: radroots_core::unit::Unit
    271 pub radroots_core::unit::ConvertError::NotMassUnit::to: radroots_core::unit::Unit
    272 pub radroots_core::unit::ConvertError::NotVolumeUnit
    273 pub radroots_core::unit::ConvertError::NotVolumeUnit::from: radroots_core::unit::Unit
    274 pub radroots_core::unit::ConvertError::NotVolumeUnit::to: radroots_core::unit::Unit
    275 impl core::convert::From<radroots_core::unit::ConvertError> for radroots_core::Error
    276 pub fn radroots_core::Error::from(radroots_core::unit::ConvertError) -> Self
    277 impl core::error::Error for radroots_core::unit::ConvertError
    278 impl core::fmt::Display for radroots_core::unit::ConvertError
    279 pub fn radroots_core::unit::ConvertError::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    280 pub enum radroots_core::unit::ParseError
    281 pub radroots_core::unit::ParseError::NotAMassUnit
    282 pub radroots_core::unit::ParseError::NotAVolumeUnit
    283 pub radroots_core::unit::ParseError::UnknownUnit
    284 impl core::convert::From<radroots_core::unit::ParseError> for radroots_core::Error
    285 pub fn radroots_core::Error::from(radroots_core::unit::ParseError) -> Self
    286 impl core::error::Error for radroots_core::unit::ParseError
    287 impl core::fmt::Display for radroots_core::unit::ParseError
    288 pub fn radroots_core::unit::ParseError::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    289 pub enum radroots_core::unit::Unit
    290 pub radroots_core::unit::Unit::Each
    291 pub radroots_core::unit::Unit::MassG
    292 pub radroots_core::unit::Unit::MassKg
    293 pub radroots_core::unit::Unit::MassLb
    294 pub radroots_core::unit::Unit::MassOz
    295 pub radroots_core::unit::Unit::VolumeL
    296 pub radroots_core::unit::Unit::VolumeMl
    297 impl radroots_core::unit::Unit
    298 pub fn radroots_core::unit::Unit::canonical_unit(&self) -> Self
    299 pub fn radroots_core::unit::Unit::code(&self) -> &'static str
    300 pub fn radroots_core::unit::Unit::dimension(&self) -> radroots_core::unit::UnitDimension
    301 pub fn radroots_core::unit::Unit::is_count(&self) -> bool
    302 pub fn radroots_core::unit::Unit::is_mass(&self) -> bool
    303 pub fn radroots_core::unit::Unit::is_volume(&self) -> bool
    304 pub fn radroots_core::unit::Unit::same_dimension(Self, Self) -> bool
    305 impl core::fmt::Display for radroots_core::unit::Unit
    306 pub fn radroots_core::unit::Unit::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    307 impl core::str::traits::FromStr for radroots_core::unit::Unit
    308 pub type radroots_core::unit::Unit::Err = radroots_core::unit::ParseError
    309 pub fn radroots_core::unit::Unit::from_str(&str) -> core::result::Result<Self, Self::Err>
    310 impl serde_core::ser::Serialize for radroots_core::unit::Unit
    311 pub fn radroots_core::unit::Unit::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
    312 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::unit::Unit
    313 pub fn radroots_core::unit::Unit::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    314 pub enum radroots_core::unit::UnitDimension
    315 pub radroots_core::unit::UnitDimension::Count
    316 pub radroots_core::unit::UnitDimension::Mass
    317 pub radroots_core::unit::UnitDimension::Volume
    318 pub fn radroots_core::unit::convert_mass_decimal(radroots_core::decimal::Decimal, radroots_core::unit::Unit, radroots_core::unit::Unit) -> core::result::Result<radroots_core::decimal::Decimal, radroots_core::unit::ConvertError>
    319 pub fn radroots_core::unit::convert_unit_decimal(radroots_core::decimal::Decimal, radroots_core::unit::Unit, radroots_core::unit::Unit) -> core::result::Result<radroots_core::decimal::Decimal, radroots_core::unit::ConvertError>
    320 pub fn radroots_core::unit::convert_volume_decimal(radroots_core::decimal::Decimal, radroots_core::unit::Unit, radroots_core::unit::Unit) -> core::result::Result<radroots_core::decimal::Decimal, radroots_core::unit::ConvertError>
    321 pub fn radroots_core::unit::parse_mass_unit(&str) -> core::result::Result<radroots_core::unit::Unit, radroots_core::unit::ParseError>
    322 pub fn radroots_core::unit::parse_volume_unit(&str) -> core::result::Result<radroots_core::unit::Unit, radroots_core::unit::ParseError>
    323 #[non_exhaustive] pub enum radroots_core::Error
    324 pub radroots_core::Error::Currency(radroots_core::currency::ParseError)
    325 pub radroots_core::Error::Decimal(radroots_core::decimal::Error)
    326 pub radroots_core::Error::Discount(radroots_core::pricing::DiscountError)
    327 pub radroots_core::Error::Money(radroots_core::money::Error)
    328 pub radroots_core::Error::Percent(radroots_core::percent::ParseError)
    329 pub radroots_core::Error::Pricing(radroots_core::pricing::Error)
    330 pub radroots_core::Error::Quantity(radroots_core::quantity::Error)
    331 pub radroots_core::Error::UnitConversion(radroots_core::unit::ConvertError)
    332 pub radroots_core::Error::UnitParse(radroots_core::unit::ParseError)
    333 impl core::convert::From<radroots_core::currency::ParseError> for radroots_core::Error
    334 pub fn radroots_core::Error::from(radroots_core::currency::ParseError) -> Self
    335 impl core::convert::From<radroots_core::decimal::Error> for radroots_core::Error
    336 pub fn radroots_core::Error::from(radroots_core::decimal::Error) -> Self
    337 impl core::convert::From<radroots_core::money::Error> for radroots_core::Error
    338 pub fn radroots_core::Error::from(radroots_core::money::Error) -> Self
    339 impl core::convert::From<radroots_core::percent::ParseError> for radroots_core::Error
    340 pub fn radroots_core::Error::from(radroots_core::percent::ParseError) -> Self
    341 impl core::convert::From<radroots_core::pricing::DiscountError> for radroots_core::Error
    342 pub fn radroots_core::Error::from(radroots_core::pricing::DiscountError) -> Self
    343 impl core::convert::From<radroots_core::pricing::Error> for radroots_core::Error
    344 pub fn radroots_core::Error::from(radroots_core::pricing::Error) -> Self
    345 impl core::convert::From<radroots_core::quantity::Error> for radroots_core::Error
    346 pub fn radroots_core::Error::from(radroots_core::quantity::Error) -> Self
    347 impl core::convert::From<radroots_core::unit::ConvertError> for radroots_core::Error
    348 pub fn radroots_core::Error::from(radroots_core::unit::ConvertError) -> Self
    349 impl core::convert::From<radroots_core::unit::ParseError> for radroots_core::Error
    350 pub fn radroots_core::Error::from(radroots_core::unit::ParseError) -> Self
    351 impl core::error::Error for radroots_core::Error
    352 pub fn radroots_core::Error::source(&self) -> core::option::Option<&(dyn core::error::Error + 'static)>
    353 impl core::fmt::Display for radroots_core::Error
    354 pub fn radroots_core::Error::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    355 pub enum radroots_core::Unit
    356 pub radroots_core::Unit::Each
    357 pub radroots_core::Unit::MassG
    358 pub radroots_core::Unit::MassKg
    359 pub radroots_core::Unit::MassLb
    360 pub radroots_core::Unit::MassOz
    361 pub radroots_core::Unit::VolumeL
    362 pub radroots_core::Unit::VolumeMl
    363 impl radroots_core::unit::Unit
    364 pub fn radroots_core::unit::Unit::canonical_unit(&self) -> Self
    365 pub fn radroots_core::unit::Unit::code(&self) -> &'static str
    366 pub fn radroots_core::unit::Unit::dimension(&self) -> radroots_core::unit::UnitDimension
    367 pub fn radroots_core::unit::Unit::is_count(&self) -> bool
    368 pub fn radroots_core::unit::Unit::is_mass(&self) -> bool
    369 pub fn radroots_core::unit::Unit::is_volume(&self) -> bool
    370 pub fn radroots_core::unit::Unit::same_dimension(Self, Self) -> bool
    371 impl core::fmt::Display for radroots_core::unit::Unit
    372 pub fn radroots_core::unit::Unit::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    373 impl core::str::traits::FromStr for radroots_core::unit::Unit
    374 pub type radroots_core::unit::Unit::Err = radroots_core::unit::ParseError
    375 pub fn radroots_core::unit::Unit::from_str(&str) -> core::result::Result<Self, Self::Err>
    376 impl serde_core::ser::Serialize for radroots_core::unit::Unit
    377 pub fn radroots_core::unit::Unit::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
    378 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::unit::Unit
    379 pub fn radroots_core::unit::Unit::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    380 pub struct radroots_core::Currency(_)
    381 impl radroots_core::currency::Currency
    382 pub const radroots_core::currency::Currency::AUD: radroots_core::currency::Currency
    383 pub const radroots_core::currency::Currency::CAD: radroots_core::currency::Currency
    384 pub const radroots_core::currency::Currency::EUR: radroots_core::currency::Currency
    385 pub const radroots_core::currency::Currency::GBP: radroots_core::currency::Currency
    386 pub const radroots_core::currency::Currency::JPY: radroots_core::currency::Currency
    387 pub const radroots_core::currency::Currency::USD: radroots_core::currency::Currency
    388 pub const fn radroots_core::currency::Currency::as_bytes(&self) -> &[u8; 3]
    389 pub fn radroots_core::currency::Currency::as_str(&self) -> &str
    390 pub const fn radroots_core::currency::Currency::from_const([u8; 3]) -> core::result::Result<Self, radroots_core::currency::ParseError>
    391 pub fn radroots_core::currency::Currency::from_str_upper(&str) -> core::result::Result<Self, radroots_core::currency::ParseError>
    392 pub const fn radroots_core::currency::Currency::minor_unit_exponent(&self) -> u32
    393 impl core::convert::TryFrom<&str> for radroots_core::currency::Currency
    394 pub type radroots_core::currency::Currency::Error = radroots_core::currency::ParseError
    395 pub fn radroots_core::currency::Currency::try_from(&str) -> core::result::Result<Self, Self::Error>
    396 impl core::fmt::Debug for radroots_core::currency::Currency
    397 pub fn radroots_core::currency::Currency::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    398 impl core::fmt::Display for radroots_core::currency::Currency
    399 pub fn radroots_core::currency::Currency::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    400 impl core::str::traits::FromStr for radroots_core::currency::Currency
    401 pub type radroots_core::currency::Currency::Err = radroots_core::currency::ParseError
    402 pub fn radroots_core::currency::Currency::from_str(&str) -> core::result::Result<Self, Self::Err>
    403 impl serde_core::ser::Serialize for radroots_core::currency::Currency
    404 pub fn radroots_core::currency::Currency::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
    405 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::currency::Currency
    406 pub fn radroots_core::currency::Currency::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    407 pub struct radroots_core::Decimal(_)
    408 impl radroots_core::decimal::Decimal
    409 pub const radroots_core::decimal::Decimal::MAX: Self
    410 pub const radroots_core::decimal::Decimal::MAX_SCALE: u32
    411 pub const radroots_core::decimal::Decimal::MIN: Self
    412 pub const radroots_core::decimal::Decimal::ONE: Self
    413 pub const radroots_core::decimal::Decimal::ZERO: Self
    414 pub fn radroots_core::decimal::Decimal::checked_add(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
    415 pub fn radroots_core::decimal::Decimal::checked_div(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
    416 pub fn radroots_core::decimal::Decimal::checked_mul(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
    417 pub fn radroots_core::decimal::Decimal::checked_sub(self, Self) -> core::result::Result<Self, radroots_core::decimal::Error>
    418 pub fn radroots_core::decimal::Decimal::from_f64_display(f64) -> core::result::Result<Self, radroots_core::decimal::Error>
    419 pub fn radroots_core::decimal::Decimal::from_str_exact(&str) -> core::result::Result<Self, radroots_core::decimal::Error>
    420 pub fn radroots_core::decimal::Decimal::is_sign_negative(&self) -> bool
    421 pub fn radroots_core::decimal::Decimal::is_zero(&self) -> bool
    422 pub fn radroots_core::decimal::Decimal::normalize(&self) -> Self
    423 pub fn radroots_core::decimal::Decimal::rescale(&mut self, u32)
    424 pub fn radroots_core::decimal::Decimal::scale(&self) -> u32
    425 pub fn radroots_core::decimal::Decimal::to_f64_lossy(&self) -> core::option::Option<f64>
    426 pub fn radroots_core::decimal::Decimal::to_u64_exact(&self) -> core::option::Option<u64>
    427 pub fn radroots_core::decimal::Decimal::try_rescale_exact(&mut self, u32) -> core::result::Result<(), radroots_core::decimal::Error>
    428 impl core::convert::From<i32> for radroots_core::decimal::Decimal
    429 pub fn radroots_core::decimal::Decimal::from(i32) -> Self
    430 impl core::convert::From<i64> for radroots_core::decimal::Decimal
    431 pub fn radroots_core::decimal::Decimal::from(i64) -> Self
    432 impl core::convert::From<u32> for radroots_core::decimal::Decimal
    433 pub fn radroots_core::decimal::Decimal::from(u32) -> Self
    434 impl core::convert::From<u64> for radroots_core::decimal::Decimal
    435 pub fn radroots_core::decimal::Decimal::from(u64) -> Self
    436 impl core::fmt::Display for radroots_core::decimal::Decimal
    437 pub fn radroots_core::decimal::Decimal::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    438 impl core::str::traits::FromStr for radroots_core::decimal::Decimal
    439 pub type radroots_core::decimal::Decimal::Err = radroots_core::decimal::Error
    440 pub fn radroots_core::decimal::Decimal::from_str(&str) -> core::result::Result<Self, Self::Err>
    441 impl serde_core::ser::Serialize for radroots_core::decimal::Decimal
    442 pub fn radroots_core::decimal::Decimal::serialize<S: serde_core::ser::Serializer>(&self, S) -> core::result::Result<<S as serde_core::ser::Serializer>::Ok, <S as serde_core::ser::Serializer>::Error>
    443 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::decimal::Decimal
    444 pub fn radroots_core::decimal::Decimal::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    445 pub struct radroots_core::Money
    446 impl radroots_core::money::Money
    447 pub const fn radroots_core::money::Money::amount(&self) -> radroots_core::decimal::Decimal
    448 pub fn radroots_core::money::Money::checked_add(&self, &Self) -> core::result::Result<Self, radroots_core::money::Error>
    449 pub fn radroots_core::money::Money::checked_div_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::money::Error>
    450 pub fn radroots_core::money::Money::checked_mul_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::money::Error>
    451 pub fn radroots_core::money::Money::checked_sub(&self, &Self) -> core::result::Result<Self, radroots_core::money::Error>
    452 pub const fn radroots_core::money::Money::currency(&self) -> radroots_core::currency::Currency
    453 pub fn radroots_core::money::Money::from_minor_units_u32(u32, radroots_core::currency::Currency) -> Self
    454 pub fn radroots_core::money::Money::from_minor_units_u64(u64, radroots_core::currency::Currency) -> Self
    455 pub fn radroots_core::money::Money::is_zero(&self) -> bool
    456 pub fn radroots_core::money::Money::quantize_to_currency(self) -> Self
    457 pub fn radroots_core::money::Money::to_minor_units_u32_exact(&self) -> core::result::Result<u32, radroots_core::money::Error>
    458 pub fn radroots_core::money::Money::to_minor_units_u32_rounded(&self) -> core::result::Result<u32, radroots_core::money::Error>
    459 pub fn radroots_core::money::Money::to_minor_units_u64_exact(&self) -> core::result::Result<u64, radroots_core::money::Error>
    460 pub fn radroots_core::money::Money::to_minor_units_u64_rounded(&self) -> core::result::Result<u64, radroots_core::money::Error>
    461 pub fn radroots_core::money::Money::try_new(radroots_core::decimal::Decimal, radroots_core::currency::Currency) -> core::result::Result<Self, radroots_core::money::Error>
    462 pub fn radroots_core::money::Money::try_with_scale_exact(self, u32) -> core::result::Result<Self, radroots_core::money::Error>
    463 pub fn radroots_core::money::Money::zero(radroots_core::currency::Currency) -> Self
    464 impl core::fmt::Display for radroots_core::money::Money
    465 pub fn radroots_core::money::Money::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    466 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::money::Money
    467 pub fn radroots_core::money::Money::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    468 pub struct radroots_core::Percent
    469 impl radroots_core::percent::Percent
    470 pub fn radroots_core::percent::Percent::new(radroots_core::decimal::Decimal) -> Self
    471 pub fn radroots_core::percent::Percent::try_from_ratio(radroots_core::decimal::Decimal) -> core::result::Result<Self, radroots_core::decimal::Error>
    472 pub fn radroots_core::percent::Percent::try_of_money(&self, &radroots_core::money::Money) -> core::result::Result<radroots_core::money::Money, radroots_core::money::Error>
    473 pub fn radroots_core::percent::Percent::try_of_money_quantized(&self, &radroots_core::money::Money) -> core::result::Result<radroots_core::money::Money, radroots_core::money::Error>
    474 pub fn radroots_core::percent::Percent::try_to_ratio(&self) -> core::result::Result<radroots_core::decimal::Decimal, radroots_core::decimal::Error>
    475 pub const fn radroots_core::percent::Percent::value(&self) -> radroots_core::decimal::Decimal
    476 impl core::fmt::Display for radroots_core::percent::Percent
    477 pub fn radroots_core::percent::Percent::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    478 impl core::str::traits::FromStr for radroots_core::percent::Percent
    479 pub type radroots_core::percent::Percent::Err = radroots_core::percent::ParseError
    480 pub fn radroots_core::percent::Percent::from_str(&str) -> core::result::Result<Self, Self::Err>
    481 pub struct radroots_core::Quantity
    482 impl radroots_core::quantity::Quantity
    483 pub const fn radroots_core::quantity::Quantity::amount(&self) -> radroots_core::decimal::Decimal
    484 pub fn radroots_core::quantity::Quantity::canonical_unit(&self) -> radroots_core::unit::Unit
    485 pub fn radroots_core::quantity::Quantity::checked_add(&self, &radroots_core::quantity::Quantity) -> core::option::Option<radroots_core::quantity::Quantity>
    486 pub fn radroots_core::quantity::Quantity::checked_div_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    487 pub fn radroots_core::quantity::Quantity::checked_mul_decimal(&self, radroots_core::decimal::Decimal) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    488 pub fn radroots_core::quantity::Quantity::checked_sub(&self, &radroots_core::quantity::Quantity) -> core::option::Option<radroots_core::quantity::Quantity>
    489 pub fn radroots_core::quantity::Quantity::clear_label(self) -> Self
    490 pub fn radroots_core::quantity::Quantity::is_canonical(&self) -> bool
    491 pub fn radroots_core::quantity::Quantity::is_zero(&self) -> bool
    492 pub fn radroots_core::quantity::Quantity::label(&self) -> core::option::Option<&str>
    493 pub fn radroots_core::quantity::Quantity::to_canonical(&self) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::unit::ConvertError>
    494 pub fn radroots_core::quantity::Quantity::try_add(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    495 pub fn radroots_core::quantity::Quantity::try_convert_to(&self, radroots_core::unit::Unit) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::unit::ConvertError>
    496 pub fn radroots_core::quantity::Quantity::try_new(radroots_core::decimal::Decimal, radroots_core::unit::Unit) -> core::result::Result<Self, radroots_core::quantity::Error>
    497 pub fn radroots_core::quantity::Quantity::try_sub(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::quantity::Quantity, radroots_core::quantity::Error>
    498 pub const fn radroots_core::quantity::Quantity::unit(&self) -> radroots_core::unit::Unit
    499 pub fn radroots_core::quantity::Quantity::with_label<S: core::convert::Into<alloc::string::String>>(self, S) -> Self
    500 pub fn radroots_core::quantity::Quantity::with_optional_label<S: core::convert::Into<alloc::string::String>>(self, core::option::Option<S>) -> Self
    501 pub fn radroots_core::quantity::Quantity::zero(radroots_core::unit::Unit) -> Self
    502 impl core::fmt::Display for radroots_core::quantity::Quantity
    503 pub fn radroots_core::quantity::Quantity::fmt(&self, &mut core::fmt::Formatter<'_>) -> core::fmt::Result
    504 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::quantity::Quantity
    505 pub fn radroots_core::quantity::Quantity::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>
    506 pub struct radroots_core::QuantityPrice
    507 impl radroots_core::QuantityPrice
    508 pub fn radroots_core::QuantityPrice::amount(&self) -> &radroots_core::money::Money
    509 pub fn radroots_core::QuantityPrice::is_price_per_canonical_unit(&self) -> bool
    510 pub fn radroots_core::QuantityPrice::quantity(&self) -> &radroots_core::quantity::Quantity
    511 pub fn radroots_core::QuantityPrice::try_cost_for_amount_in(&self, radroots_core::decimal::Decimal, radroots_core::unit::Unit) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    512 pub fn radroots_core::QuantityPrice::try_cost_for_quantity_in(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    513 pub fn radroots_core::QuantityPrice::try_new(radroots_core::money::Money, radroots_core::quantity::Quantity) -> core::result::Result<Self, radroots_core::pricing::Error>
    514 pub fn radroots_core::QuantityPrice::try_to_canonical_unit_price(&self) -> core::result::Result<radroots_core::QuantityPrice, radroots_core::pricing::Error>
    515 pub fn radroots_core::QuantityPrice::try_to_unit_price(&self, radroots_core::unit::Unit) -> core::result::Result<radroots_core::QuantityPrice, radroots_core::pricing::Error>
    516 pub fn radroots_core::QuantityPrice::validate(&self) -> core::result::Result<(), radroots_core::pricing::Error>
    517 impl radroots_core::pricing::QuantityPriceOps for radroots_core::QuantityPrice
    518 pub fn radroots_core::QuantityPrice::try_cost_for(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    519 pub fn radroots_core::QuantityPrice::try_cost_for_rounded(&self, &radroots_core::quantity::Quantity) -> core::result::Result<radroots_core::money::Money, radroots_core::pricing::Error>
    520 impl<'de> serde_core::de::Deserialize<'de> for radroots_core::QuantityPrice
    521 pub fn radroots_core::QuantityPrice::deserialize<D: serde_core::de::Deserializer<'de>>(D) -> core::result::Result<Self, <D as serde_core::de::Deserializer>::Error>