pub struct FilePath(/* private fields */);Expand description
A path as it appears in lanekeep’s output.
Two normalizations happen here, both for determinism rather than tidiness.
Relative to the project root. An absolute path embeds the checkout directory, so
the same corpus checked in /home/ana/app and /ci/build/app would produce different
output and different cache entries for identical content.
Forward slashes always. std::path uses \ on Windows, so an unnormalized path
would make output — and every committed snapshot — disagree between a developer’s
machine and CI. Architecture §11 requires that two runs over identical input produce
identical output; “identical input” has to include the platform.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for FilePath
impl<'de> Deserialize<'de> for FilePath
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for FilePath
Source§impl Ord for FilePath
impl Ord for FilePath
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for FilePath
impl PartialOrd for FilePath
impl StructuralPartialEq for FilePath
Auto Trait Implementations§
impl Freeze for FilePath
impl RefUnwindSafe for FilePath
impl Send for FilePath
impl Sync for FilePath
impl Unpin for FilePath
impl UnsafeUnpin for FilePath
impl UnwindSafe for FilePath
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