pub struct MaterialityCalculation {
pub entity_code: String,
pub period: String,
pub benchmark: MaterialityBenchmark,
pub benchmark_amount: Decimal,
pub benchmark_percentage: Decimal,
pub overall_materiality: Decimal,
pub performance_materiality: Decimal,
pub clearly_trivial: Decimal,
pub tolerable_error: Decimal,
pub sad_nominal: Decimal,
pub normalized_earnings: Option<NormalizedEarnings>,
pub rationale: String,
}Expand description
Materiality calculation for a single entity and reporting period.
Generated once per entity per period. All monetary amounts are in the entity’s functional currency.
Fields§
§entity_code: StringEntity / company code.
period: StringHuman-readable period descriptor (e.g. “FY2024”).
benchmark: MaterialityBenchmarkBenchmark selected for this entity.
benchmark_amount: DecimalRaw benchmark amount drawn from financial data.
benchmark_percentage: DecimalPercentage applied to the benchmark (e.g. 0.05 for 5%).
overall_materiality: DecimalOverall materiality = benchmark_amount × benchmark_percentage.
performance_materiality: DecimalPerformance materiality (typically 50–75% of overall; default 65%). Used to reduce the risk that aggregate uncorrected misstatements exceed overall materiality (ISA 320.11).
clearly_trivial: DecimalClearly trivial threshold (typically 5% of overall). Misstatements below this amount need not be accumulated (ISA 450.A2).
tolerable_error: DecimalTolerable error — equals performance materiality for sampling purposes.
sad_nominal: DecimalSummary of Audit Differences (SAD) nominal threshold — misstatements below this amount need not be individually tracked in the SAD schedule. Set to 5% of overall materiality per common practice (ISA 450).
normalized_earnings: Option<NormalizedEarnings>Optional normalized earnings schedule (generated when reported earnings are unusual or volatile).
rationale: StringAuditor’s narrative rationale for the benchmark choice.
Implementations§
Source§impl MaterialityCalculation
impl MaterialityCalculation
Sourcepub fn new(
entity_code: &str,
period: &str,
benchmark: MaterialityBenchmark,
benchmark_amount: Decimal,
benchmark_percentage: Decimal,
pm_percentage: Decimal,
normalized_earnings: Option<NormalizedEarnings>,
rationale: &str,
) -> Self
pub fn new( entity_code: &str, period: &str, benchmark: MaterialityBenchmark, benchmark_amount: Decimal, benchmark_percentage: Decimal, pm_percentage: Decimal, normalized_earnings: Option<NormalizedEarnings>, rationale: &str, ) -> Self
Derive the computed amounts from the supplied inputs.
§Arguments
entity_code— Entity identifier.period— Period descriptor.benchmark— Chosen benchmark type.benchmark_amount— Raw benchmark figure.benchmark_percentage— Decimal fraction to apply (e.g.dec!(0.05)for 5%).pm_percentage— Performance materiality as fraction of overall (e.g.dec!(0.65)).normalized_earnings— Optional normalized earnings schedule.rationale— Free-text rationale for the benchmark selection.
Trait Implementations§
Source§impl Clone for MaterialityCalculation
impl Clone for MaterialityCalculation
Source§fn clone(&self) -> MaterialityCalculation
fn clone(&self) -> MaterialityCalculation
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MaterialityCalculation
impl Debug for MaterialityCalculation
Source§impl<'de> Deserialize<'de> for MaterialityCalculation
impl<'de> Deserialize<'de> for MaterialityCalculation
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>,
Auto Trait Implementations§
impl Freeze for MaterialityCalculation
impl RefUnwindSafe for MaterialityCalculation
impl Send for MaterialityCalculation
impl Sync for MaterialityCalculation
impl Unpin for MaterialityCalculation
impl UnsafeUnpin for MaterialityCalculation
impl UnwindSafe for MaterialityCalculation
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.