Skip to main content

CommandRunner

Trait CommandRunner 

Source
pub trait CommandRunner: Send + Sync {
    // Required method
    fn run(
        &self,
        program: &str,
        args: &[String],
        cwd: Option<&Path>,
    ) -> Result<CommandOutput>;

    // Provided method
    fn run_with_progress(
        &self,
        program: &str,
        args: &[String],
        cwd: Option<&Path>,
        label: &str,
    ) -> Result<CommandOutput> { ... }
}
Expand description

Запускает внешние команды. Реализация по умолчанию — SystemRunner.

Required Methods§

Source

fn run( &self, program: &str, args: &[String], cwd: Option<&Path>, ) -> Result<CommandOutput>

Запускает program с аргументами args в каталоге cwd.

Provided Methods§

Source

fn run_with_progress( &self, program: &str, args: &[String], cwd: Option<&Path>, label: &str, ) -> Result<CommandOutput>

Запускает команду с индикатором прогресса в stderr.

Во время выполнения процесса фоновый поток выводит в stderr строку \r⏳ <label> (<n>с) каждые 2 секунды (обновляя время), и очищает её при завершении. По умолчанию делегирует в Self::run (без спиннера) — достаточно для мок-раннеров в тестах.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§