aboutsummaryrefslogtreecommitdiff
path: root/src/lib.rs
diff options
context:
space:
mode:
authoromagdy <omar.professional8777@gmail.com>2025-07-22 06:08:36 +0300
committeromagdy <omar.professional8777@gmail.com>2025-07-22 06:10:05 +0300
commit8d3c6333619e511b5f103f382d21a9891dd0e794 (patch)
tree67f9bb412c7eadecacf50e44caa29137c0a07ff5 /src/lib.rs
parent846479e6bcf8238879546534b09e141b9bb668f8 (diff)
downloadredis-rust-8d3c6333619e511b5f103f382d21a9891dd0e794.tar.xz
redis-rust-8d3c6333619e511b5f103f382d21a9891dd0e794.zip
feat: Added a feature to proprely parse rdb files and added support for KEYS command
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 060106b..c660fd8 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -2,6 +2,7 @@ use std::{env, sync::Arc};
#[macro_use]
pub mod macros;
+pub mod rdb;
pub mod resp_commands;
pub mod resp_parser;
pub mod shared_cache;
@@ -15,9 +16,13 @@ pub struct Config {
pub type SharedConfig = Arc<Option<Config>>;
impl Config {
- pub fn new() -> Result<Config, String> {
+ pub fn new() -> Result<Option<Config>, String> {
let args: Vec<String> = env::args().collect();
+ if args.len() == 1 {
+ return Ok(None);
+ }
+
let mut dir = None;
let mut dbfilename = None;
@@ -44,6 +49,6 @@ impl Config {
}
}
- Ok(Config { dir, dbfilename })
+ Ok(Some(Config { dir, dbfilename }))
}
}