pub struct TaxProvisionGenerator { /* private fields */ }Expand description
Generates income tax provisions under ASC 740 / IAS 12.
Given pre-tax income and a statutory rate, the generator:
- Selects 2-5 rate reconciliation items from the candidate pool.
- Computes the effective rate as
statutory_rate + sum(reconciliation impacts). - Computes
current_tax_expense = pre_tax_income * effective_rate. - Generates realistic deferred tax asset and liability balances.
Implementations§
Source§impl TaxProvisionGenerator
impl TaxProvisionGenerator
Sourcepub fn new(seed: u64) -> Self
pub fn new(seed: u64) -> Self
Creates a new tax provision generator with the given deterministic seed.
Sourcepub fn generate(
&mut self,
entity_id: &str,
period: NaiveDate,
pre_tax_income: Decimal,
statutory_rate: Decimal,
) -> TaxProvision
pub fn generate( &mut self, entity_id: &str, period: NaiveDate, pre_tax_income: Decimal, statutory_rate: Decimal, ) -> TaxProvision
Generate a tax provision for a period.
§Arguments
entity_id- Legal entity identifier.period- Period end date.pre_tax_income- Pre-tax income from financial statements.statutory_rate- Statutory corporate tax rate (e.g.,0.21for US).
Auto Trait Implementations§
impl Freeze for TaxProvisionGenerator
impl RefUnwindSafe for TaxProvisionGenerator
impl Send for TaxProvisionGenerator
impl Sync for TaxProvisionGenerator
impl Unpin for TaxProvisionGenerator
impl UnsafeUnpin for TaxProvisionGenerator
impl UnwindSafe for TaxProvisionGenerator
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