Skip to main content

tokio_process_tools/process_handle/output_collection/
output.rs

1use std::process::ExitStatus;
2
3/// Full output of a process that terminated.
4///
5/// `Stdout` and `Stderr` describe the collected payload type for each stream. For example,
6/// line collection uses `ProcessOutput<CollectedLines>` and raw byte collection uses
7/// `ProcessOutput<CollectedBytes>`.
8#[derive(Debug, Clone, PartialEq, Eq)]
9pub struct ProcessOutput<Stdout, Stderr = Stdout> {
10    /// Status the process exited with.
11    pub status: ExitStatus,
12
13    /// The process's collected output on its `stdout` stream.
14    pub stdout: Stdout,
15
16    /// The process's collected output on its `stderr` stream.
17    pub stderr: Stderr,
18}