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>