Add basic logger
This commit is contained in:
parent
45914bd567
commit
5ea52fdf0e
35
src/logger.rs
Normal file
35
src/logger.rs
Normal file
@ -0,0 +1,35 @@
|
||||
#[derive(Debug, Default)]
|
||||
pub struct Logger {
|
||||
pub quiet: bool,
|
||||
}
|
||||
|
||||
impl Logger {
|
||||
pub fn info(&self, message: impl ToString) {
|
||||
if self.quiet {
|
||||
return;
|
||||
}
|
||||
println!("{}", message.to_string());
|
||||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! log {
|
||||
($logger:expr, $level:ident, $($args:tt)*) => {
|
||||
$logger.$level(format!($($args)*));
|
||||
};
|
||||
($logger:expr, $($args:tt)*) => {
|
||||
log!($logger, info, $($args)*);
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod test {
|
||||
use crate::logger::Logger;
|
||||
|
||||
#[test]
|
||||
#[ignore]
|
||||
fn syntax_test() {
|
||||
let logger = Logger { quiet: false };
|
||||
log!(logger, "Foo {}", "bar");
|
||||
}
|
||||
}
|
||||
@ -2,9 +2,11 @@ mod action;
|
||||
mod file;
|
||||
mod os_string_builder;
|
||||
mod server;
|
||||
mod logger;
|
||||
|
||||
use crate::action::{Action, FileAction, ServerActions};
|
||||
use crate::file::{FileMatcher, FileNameInfo};
|
||||
use crate::logger::Logger;
|
||||
use crate::os_string_builder::ReplaceWithOsStr;
|
||||
use clap::{Parser, Subcommand, ValueEnum};
|
||||
use lazy_regex::{lazy_regex, Lazy, Regex};
|
||||
@ -109,6 +111,8 @@ enum OldVersionPolicy {
|
||||
|
||||
fn main() -> Result<(), String> {
|
||||
let args = Args::parse();
|
||||
|
||||
let logger = Logger { quiet: false };
|
||||
|
||||
let mut configured_servers = LazyCell::new(parse_server_configuration_from_env);
|
||||
let servers = args
|
||||
|
||||
Loading…
Reference in New Issue
Block a user