(&self, key: &str)
| 725 | } |
| 726 | |
| 727 | fn frecency_score(&self, key: &str) -> f64 { |
| 728 | let Some(entry) = self.frecency.get(key) else { |
| 729 | return 0.0; |
| 730 | }; |
| 731 | let now = chrono::Utc::now().timestamp_millis(); |
| 732 | let days_since = (now - entry.last_used).max(0) as f64 / 86_400_000.0; |
| 733 | let weight = 1.0 / (1.0 + days_since); |
| 734 | entry.frequency as f64 * weight |
| 735 | } |
| 736 | |
| 737 | fn selected_suggestion(&self) -> Option<&str> { |
| 738 | self.suggestion_index |
no test coverage detected