From 11535a3fb6a4ee5fe73f25e1ed076323ab6c210f Mon Sep 17 00:00:00 2001 From: Ajeet D'Souza <98ajeet@gmail.com> Date: Tue, 31 Aug 2021 11:54:39 +0530 Subject: [PATCH] Fix lints --- src/app/add.rs | 2 +- src/app/query.rs | 2 +- src/app/remove.rs | 2 +- src/config.rs | 24 +++++++++++++----------- src/db/mod.rs | 6 +++++- src/util.rs | 32 ++++++++++++-------------------- 6 files changed, 33 insertions(+), 35 deletions(-) diff --git a/src/app/add.rs b/src/app/add.rs index 7f73400..c735f19 100644 --- a/src/app/add.rs +++ b/src/app/add.rs @@ -21,7 +21,7 @@ impl Run for Add { let mut db = DatabaseFile::new(data_dir); let mut db = db.open()?; - for path in self.paths.iter() { + for path in &self.paths { let path = if config::resolve_symlinks() { util::canonicalize(path) } else { diff --git a/src/app/query.rs b/src/app/query.rs index 5abd28d..ff23090 100644 --- a/src/app/query.rs +++ b/src/app/query.rs @@ -42,7 +42,7 @@ impl Query { print!("{}", selection); } else { let path = selection.get(5..).context("could not read selection from fzf")?; - print!("{}", path) + print!("{}", path); } } else if self.list { let stdout = io::stdout(); diff --git a/src/app/remove.rs b/src/app/remove.rs index 8d83264..29aa0ad 100644 --- a/src/app/remove.rs +++ b/src/app/remove.rs @@ -35,7 +35,7 @@ impl Run for Remove { } } None => { - for path in self.paths.iter() { + for path in &self.paths { if !db.remove(path) { let path_abs = util::resolve_path(path)?; let path_abs = util::path_to_str(&path_abs)?; diff --git a/src/config.rs b/src/config.rs index 85e310a..1a71785 100644 --- a/src/config.rs +++ b/src/config.rs @@ -31,15 +31,8 @@ pub fn echo() -> bool { } pub fn exclude_dirs() -> Result> { - match env::var_os("_ZO_EXCLUDE_DIRS") { - Some(paths) => env::split_paths(&paths) - .map(|path| { - let pattern = path.to_str().context("invalid unicode in _ZO_EXCLUDE_DIRS")?; - Pattern::new(pattern) - .with_context(|| format!("invalid glob in _ZO_EXCLUDE_DIRS: {}", pattern)) - }) - .collect(), - None => { + env::var_os("_ZO_EXCLUDE_DIRS").map_or_else( + || { let pattern = (|| { let home = dirs::home_dir()?; let home = home.to_str()?; @@ -47,8 +40,17 @@ pub fn exclude_dirs() -> Result> { Pattern::new(&home).ok() })(); Ok(pattern.into_iter().collect()) - } - } + }, + |paths| { + env::split_paths(&paths) + .map(|path| { + let pattern = path.to_str().context("invalid unicode in _ZO_EXCLUDE_DIRS")?; + Pattern::new(pattern) + .with_context(|| format!("invalid glob in _ZO_EXCLUDE_DIRS: {}", pattern)) + }) + .collect() + }, + ) } pub fn fzf_opts() -> Option { diff --git a/src/db/mod.rs b/src/db/mod.rs index 3d198a3..ba2b712 100644 --- a/src/db/mod.rs +++ b/src/db/mod.rs @@ -51,7 +51,11 @@ impl<'file> Database<'file> { match self.dirs.iter_mut().find(|dir| dir.path == path) { None => { - self.dirs.push(Dir { path: path.to_string().into(), last_accessed: now, rank: 1.0 }) + self.dirs.push(Dir { + path: path.to_string().into(), + last_accessed: now, + rank: 1.0, + }); } Some(dir) => { dir.last_accessed = now; diff --git a/src/util.rs b/src/util.rs index e101351..a2635e3 100644 --- a/src/util.rs +++ b/src/util.rs @@ -82,16 +82,13 @@ pub fn resolve_path>(path: &P) -> Result { Some(Component::Prefix(prefix)) => match prefix.kind() { Prefix::Disk(drive_letter) => { let disk = components.next().unwrap(); - match components.peek() { - Some(Component::RootDir) => { - let root = components.next().unwrap(); - stack.push(disk); - stack.push(root); - } - _ => { - base_path = get_drive_relative(drive_letter)?; - stack.extend(base_path.components()); - } + if components.peek() == Some(&Component::RootDir) { + let root = components.next().unwrap(); + stack.push(disk); + stack.push(root); + } else { + base_path = get_drive_relative(drive_letter)?; + stack.extend(base_path.components()); } } Prefix::VerbatimDisk(drive_letter) => { @@ -120,17 +117,12 @@ pub fn resolve_path>(path: &P) -> Result { stack.extend(base_path.components()); } } + } else if components.peek() == Some(&Component::RootDir) { + let root = components.next().unwrap(); + stack.push(root); } else { - match components.peek() { - Some(Component::RootDir) => { - let root = components.next().unwrap(); - stack.push(root); - } - _ => { - base_path = current_dir()?; - stack.extend(base_path.components()); - } - } + base_path = current_dir()?; + stack.extend(base_path.components()); } for component in components {