Add more todos, ExportOptions
struct
This commit is contained in:
parent
51db6ea06e
commit
59c4020a01
|
@ -82,7 +82,7 @@ pub struct MergedLimitList {
|
||||||
}
|
}
|
||||||
|
|
||||||
impl MergedLimitList {
|
impl MergedLimitList {
|
||||||
pub fn new() -> Self {
|
pub fn default() -> Self {
|
||||||
Self {
|
Self {
|
||||||
hosts: HashMap::new(),
|
hosts: HashMap::new(),
|
||||||
trusts: (0, 0),
|
trusts: (0, 0),
|
||||||
|
@ -139,9 +139,22 @@ impl MergedLimitList {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO implement
|
||||||
|
pub struct ExportOptions {
|
||||||
|
pub export_format: String, // TODO custom enum for export formats = txt, csv, etc.
|
||||||
|
pub suspend_path: PathBuf,
|
||||||
|
pub suspend_thresholds: Vec<u16>,
|
||||||
|
|
||||||
|
pub silence_path: PathBuf,
|
||||||
|
pub silence_thresholds: Vec<u16>,
|
||||||
|
|
||||||
|
pub alphabetize: bool,
|
||||||
|
pub suppress_reviewables: bool,
|
||||||
|
}
|
||||||
|
|
||||||
pub fn alphabetize_lines(string: String) -> String {
|
pub fn alphabetize_lines(string: String) -> String {
|
||||||
let mut v: Vec<&str> = string.lines().collect();
|
let mut v: Vec<&str> = string.lines().collect();
|
||||||
v.sort_by_key(|a| a.to_lowercase());
|
v.sort_by_key(|a| a.to_lowercase());
|
||||||
|
|
||||||
v.join("\n") + "\n"
|
v.join("\n") + "\n"
|
||||||
}
|
}
|
|
@ -1,10 +1,11 @@
|
||||||
// src/main.rs
|
// src/main.rs
|
||||||
|
|
||||||
mod cli;
|
mod cli;
|
||||||
mod manip;
|
mod list;
|
||||||
|
mod parse;
|
||||||
|
|
||||||
use glob::glob;
|
use glob::glob;
|
||||||
use manip::{Limit, LimitList, MergedLimitList};
|
use list::{Limit, LimitList, MergedLimitList};
|
||||||
|
|
||||||
fn main() -> std::io::Result<()> {
|
fn main() -> std::io::Result<()> {
|
||||||
env_logger::init(); // TODO add more logging & actual error handling
|
env_logger::init(); // TODO add more logging & actual error handling
|
||||||
|
@ -14,7 +15,7 @@ fn main() -> std::io::Result<()> {
|
||||||
|
|
||||||
// TODO parse config file if one is provided
|
// TODO parse config file if one is provided
|
||||||
|
|
||||||
let mut merged_list = MergedLimitList::new();
|
let mut merged_list = MergedLimitList::default();
|
||||||
|
|
||||||
// Crawl /suspend for suspend lists -> glob pattern: "suspend/**/*.txt"
|
// Crawl /suspend for suspend lists -> glob pattern: "suspend/**/*.txt"
|
||||||
{
|
{
|
||||||
|
|
5
src/parse.rs
Normal file
5
src/parse.rs
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
// src/parser.rs
|
||||||
|
|
||||||
|
// TODO FileParser trait:
|
||||||
|
// * fn read(pathbuf?) -> result<list>
|
||||||
|
// * fn write(list, pathbuf) -> result<()>
|
Loading…
Reference in a new issue