#[non_exhaustive]pub enum TrackingMethod {
Subdir,
None,
State,
SubdirNoFlatten,
PackageZip,
Other,
}Expand description
How files matched by an InstallRule are placed and tracked under its route.
#[non_exhaustive]: new tracking methods may be added without a breaking
change, so downstream matches must include a wildcard arm.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Subdir
Namespaced under route/<Owner-Name>/. The contents of a matched override
folder keep their structure; a file reached outside one (by extension or
the default location) is flattened to its base name. The default.
None
Written directly under route/, shared and untracked (e.g. config).
State
Written directly under route/, shared, but each file recorded for
exact uninstall.
SubdirNoFlatten
Namespaced under route/<Owner-Name>/, preserving internal structure.
PackageZip
The package archive is copied into route/ as a zip.
Other
An unrecognized tracking method from a newer schema.
Implementations§
Source§impl TrackingMethod
impl TrackingMethod
Sourcepub fn is_namespaced(self) -> bool
pub fn is_namespaced(self) -> bool
Whether files routed via this method live in a per-mod <Owner-Name>/
folder (and are therefore reconciled by directory in crate::install).
Trait Implementations§
Source§impl Clone for TrackingMethod
impl Clone for TrackingMethod
impl Copy for TrackingMethod
Source§impl Debug for TrackingMethod
impl Debug for TrackingMethod
Source§impl Default for TrackingMethod
impl Default for TrackingMethod
Source§impl<'de> Deserialize<'de> for TrackingMethod
impl<'de> Deserialize<'de> for TrackingMethod
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for TrackingMethod
Source§impl PartialEq for TrackingMethod
impl PartialEq for TrackingMethod
Source§impl Serialize for TrackingMethod
impl Serialize for TrackingMethod
impl StructuralPartialEq for TrackingMethod
Auto Trait Implementations§
impl Freeze for TrackingMethod
impl RefUnwindSafe for TrackingMethod
impl Send for TrackingMethod
impl Sync for TrackingMethod
impl Unpin for TrackingMethod
impl UnsafeUnpin for TrackingMethod
impl UnwindSafe for TrackingMethod
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.