pub struct FsTreeBuilder<Data, GetData, Report>where
Data: Size + Send + Sync,
GetData: Fn(&Metadata) -> Data + Sync,
Report: Reporter<Data> + Sync,{
pub root: PathBuf,
pub get_data: GetData,
pub reporter: Report,
}
Expand description
Build a DataTree
from a directory tree using From
or Into
.
Example:
use parallel_disk_usage::{
data_tree::DataTree,
os_string_display::OsStringDisplay,
reporter::{ErrorOnlyReporter, ErrorReport},
size::Bytes,
size_getters::GET_APPARENT_SIZE,
};
let builder = FsTreeBuilder {
root: std::env::current_dir().unwrap(),
get_data: GET_APPARENT_SIZE,
reporter: ErrorOnlyReporter::new(ErrorReport::SILENT),
};
let data_tree: DataTree<OsStringDisplay, Bytes> = builder.into();
Fields§
§root: PathBuf
Root of the directory tree.
get_data: GetData
Returns size of an item.
reporter: Report
Reports progress to external system.
Trait Implementations§
source§impl<Data, GetData, Report> Debug for FsTreeBuilder<Data, GetData, Report>
impl<Data, GetData, Report> Debug for FsTreeBuilder<Data, GetData, Report>
source§impl<Data, GetData, Report> From<FsTreeBuilder<Data, GetData, Report>> for DataTree<OsStringDisplay, Data>
impl<Data, GetData, Report> From<FsTreeBuilder<Data, GetData, Report>> for DataTree<OsStringDisplay, Data>
source§fn from(builder: FsTreeBuilder<Data, GetData, Report>) -> Self
fn from(builder: FsTreeBuilder<Data, GetData, Report>) -> Self
Create a DataTree
from an FsTreeBuilder
.
Auto Trait Implementations§
impl<Data, GetData, Report> RefUnwindSafe for FsTreeBuilder<Data, GetData, Report>where
GetData: RefUnwindSafe,
Report: RefUnwindSafe,
impl<Data, GetData, Report> Send for FsTreeBuilder<Data, GetData, Report>
impl<Data, GetData, Report> Sync for FsTreeBuilder<Data, GetData, Report>
impl<Data, GetData, Report> Unpin for FsTreeBuilder<Data, GetData, Report>
impl<Data, GetData, Report> UnwindSafe for FsTreeBuilder<Data, GetData, Report>where
GetData: UnwindSafe,
Report: UnwindSafe,
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<X> Pipe for X
impl<X> Pipe for X
source§fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Returnwhere
Function: FnOnce(&'a mut Self) -> Return,
fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Returnwhere
Function: FnOnce(&'a mut Self) -> Return,
source§fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
Apply
f
to &self
where f
takes a single parameter of type Param
and Self
implements trait AsRef<Param>
. Read moresource§fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return
fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return
Apply
f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait AsMut<Param>
. Read moresource§fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return
Apply
f
to &self
where f
takes a single parameter of type Param
and Self
implements trait Deref<Target = Param>
. Read moresource§fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Returnwhere
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Returnwhere
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
Apply
f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait [DerefMut<Target = Param>
]. Read moresource§fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return
fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return
Apply
f
to &self
where f
takes a single parameter of type Param
and Self
implements trait Borrow<Param>
. Read moresource§fn pipe_borrow_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return
fn pipe_borrow_mut<'a, Param, Return, Function>( &'a mut self, f: Function ) -> Return
Apply
f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait BorrowMut<Param>
. Read more