pub struct MergeableFileSystemTree<Path, FileContent>(_) 
where
    Path: Ord
;
Expand description

Representation of a filesystem which contains only files and directories.

The serialization of FileContent (content of file) and BTreeMap<Path, Self> (children of directory) must not share the same type. That is, FileContent must be serialized to things other than a dictionary.

Generic parameters:

  • Path: Reference to a file in the filesystem.
  • FileContent: Content of a file.

Difference from FileSystemTree: FileSystemTree::build cannot write over an existing directory. On the other hand, MergeableFileSystemTree::build either merges the two directories if there’s no conflict.

Methods from Deref<Target = FileSystemTree<Path, FileContent>>

Get immutable reference to the file content.

Get immutable reference to the directory content.

Get immutable reference to a descendant of any level.

Get mutable reference to the file content.

Get mutable reference to the directory content.

Get mutable reference to a descendant of any level.

Trait Implementations

Converts this type into a mutable reference of the (usually inferred) input type.

Converts this type into a shared reference of the (usually inferred) input type.

Locations of the items in the filesystem.

Add prefix to the root of the tree.

Write content to a file.

Create a directory at root.

Build the tree into the filesystem.

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

The resulting type after dereferencing.

Dereferences the value.

Mutably dereferences the value.

Deserialize this value from the given Serde deserializer. Read more

Converts to this type from the input type.

Converts to this type from the input type.

Content of the node if it is a file.

Content of the node if it is a directory.

Read the content of the node.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Compare self to key and return true if they are equal.

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Apply f to self. Read more

Apply f to &self. Read more

Apply f to &mut self. Read more

Apply f to &self where f takes a single parameter of type Param and Self implements trait AsRef<Param>. Read more

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait AsMut<Param>. Read more

Apply f to &self where f takes a single parameter of type Param and Self implements trait Deref<Param>. Read more

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait DerefMut<Param>. Read more

Apply f to &self where f takes a single parameter of type Param and Self implements trait Deref<Param>. Read more

Apply f to &mut self where f takes a single parameter of type Param and Self implements trait DerefMut<Param>. Read more

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.