summaryrefslogtreecommitdiffstats
path: root/src/output
diff options
context:
space:
mode:
authorBen S <ogham@bsago.me>2015-02-26 07:26:04 +0000
committerBen S <ogham@bsago.me>2015-02-26 07:26:04 +0000
commitf9f1c991cb1c6fa4710bb9e9e9f9c1f3ad5979dd (patch)
tree32ccb4784b6d794771c2b963fc45ba65e361b0ee /src/output
parentabf7bf7a3e8464ab8fce5a030f5fb8cd55761d4b (diff)
details: `filter` is only used when recursing
So move it as part of 'recurse's option.
Diffstat (limited to 'src/output')
-rw-r--r--src/output/details.rs7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/output/details.rs b/src/output/details.rs
index 77cec8c..4422d04 100644
--- a/src/output/details.rs
+++ b/src/output/details.rs
@@ -12,9 +12,8 @@ use ansi_term::Style::Plain;
pub struct Details {
pub columns: Columns,
pub header: bool,
- pub recurse: Option<RecurseOptions>,
+ pub recurse: Option<(RecurseOptions, FileFilter)>,
pub xattr: bool,
- pub filter: FileFilter,
}
impl Details {
@@ -41,14 +40,14 @@ impl Details {
for (index, file) in src.iter().enumerate() {
table.add_row(file, depth, index == src.len() - 1);
- if let Some(r) = self.recurse {
+ if let Some((r, filter)) = self.recurse {
if r.tree == false || r.is_too_deep(depth) {
continue;
}
if let Some(ref dir) = file.this {
let mut files = dir.files(true);
- self.filter.transform_files(&mut files);
+ filter.transform_files(&mut files);
self.add_files_to_table(table, &files, depth + 1);
}
}