summaryrefslogtreecommitdiffstats
path: root/cli/src
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2021-07-31 21:27:48 +0200
committerGustav Sörnäs <gustav@sornas.net>2021-07-31 21:27:48 +0200
commitc04bf490e989b17c2427d94f1d05cf57ebc1d846 (patch)
tree86227a1c52d69b228014ab64474880e952a6a3ca /cli/src
parentc5ae93a7ac10a1b7e8fc81418bbc788edc943f83 (diff)
downloadmoney-c04bf490e989b17c2427d94f1d05cf57ebc1d846.tar.gz
working sort_by_func
Diffstat (limited to 'cli/src')
-rw-r--r--cli/src/main.rs14
1 files changed, 7 insertions, 7 deletions
diff --git a/cli/src/main.rs b/cli/src/main.rs
index 677ba1e..7e1b80f 100644
--- a/cli/src/main.rs
+++ b/cli/src/main.rs
@@ -154,17 +154,17 @@ fn main() {
}
}
-fn sort_by_func(sort: &SortTarget) -> Box<dyn FnMut(&Transaction, &Transaction) -> std::cmp::Ordering> {
+fn sort_by_func(sort: &SortTarget) -> Box<dyn FnMut(&&Transaction, &&Transaction) -> std::cmp::Ordering> {
match sort {
- SortTarget::Amount => |t1, t2| t1.amount.cmp(&t2.amount),
- SortTarget::Date => |t1, t2| t1.date.cmp(&t2.date),
+ SortTarget::Amount => Box::new(|t1: &&Transaction, t2: &&Transaction| t1.amount.cmp(&t2.amount)),
+ SortTarget::Date => Box::new(|t1: &&Transaction, t2: &&Transaction| t1.date.cmp(&t2.date)),
}
}
-fn inner_sort_by(
- v: &mut [Transaction],
- mut outer_cmp: Box<dyn FnMut(&Transaction, &Transaction) -> std::cmp::Ordering>,
- mut inner_cmp: Box<dyn FnMut(&Transaction, &Transaction) -> std::cmp::Ordering>,
+fn inner_sort_by<T>(
+ v: &mut [T],
+ mut outer_cmp: Box<dyn FnMut(&T, &T) -> std::cmp::Ordering>,
+ mut inner_cmp: Box<dyn FnMut(&T, &T) -> std::cmp::Ordering>,
) {
// Early out
if v.len() < 2 {