pub struct TaxProvision {
pub id: String,
pub entity_id: String,
pub period: NaiveDate,
pub current_tax_expense: Decimal,
pub deferred_tax_asset: Decimal,
pub deferred_tax_liability: Decimal,
pub statutory_rate: Decimal,
pub effective_rate: Decimal,
pub rate_reconciliation: Vec<RateReconciliationItem>,
}Expand description
Income tax provision computed under ASC 740 / IAS 12.
Fields§
§id: StringUnique provision identifier
entity_id: StringLegal entity the provision relates to
period: NaiveDatePeriod end date
current_tax_expense: DecimalCurrent period income tax expense
deferred_tax_asset: DecimalDeferred tax asset balance
deferred_tax_liability: DecimalDeferred tax liability balance
statutory_rate: DecimalStatutory tax rate
effective_rate: DecimalEffective tax rate after permanent and temporary differences
rate_reconciliation: Vec<RateReconciliationItem>Rate reconciliation from statutory to effective rate
Implementations§
Source§impl TaxProvision
impl TaxProvision
Sourcepub fn new(
id: impl Into<String>,
entity_id: impl Into<String>,
period: NaiveDate,
current_tax_expense: Decimal,
deferred_tax_asset: Decimal,
deferred_tax_liability: Decimal,
statutory_rate: Decimal,
effective_rate: Decimal,
) -> Self
pub fn new( id: impl Into<String>, entity_id: impl Into<String>, period: NaiveDate, current_tax_expense: Decimal, deferred_tax_asset: Decimal, deferred_tax_liability: Decimal, statutory_rate: Decimal, effective_rate: Decimal, ) -> Self
Creates a new tax provision.
Sourcepub fn with_reconciliation_item(
self,
description: impl Into<String>,
rate_impact: Decimal,
) -> Self
pub fn with_reconciliation_item( self, description: impl Into<String>, rate_impact: Decimal, ) -> Self
Adds a rate reconciliation item.
Sourcepub fn net_deferred_tax(&self) -> Decimal
pub fn net_deferred_tax(&self) -> Decimal
Computes the net deferred tax position.
Positive value indicates a net deferred tax asset; negative indicates a net deferred tax liability.
Trait Implementations§
Source§impl Clone for TaxProvision
impl Clone for TaxProvision
Source§fn clone(&self) -> TaxProvision
fn clone(&self) -> TaxProvision
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TaxProvision
impl Debug for TaxProvision
Source§impl<'de> Deserialize<'de> for TaxProvision
impl<'de> Deserialize<'de> for TaxProvision
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 TaxProvision
impl RefUnwindSafe for TaxProvision
impl Send for TaxProvision
impl Sync for TaxProvision
impl Unpin for TaxProvision
impl UnsafeUnpin for TaxProvision
impl UnwindSafe for TaxProvision
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