diff options
| author | omagdy <omar.professional8777@gmail.com> | 2025-07-22 07:12:55 +0300 |
|---|---|---|
| committer | omagdy <omar.professional8777@gmail.com> | 2025-07-22 07:12:55 +0300 |
| commit | 257330132dacc2e754a858c342be1ef2a1105c8f (patch) | |
| tree | c3958d37ab411da866dbff1cbf06cfc73ec058b9 /src/lib.rs | |
| parent | 7e7ad6f35e32810f2083c0a78afe1e38c1c9f5f0 (diff) | |
| download | redis-rust-257330132dacc2e754a858c342be1ef2a1105c8f.tar.xz redis-rust-257330132dacc2e754a858c342be1ef2a1105c8f.zip | |
feat: Configure listening port throught command line arguments
Diffstat (limited to 'src/lib.rs')
| -rw-r--r-- | src/lib.rs | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -11,6 +11,7 @@ pub mod shared_cache; pub struct Config { pub dir: Option<String>, pub dbfilename: Option<String>, + pub port: Option<String>, } pub type SharedConfig = Arc<Option<Config>>; @@ -25,6 +26,7 @@ impl Config { let mut dir = None; let mut dbfilename = None; + let mut port = None; let mut i = 1; // Skip program name while i < args.len() { @@ -43,12 +45,23 @@ impl Config { dbfilename = Some(args[i + 1].clone()); i += 2; } + "--port" => { + if i + 1 >= args.len() { + return Err("--dbfilename requires a value".to_string()); + } + port = Some(args[i + 1].clone()); + i += 2; + } _ => { return Err(format!("Unknown argument: {}", args[i])); } } } - Ok(Some(Config { dir, dbfilename })) + Ok(Some(Config { + dir, + dbfilename, + port, + })) } } |
