cli.rs
1 use clap::Parser; 2 3 #[derive(Debug, Parser)] 4 pub struct Cli { 5 #[command(flatten)] 6 pub verbosity: clap_verbosity_flag::Verbosity<clap_verbosity_flag::InfoLevel>, 7 8 /// Path of the configuration file 9 #[clap(long, short)] 10 pub config: Option<camino::Utf8PathBuf>, 11 12 /// Enable some additional loggers 13 #[clap(long = "enable-logger")] 14 pub logger: Option<Vec<Logger>>, 15 16 #[clap(subcommand)] 17 pub command: crate::commands::Command, 18 } 19 20 #[derive(Debug, Clone, Copy, Eq, PartialEq, Hash, clap::ValueEnum)] 21 pub enum Logger { 22 /// Enable the file logger, logging to a file in CWD named "distrox-cli.$PID.log" 23 File, 24 25 /// Enable the "tracy" logger backend 26 #[cfg(feature = "tracy")] 27 Tracy, 28 }