pub struct BuildPlan { /* private fields */ }
Expand description
Represents the full build plan for a project.
Implementations
sourceimpl BuildPlan
impl BuildPlan
sourcepub fn from_manifest(manifest: &ManifestFile, offline: bool) -> Result<Self>
pub fn from_manifest(manifest: &ManifestFile, offline: bool) -> Result<Self>
Create a new build plan for the project by fetching and pinning all dependenies.
To account for an existing lock file, use from_lock_and_manifest
instead.
sourcepub fn from_lock_and_manifest(
manifest: &ManifestFile,
locked: bool,
offline: bool
) -> Result<Self>
pub fn from_lock_and_manifest(
manifest: &ManifestFile,
locked: bool,
offline: bool
) -> Result<Self>
Create a new build plan taking into account the state of both the Manifest and the existing lock file if there is one.
This will first attempt to load a build plan from the lock file and validate the resulting graph using the current state of the Manifest.
This includes checking if the [dependencies] or [patch] tables have changed and checking the validity of the local path dependencies. If any changes are detected, the graph is updated and any new packages that require fetching are fetched.
The resulting build plan should always be in a valid state that is ready for building or checking.
sourcepub fn manifest_map(&self) -> &ManifestMap
pub fn manifest_map(&self) -> &ManifestMap
View the build plan’s map of pinned package IDs to their associated manifest.
sourcepub fn compilation_order(&self) -> &[NodeIx]
pub fn compilation_order(&self) -> &[NodeIx]
The order in which nodes are compiled, determined via a toposort of the package graph.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for BuildPlan
impl Send for BuildPlan
impl Sync for BuildPlan
impl Unpin for BuildPlan
impl UnwindSafe for BuildPlan
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T, U> FlattenInto<U> for Twhere
U: FlattenFrom<T>,
impl<T, U> FlattenInto<U> for Twhere
U: FlattenFrom<T>,
fn flatten_into(self) -> U
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more