use clap::Parser; use r2d2::Pool; use r2d2_sqlite::SqliteConnectionManager; #[derive(Parser)] pub struct Arguments { /// IP address #[arg(short, long, default_value_t = String::from("127.0.0.1"))] pub ip: String, /// Port to listen to #[arg(short, long, default_value_t = 8333)] pub port: u16, /// root of the url ending and starting with / #[arg(short, long, default_value_t = String::from("/"))] pub root: String, /// sqlite database path #[arg(short, long, default_value_t = String::from("db/db.sqlite3"))] pub db: String, } impl Arguments { pub fn parse_args() -> Arguments { let args = Arguments::parse(); args } } #[derive(Clone)] pub struct AppData { pub app_name: String, pub base_url: String, pub db_pool: Pool, }