ecb_rates/cli/sort_by.rs
1use clap::ValueEnum;
2
3#[derive(Debug, ValueEnum, Clone)]
4pub enum SortBy {
5 Currency,
6 Rate,
7}
8
9impl SortBy {
10 pub fn get_comparer(&self) -> fn(&(&str, f64), &(&str, f64)) -> std::cmp::Ordering {
11 match self {
12 Self::Currency => |a, b| a.0.cmp(b.0),
13 Self::Rate => |a, b| a.1.total_cmp(&b.1),
14 }
15 }
16}