pub struct PathSet {
pub reads: BTreeSet<String>,
pub listings: BTreeSet<String>,
pub present: BTreeSet<String>,
pub absent: BTreeSet<String>,
pub written: BTreeSet<String>,
}Fields§
§reads: BTreeSet<String>Files whose content the task read.
listings: BTreeSet<String>Directories it listed; . is the workspace root.
present: BTreeSet<String>Paths it found, without reading them. A file among them is keyed by
its content all the same: a tool that compares timestamps, as
tsc --build does, decides by a file it never reads.
absent: BTreeSet<String>Paths it looked for and did not find.
written: BTreeSet<String>Paths it wrote in the directories it listed, left out of their listings: they are there after it runs, and need not be before.
Implementations§
Source§impl PathSet
impl PathSet
Sourcepub fn from_accesses(
accesses: &[Access],
exclusions: &Exclusions<'_>,
root: &Path,
) -> Self
pub fn from_accesses( accesses: &[Access], exclusions: &Exclusions<'_>, root: &Path, ) -> Self
The path set of a task’s recorded accesses, in the order it made
them. root is the workspace root, to tell a directory opened for
listing from a file opened for reading.
Sourcepub fn is_relative(&self) -> bool
pub fn is_relative(&self) -> bool
Whether every path it names lies within the workspace: relative, and
never through ...
pub fn is_empty(&self) -> bool
Sourcepub fn changed_since(
&self,
root: &Path,
started: SystemTime,
outputs: &[&Outputs],
) -> Option<&str>
pub fn changed_since( &self, root: &Path, started: SystemTime, outputs: &[&Outputs], ) -> Option<&str>
A path the set keys that changed after started, when the task ran:
keyed by how it is now, a recording would key the task by what was
left there rather than by what the task saw.
A file read or found changed if it was written. A listed directory
changed if an entry other than the task’s writes and outputs was
added, renamed or replaced, or, in a directory the task wrote nothing
to, one was removed: a directory’s own time moves with its entries, so
where the task wrote, a removal cannot be told from its own writes.
pub fn digest(&self) -> Result<String>
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PathSet
impl<'de> Deserialize<'de> for PathSet
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 PathSet
impl StructuralPartialEq for PathSet
Auto Trait Implementations§
impl Freeze for PathSet
impl RefUnwindSafe for PathSet
impl Send for PathSet
impl Sync for PathSet
impl Unpin for PathSet
impl UnsafeUnpin for PathSet
impl UnwindSafe for PathSet
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
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.