1
- use gix_dir:: walk:: { EmissionMode , ForDeletionMode } ;
1
+ use gix_dir:: walk:: { CollapsedEntriesEmissionMode , EmissionMode , ForDeletionMode } ;
2
2
3
3
/// Options for use in the [`Repository::dirwalk()`](crate::Repository::dirwalk()) function.
4
4
///
@@ -16,6 +16,7 @@ pub struct Options {
16
16
emit_untracked : EmissionMode ,
17
17
emit_empty_directories : bool ,
18
18
classify_untracked_bare_repositories : bool ,
19
+ emit_collapsed : Option < CollapsedEntriesEmissionMode > ,
19
20
}
20
21
21
22
/// Construction
@@ -32,6 +33,7 @@ impl Options {
32
33
emit_untracked : Default :: default ( ) ,
33
34
emit_empty_directories : false ,
34
35
classify_untracked_bare_repositories : false ,
36
+ emit_collapsed : None ,
35
37
}
36
38
}
37
39
}
@@ -49,6 +51,7 @@ impl From<Options> for gix_dir::walk::Options {
49
51
emit_untracked : v. emit_untracked ,
50
52
emit_empty_directories : v. emit_empty_directories ,
51
53
classify_untracked_bare_repositories : v. classify_untracked_bare_repositories ,
54
+ emit_collapsed : v. emit_collapsed ,
52
55
}
53
56
}
54
57
}
@@ -106,4 +109,11 @@ impl Options {
106
109
self . classify_untracked_bare_repositories = toggle;
107
110
self
108
111
}
112
+
113
+ /// Control whether entries that are in an about-to-be collapsed directory will be emitted. The default is `None`,
114
+ /// so entries in a collapsed directory are not observable.
115
+ pub fn emit_collapsed ( mut self , value : Option < CollapsedEntriesEmissionMode > ) -> Self {
116
+ self . emit_collapsed = value;
117
+ self
118
+ }
109
119
}
0 commit comments