pub struct CargoCommandBuilder {Show 15 fields
pub manifest_path: PathBuf,
pub args: Vec<String>,
pub subcommand: String,
pub pid: Option<u32>,
pub alternate_cmd: Option<String>,
pub execution_dir: Option<PathBuf>,
pub suppressed_flags: HashSet<String>,
pub stdout_dispatcher: Option<Arc<EventDispatcher>>,
pub stderr_dispatcher: Option<Arc<EventDispatcher>>,
pub progress_dispatcher: Option<Arc<EventDispatcher>>,
pub stage_dispatcher: Option<Arc<EventDispatcher>>,
pub terminal_error_flag: Arc<Mutex<bool>>,
pub sender: Option<Arc<Mutex<Sender<TerminalError>>>>,
pub diagnostics: Arc<Mutex<Vec<CargoDiagnostic>>>,
pub is_filter: bool,
}Expand description
A builder that constructs a Cargo command for a given target.
Fields§
§manifest_path: PathBuf§args: Vec<String>§subcommand: String§pid: Option<u32>§alternate_cmd: Option<String>§execution_dir: Option<PathBuf>§suppressed_flags: HashSet<String>§stdout_dispatcher: Option<Arc<EventDispatcher>>§stderr_dispatcher: Option<Arc<EventDispatcher>>§progress_dispatcher: Option<Arc<EventDispatcher>>§stage_dispatcher: Option<Arc<EventDispatcher>>§terminal_error_flag: Arc<Mutex<bool>>§sender: Option<Arc<Mutex<Sender<TerminalError>>>>§diagnostics: Arc<Mutex<Vec<CargoDiagnostic>>>§is_filter: boolImplementations§
Source§impl CargoCommandBuilder
impl CargoCommandBuilder
Sourcepub fn new(manifest: &PathBuf, subcommand: &str, is_filter: bool) -> Self
pub fn new(manifest: &PathBuf, subcommand: &str, is_filter: bool) -> Self
Creates a new, empty builder.
pub fn run<F>(self: Arc<Self>, on_spawn: F) -> Result<u32>
pub fn wait(self: Arc<Self>, pid: Option<u32>) -> Result<CargoProcessResult>
Sourcepub fn with_target(self, target: &CargoTarget) -> Self
pub fn with_target(self, target: &CargoTarget) -> Self
Configure the command based on the target kind.
Sourcepub fn with_required_features(
self,
manifest: &PathBuf,
target: &CargoTarget,
) -> Self
pub fn with_required_features( self, manifest: &PathBuf, target: &CargoTarget, ) -> Self
Append required features based on the manifest, target kind, and name. This method queries your manifest helper function and, if features are found, appends “–features” and the feature list.
Sourcepub fn with_extra_args(self, extra: &[String]) -> Self
pub fn with_extra_args(self, extra: &[String]) -> Self
Appends extra arguments to the command.
Sourcepub fn build_command(&self) -> Command
pub fn build_command(&self) -> Command
Optionally, builds a std::process::Command.
Trait Implementations§
Source§impl Clone for CargoCommandBuilder
impl Clone for CargoCommandBuilder
Source§fn clone(&self) -> CargoCommandBuilder
fn clone(&self) -> CargoCommandBuilder
Returns a copy 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 moreAuto Trait Implementations§
impl Freeze for CargoCommandBuilder
impl RefUnwindSafe for CargoCommandBuilder
impl Send for CargoCommandBuilder
impl Sync for CargoCommandBuilder
impl Unpin for CargoCommandBuilder
impl UnwindSafe for CargoCommandBuilder
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