pub struct Provision {
pub id: String,
pub entity_code: String,
pub provision_type: ProvisionType,
pub description: String,
pub best_estimate: Decimal,
pub range_low: Decimal,
pub range_high: Decimal,
pub discount_rate: Option<Decimal>,
pub expected_utilization_date: NaiveDate,
pub framework: String,
pub currency: String,
}Expand description
A recognised provision per IAS 37 / ASC 450.
A provision is recognised when there is a present obligation, an outflow of resources is probable, and a reliable estimate can be made.
Fields§
§id: StringUnique provision identifier.
entity_code: StringCompany / entity code.
provision_type: ProvisionTypeProvision category.
description: StringDescription of the obligation (e.g. “Product warranty — FY2024 sales”).
best_estimate: DecimalBest estimate of the expenditure required to settle the obligation.
range_low: DecimalLower end of the estimated range.
range_high: DecimalUpper end of the estimated range.
discount_rate: Option<Decimal>Discount rate applied to long-term provisions (e.g. 0.04 = 4%).
None for provisions expected to be settled within 12 months.
expected_utilization_date: NaiveDateExpected date of cash outflow / settlement.
framework: StringAccounting framework governing recognition: "IFRS" or "US_GAAP".
currency: StringReporting currency code.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Provision
impl<'de> Deserialize<'de> for Provision
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for Provision
impl RefUnwindSafe for Provision
impl Send for Provision
impl Sync for Provision
impl Unpin for Provision
impl UnsafeUnpin for Provision
impl UnwindSafe for Provision
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more