pub struct CargoPathMaterializationClosure {
pub entry_manifest_path: PathBuf,
pub workspace_root: Option<PathBuf>,
pub root_packages: Vec<PathBuf>,
pub packages: Vec<CargoPathDependencyPackage>,
pub edges: Vec<CargoPathDependencyEdge>,
}Expand description
Deterministic, cycle-tolerant closure of local Cargo packages that must be materialized on a remote worker.
Unlike CargoPathDependencyGraph, this closure includes inactive optional,
development, build, target-specific, workspace-inherited, and path-patched
edges. Its edges are evidence, not an execution DAG, and may contain cycles.
Fields§
§entry_manifest_path: PathBufCanonical path to the entry manifest used for resolution.
workspace_root: Option<PathBuf>Canonical workspace root when entrypoint is a workspace manifest.
root_packages: Vec<PathBuf>Canonical root packages used as traversal roots (sorted).
packages: Vec<CargoPathDependencyPackage>Every reachable local package in deterministic order.
edges: Vec<CargoPathDependencyEdge>Every reachable path-dependency edge in deterministic order. Cycles are retained and do not make the closure invalid.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CargoPathMaterializationClosure
impl<'de> Deserialize<'de> for CargoPathMaterializationClosure
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 CargoPathMaterializationClosure
impl StructuralPartialEq for CargoPathMaterializationClosure
Auto Trait Implementations§
impl Freeze for CargoPathMaterializationClosure
impl RefUnwindSafe for CargoPathMaterializationClosure
impl Send for CargoPathMaterializationClosure
impl Sync for CargoPathMaterializationClosure
impl Unpin for CargoPathMaterializationClosure
impl UnsafeUnpin for CargoPathMaterializationClosure
impl UnwindSafe for CargoPathMaterializationClosure
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
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.