Trait cargo::core::compiler::Executor [−][src]
A glorified callback for executing calls to rustc. Rather than calling rustc
directly, we’ll use an Executor
, giving clients an opportunity to intercept
the build calls.
Required methods
fn exec(
&self,
cmd: ProcessBuilder,
id: PackageId,
target: &Target,
mode: CompileMode,
on_stdout_line: &mut dyn FnMut(&str) -> CargoResult<()>,
on_stderr_line: &mut dyn FnMut(&str) -> CargoResult<()>
) -> CargoResult<()>
[src]
&self,
cmd: ProcessBuilder,
id: PackageId,
target: &Target,
mode: CompileMode,
on_stdout_line: &mut dyn FnMut(&str) -> CargoResult<()>,
on_stderr_line: &mut dyn FnMut(&str) -> CargoResult<()>
) -> CargoResult<()>
In case of an Err
, Cargo will not continue with the build process for
this package.
Provided methods
fn init<'a, 'cfg>(&self, _cx: &Context<'a, 'cfg>, _unit: &Unit<'a>)
[src]
Called after a rustc process invocation is prepared up-front for a given unit of work (may still be modified for runtime-known dependencies, when the work is actually executed).
fn force_rebuild(&self, _unit: &Unit<'_>) -> bool
[src]
Queried when queuing each unit of work. If it returns true, then the unit will always be rebuilt, independent of whether it needs to be.
Implementors
impl Executor for DefaultExecutor
[src]
fn exec(
&self,
cmd: ProcessBuilder,
_id: PackageId,
_target: &Target,
_mode: CompileMode,
on_stdout_line: &mut dyn FnMut(&str) -> CargoResult<()>,
on_stderr_line: &mut dyn FnMut(&str) -> CargoResult<()>
) -> CargoResult<()>
[src]
&self,
cmd: ProcessBuilder,
_id: PackageId,
_target: &Target,
_mode: CompileMode,
on_stdout_line: &mut dyn FnMut(&str) -> CargoResult<()>,
on_stderr_line: &mut dyn FnMut(&str) -> CargoResult<()>
) -> CargoResult<()>