tokio_process_tools/process_handle/output_collection/
options.rs1use crate::{LineCollectionOptions, RawCollectionOptions};
2use std::time::Duration;
3
4pub const DEFAULT_OUTPUT_EOF_TIMEOUT: Duration = Duration::from_secs(3);
6
7#[derive(Debug, Clone, Copy, PartialEq, Eq)]
9pub struct LineOutputOptions {
10 pub stdout_collection_options: LineCollectionOptions,
12
13 pub stderr_collection_options: LineCollectionOptions,
15}
16
17impl LineOutputOptions {
18 #[must_use]
20 pub const fn symmetric(options: LineCollectionOptions) -> Self {
21 Self {
22 stdout_collection_options: options,
23 stderr_collection_options: options,
24 }
25 }
26}
27
28#[derive(Debug, Clone, Copy, PartialEq, Eq)]
30pub struct RawOutputOptions {
31 pub stdout_collection_options: RawCollectionOptions,
33
34 pub stderr_collection_options: RawCollectionOptions,
36}
37
38impl RawOutputOptions {
39 #[must_use]
41 pub const fn symmetric(options: RawCollectionOptions) -> Self {
42 Self {
43 stdout_collection_options: options,
44 stderr_collection_options: options,
45 }
46 }
47}