pub struct DiagnosticsWorkflow<G: GitDiagnosticProvider, C: CryptoDiagnosticProvider> { /* private fields */ }Expand description
Orchestrates diagnostic checks without subprocess calls.
Args:
G: AGitDiagnosticProviderimplementation.C: ACryptoDiagnosticProviderimplementation.
Usage:
ⓘ
let workflow = DiagnosticsWorkflow::new(posix_adapter.clone(), posix_adapter);
let report = workflow.run()?;Implementations§
Source§impl<G: GitDiagnosticProvider, C: CryptoDiagnosticProvider> DiagnosticsWorkflow<G, C>
impl<G: GitDiagnosticProvider, C: CryptoDiagnosticProvider> DiagnosticsWorkflow<G, C>
Sourcepub fn new(git: G, crypto: C) -> Self
pub fn new(git: G, crypto: C) -> Self
Create a new diagnostics workflow with the given providers.
Sourcepub fn run(&self) -> Result<DiagnosticReport, DiagnosticError>
pub fn run(&self) -> Result<DiagnosticReport, DiagnosticError>
Run all diagnostic checks and return the aggregated report.
Usage:
ⓘ
let report = workflow.run()?;
assert!(report.checks.iter().all(|c| c.passed));Auto Trait Implementations§
impl<G, C> Freeze for DiagnosticsWorkflow<G, C>
impl<G, C> RefUnwindSafe for DiagnosticsWorkflow<G, C>where
G: RefUnwindSafe,
C: RefUnwindSafe,
impl<G, C> Send for DiagnosticsWorkflow<G, C>
impl<G, C> Sync for DiagnosticsWorkflow<G, C>
impl<G, C> Unpin for DiagnosticsWorkflow<G, C>
impl<G, C> UnsafeUnpin for DiagnosticsWorkflow<G, C>where
G: UnsafeUnpin,
C: UnsafeUnpin,
impl<G, C> UnwindSafe for DiagnosticsWorkflow<G, C>where
G: UnwindSafe,
C: UnwindSafe,
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