pub struct AmountModificationStrategy {
pub min_multiplier: f64,
pub max_multiplier: f64,
pub prefer_round_numbers: bool,
pub rebalance_entry: bool,
}Expand description
Strategy for modifying amounts.
Fields§
§min_multiplier: f64Minimum multiplier for amount changes.
max_multiplier: f64Maximum multiplier for amount changes.
prefer_round_numbers: boolWhether to use round numbers.
rebalance_entry: boolWhether to rebalance the entry after modification. If true, a corresponding line will be adjusted to maintain balance. If false, the entry will become unbalanced (for intentional fraud detection).
Trait Implementations§
Source§impl Default for AmountModificationStrategy
impl Default for AmountModificationStrategy
Source§impl InjectionStrategy for AmountModificationStrategy
impl InjectionStrategy for AmountModificationStrategy
Source§fn can_apply(&self, entry: &JournalEntry) -> bool
fn can_apply(&self, entry: &JournalEntry) -> bool
Whether this strategy can be applied to the given entry.
Source§fn apply<R: Rng>(
&self,
entry: &mut JournalEntry,
anomaly_type: &AnomalyType,
rng: &mut R,
) -> InjectionResult
fn apply<R: Rng>( &self, entry: &mut JournalEntry, anomaly_type: &AnomalyType, rng: &mut R, ) -> InjectionResult
Applies the strategy to modify an entry.
Auto Trait Implementations§
impl Freeze for AmountModificationStrategy
impl RefUnwindSafe for AmountModificationStrategy
impl Send for AmountModificationStrategy
impl Sync for AmountModificationStrategy
impl Unpin for AmountModificationStrategy
impl UnsafeUnpin for AmountModificationStrategy
impl UnwindSafe for AmountModificationStrategy
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
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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
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
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.