Skip to content

Commit 50a2bab

Browse files
committed
Use short-circuiting for --type searches
Reverses the order of boolean checks for `--type` searches, making them about 10% to 50% faster(!).
1 parent 641976c commit 50a2bab

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/walk.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -216,9 +216,9 @@ pub fn scan(path_vec: &[PathBuf], pattern: Arc<Regex>, config: Arc<FdOptions>) {
216216

217217
if let Some(ref file_types) = config.file_types {
218218
if let Some(ref entry_type) = entry.file_type() {
219-
if (entry_type.is_file() && !file_types.files)
220-
|| (entry_type.is_dir() && !file_types.directories)
221-
|| (entry_type.is_symlink() && !file_types.symlinks)
219+
if (!file_types.files && entry_type.is_file())
220+
|| (!file_types.directories && entry_type.is_dir())
221+
|| (!file_types.symlinks && entry_type.is_symlink())
222222
|| (file_types.executables_only && !entry
223223
.metadata()
224224
.map(|m| fshelper::is_executable(&m))

0 commit comments

Comments
 (0)