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 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