ecb_rates/table/table_trait.rs
1use crate::cli::SortBy;
2
3pub trait TableTrait<'a> {
4 type Header;
5 type ColumnLeft;
6 type ColumnRight;
7 type RowLeft;
8
9 fn new(
10 header: Option<Self::Header>,
11 column_left: Self::ColumnLeft,
12 column_right: Self::ColumnRight,
13 ) -> Self;
14 fn disable_header(&mut self);
15 fn set_header(&mut self, header: Self::Header);
16 fn add_row(&mut self, row_left: Self::RowLeft, row_right: f64);
17 fn sort(&mut self, sort_by: &SortBy);
18}