Struct parallel_disk_usage::data_tree::reflection::Reflection [−][src]
pub struct Reflection<Name, Data: Size> { pub name: Name, pub data: Data, pub children: Vec<Self>, }
Expand description
Intermediate format used for construction and inspection of
DataTree
’s internal content.
Unlike Tree
where the fields are all private, the fields of TreeReflection
are all public to allow construction in tests.
Conversion between DataTree
and Reflection
:
- Any
DataTree
can be safely transmuted to a validReflection
. - Any
Reflection
can be safely transmuted to a potentially invalidDataTree
. - To safely convert a
DataTree
into aReflection
without theunsafe
keyword, useDataTree::into_reflection
(it would be slower than usingtransmute
). - To safely convert a
Reflection
into a validDataTree
, usepar_try_into_tree
.
Serialization and deserialization: Requires enabling the json
feature to enable serde
.
Fields
name: Name
Name of the tree.
data: Data
Disk usage of a file or total disk usage of a folder.
children: Vec<Self>
Data of children filesystem subtrees.
Implementations
impl<Name, Data> Reflection<Name, Data> where
Name: Send,
Data: Size + Send,
[src]
impl<Name, Data> Reflection<Name, Data> where
Name: Send,
Data: Size + Send,
[src]pub fn par_try_into_tree(
self
) -> Result<DataTree<Name, Data>, ConversionError<Name, Data>>
[src]
pub fn par_try_into_tree(
self
) -> Result<DataTree<Name, Data>, ConversionError<Name, Data>>
[src]Attempting to convert a Reflection
into a valid DataTree
.
pub fn par_try_map<TargetName, TargetData, Error, Transform>(
self,
transform: Transform
) -> Result<Reflection<TargetName, TargetData>, Error> where
TargetName: Send,
TargetData: Size + Send + Sync,
Error: Send,
Transform: Fn(Name, Data) -> Result<(TargetName, TargetData), Error> + Copy + Sync,
[src]
pub fn par_try_map<TargetName, TargetData, Error, Transform>(
self,
transform: Transform
) -> Result<Reflection<TargetName, TargetData>, Error> where
TargetName: Send,
TargetData: Size + Send + Sync,
Error: Send,
Transform: Fn(Name, Data) -> Result<(TargetName, TargetData), Error> + Copy + Sync,
[src]Attempt to transform names and data.
pub fn par_convert_names_to_utf8(self) -> Result<Reflection<String, Data>, Name> where
Name: AsRef<OsStr>,
Data: Sync,
[src]
pub fn par_convert_names_to_utf8(self) -> Result<Reflection<String, Data>, Name> where
Name: AsRef<OsStr>,
Data: Sync,
[src]Attempt to convert all names from OsString
to String
.
Trait Implementations
impl<Name: Clone, Data: Clone + Size> Clone for Reflection<Name, Data>
[src]
impl<Name: Clone, Data: Clone + Size> Clone for Reflection<Name, Data>
[src]fn clone(&self) -> Reflection<Name, Data>
[src]
fn clone(&self) -> Reflection<Name, Data>
[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]Performs copy-assignment from source
. Read more
impl<'de, Name, Data: Size> Deserialize<'de> for Reflection<Name, Data> where
Name: Deserialize<'de>,
Data: Deserialize<'de>,
[src]
impl<'de, Name, Data: Size> Deserialize<'de> for Reflection<Name, Data> where
Name: Deserialize<'de>,
Data: Deserialize<'de>,
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl<Name, Data: Size> From<DataTree<Name, Data>> for Reflection<Name, Data>
[src]
impl<Name, Data: Size> From<DataTree<Name, Data>> for Reflection<Name, Data>
[src]impl<Name: PartialEq, Data: PartialEq + Size> PartialEq<Reflection<Name, Data>> for Reflection<Name, Data>
[src]
impl<Name: PartialEq, Data: PartialEq + Size> PartialEq<Reflection<Name, Data>> for Reflection<Name, Data>
[src]fn eq(&self, other: &Reflection<Name, Data>) -> bool
[src]
fn eq(&self, other: &Reflection<Name, Data>) -> bool
[src]This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &Reflection<Name, Data>) -> bool
[src]
fn ne(&self, other: &Reflection<Name, Data>) -> bool
[src]This method tests for !=
.
impl<Name, Data: Size> Serialize for Reflection<Name, Data> where
Name: Serialize,
Data: Serialize,
[src]
impl<Name, Data: Size> Serialize for Reflection<Name, Data> where
Name: Serialize,
Data: Serialize,
[src]impl<Name: Eq, Data: Eq + Size> Eq for Reflection<Name, Data>
[src]
impl<Name, Data: Size> StructuralEq for Reflection<Name, Data>
[src]
impl<Name, Data: Size> StructuralPartialEq for Reflection<Name, Data>
[src]
Auto Trait Implementations
impl<Name, Data> RefUnwindSafe for Reflection<Name, Data> where
Data: RefUnwindSafe,
Name: RefUnwindSafe,
Data: RefUnwindSafe,
Name: RefUnwindSafe,
impl<Name, Data> Send for Reflection<Name, Data> where
Data: Send,
Name: Send,
Data: Send,
Name: Send,
impl<Name, Data> Sync for Reflection<Name, Data> where
Data: Sync,
Name: Sync,
Data: Sync,
Name: Sync,
impl<Name, Data> Unpin for Reflection<Name, Data> where
Data: Unpin,
Name: Unpin,
Data: Unpin,
Name: Unpin,
impl<Name, Data> UnwindSafe for Reflection<Name, Data> where
Data: UnwindSafe,
Name: UnwindSafe,
Data: UnwindSafe,
Name: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<X> Pipe for X
[src]
impl<X> Pipe for X
[src]fn pipe<Return, Function>(self, f: Function) -> Return where
Function: FnOnce(Self) -> Return,
[src]
fn pipe<Return, Function>(self, f: Function) -> Return where
Function: FnOnce(Self) -> Return,
[src]Apply f
to self
. Read more
fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return where
Function: FnOnce(&'a Self) -> Return,
[src]
fn pipe_ref<'a, Return, Function>(&'a self, f: Function) -> Return where
Function: FnOnce(&'a Self) -> Return,
[src]Apply f
to &self
. Read more
fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return where
Function: FnOnce(&'a mut Self) -> Return,
[src]
fn pipe_mut<'a, Return, Function>(&'a mut self, f: Function) -> Return where
Function: FnOnce(&'a mut Self) -> Return,
[src]Apply f
to &mut self
. Read more
fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]
fn pipe_as_ref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: AsRef<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]Apply f
to &self
where f
takes a single parameter of type Param
and Self
implements trait AsRef<Param>
. Read more
fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]
fn pipe_as_mut<'a, Param, Return, Function>(&'a mut self, f: Function) -> Return where
Self: AsMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]Apply f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait AsMut<Param>
. Read more
fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]
fn pipe_deref<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Deref<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]Apply f
to &self
where f
takes a single parameter of type Param
and Self
implements trait Deref<Param>
. Read more
fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]
fn pipe_deref_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: DerefMut<Target = Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]Apply f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait DerefMut<Param>
. Read more
fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Borrow<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]
fn pipe_borrow<'a, Param, Return, Function>(&'a self, f: Function) -> Return where
Self: Borrow<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a Param) -> Return,
[src]Apply f
to &self
where f
takes a single parameter of type Param
and Self
implements trait Deref<Param>
. Read more
fn pipe_borrow_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: BorrowMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]
fn pipe_borrow_mut<'a, Param, Return, Function>(
&'a mut self,
f: Function
) -> Return where
Self: BorrowMut<Param>,
Param: 'a + ?Sized,
Function: FnOnce(&'a mut Param) -> Return,
[src]Apply f
to &mut self
where f
takes a single parameter of type Param
and Self
implements trait DerefMut<Param>
. Read more
impl<X> Pipe for X
[src]
impl<X> Pipe for X
[src]impl<T> Pointable for T
impl<T> Pointable for T
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,