mirror of
https://github.com/ankitects/anki.git
synced 2025-09-19 06:22:22 -04:00
Refactor FSRS data clearing into Card::clear_fsrs_data (#4123)
Extracted repeated logic for clearing FSRS-related fields into a new Card::clear_fsrs_data() method. Updated set_deck and FSRS disabling code paths to use this method for improved code reuse and maintainability.
This commit is contained in:
parent
d6f93fab76
commit
992fb054bd
2 changed files with 8 additions and 6 deletions
|
@ -185,12 +185,16 @@ impl Card {
|
||||||
self.usn = usn;
|
self.usn = usn;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Caller must ensure provided deck exists and is not filtered.
|
pub fn clear_fsrs_data(&mut self) {
|
||||||
fn set_deck(&mut self, deck: DeckId) {
|
|
||||||
self.remove_from_filtered_deck_restoring_queue();
|
|
||||||
self.memory_state = None;
|
self.memory_state = None;
|
||||||
self.desired_retention = None;
|
self.desired_retention = None;
|
||||||
self.decay = None;
|
self.decay = None;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Caller must ensure provided deck exists and is not filtered.
|
||||||
|
fn set_deck(&mut self, deck: DeckId) {
|
||||||
|
self.remove_from_filtered_deck_restoring_queue();
|
||||||
|
self.clear_fsrs_data();
|
||||||
self.deck_id = deck;
|
self.deck_id = deck;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -188,9 +188,7 @@ impl Collection {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// clear FSRS data if FSRS is disabled
|
// clear FSRS data if FSRS is disabled
|
||||||
card.memory_state = None;
|
card.clear_fsrs_data();
|
||||||
card.desired_retention = None;
|
|
||||||
card.decay = None;
|
|
||||||
}
|
}
|
||||||
self.update_card_inner(&mut card, original, usn)?;
|
self.update_card_inner(&mut card, original, usn)?;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue