pub struct InstallerGraph { /* private fields */ }Expand description
Build graph for parallel execution planning
Implementations§
Source§impl InstallerGraph
impl InstallerGraph
Sourcepub fn add_edge(&mut self, from_id: &str, to_id: &str) -> Result<()>
pub fn add_edge(&mut self, from_id: &str, to_id: &str) -> Result<()>
Add an edge (dependency) to the graph
Sourcepub fn from_spec(spec: &InstallerSpec) -> Result<Self>
pub fn from_spec(spec: &InstallerSpec) -> Result<Self>
Build graph from installer spec
Sourcepub fn compute_waves(&self) -> Vec<ExecutionWave>
pub fn compute_waves(&self) -> Vec<ExecutionWave>
Compute execution waves (steps that can run in parallel)
Sourcepub fn create_plan(&self) -> ExecutionPlan
pub fn create_plan(&self) -> ExecutionPlan
Create execution plan from waves
Sourcepub fn to_mermaid(&self) -> String
pub fn to_mermaid(&self) -> String
Generate Mermaid diagram of build graph
Trait Implementations§
Source§impl Clone for InstallerGraph
impl Clone for InstallerGraph
Source§fn clone(&self) -> InstallerGraph
fn clone(&self) -> InstallerGraph
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for InstallerGraph
impl Debug for InstallerGraph
Auto Trait Implementations§
impl Freeze for InstallerGraph
impl RefUnwindSafe for InstallerGraph
impl Send for InstallerGraph
impl Sync for InstallerGraph
impl Unpin for InstallerGraph
impl UnwindSafe for InstallerGraph
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more