pub struct ScanConfig {
pub root: PathBuf,
pub file_type: Option<FileTypeFilter>,
pub size_filter: Option<SizeFilter>,
pub mtime_filter: Option<MtimeFilter>,
pub max_depth: Option<usize>,
pub follow_links: bool,
pub respect_gitignore: bool,
pub threads: usize,
pub include_hidden: bool,
}Expand description
扫描配置
Fields§
§root: PathBuf扫描根路径
file_type: Option<FileTypeFilter>文件类型过滤
size_filter: Option<SizeFilter>文件大小过滤
mtime_filter: Option<MtimeFilter>修改时间过滤
max_depth: Option<usize>最大遍历深度(None 表示无限制)
follow_links: bool是否跟随符号链接
respect_gitignore: bool是否遵守 .gitignore
threads: usize并行线程数(0 表示自动检测)
是否包含隐藏文件
Implementations§
Source§impl ScanConfig
impl ScanConfig
Sourcepub fn with_file_type(self, filter: FileTypeFilter) -> Self
pub fn with_file_type(self, filter: FileTypeFilter) -> Self
设置文件类型过滤
Sourcepub fn with_size_filter(self, filter: SizeFilter) -> Self
pub fn with_size_filter(self, filter: SizeFilter) -> Self
设置文件大小过滤
Sourcepub fn with_mtime_filter(self, filter: MtimeFilter) -> Self
pub fn with_mtime_filter(self, filter: MtimeFilter) -> Self
设置修改时间过滤
Sourcepub fn with_max_depth(self, depth: usize) -> Self
pub fn with_max_depth(self, depth: usize) -> Self
设置最大深度
Sourcepub fn with_follow_links(self, follow: bool) -> Self
pub fn with_follow_links(self, follow: bool) -> Self
设置是否跟随符号链接
Sourcepub fn with_respect_gitignore(self, respect: bool) -> Self
pub fn with_respect_gitignore(self, respect: bool) -> Self
设置是否遵守 .gitignore
Sourcepub fn with_threads(self, threads: usize) -> Self
pub fn with_threads(self, threads: usize) -> Self
设置并行线程数
设置是否包含隐藏文件
Trait Implementations§
Source§impl Clone for ScanConfig
impl Clone for ScanConfig
Source§fn clone(&self) -> ScanConfig
fn clone(&self) -> ScanConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ScanConfig
impl Debug for ScanConfig
Auto Trait Implementations§
impl Freeze for ScanConfig
impl RefUnwindSafe for ScanConfig
impl Send for ScanConfig
impl Sync for ScanConfig
impl Unpin for ScanConfig
impl UnsafeUnpin for ScanConfig
impl UnwindSafe for ScanConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more