pub struct StderrTap(/* private fields */);Expand description
Record stderr of a child process while also passing though the output to the running process output.
Both blocking and async APIs are provided, the blocking API is slightly more efficient.
Implementations§
Source§impl StderrTap
impl StderrTap
Sourcepub fn new_blocking(stream: ChildStderr) -> Self
pub fn new_blocking(stream: ChildStderr) -> Self
Start recording and passing.
Sourcepub fn new(stream: ChildStderr) -> Self
pub fn new(stream: ChildStderr) -> Self
Start recording and passing.
Sourcepub fn into_panic_blocking(self) -> Result<PanicInfo, Txt>
pub fn into_panic_blocking(self) -> Result<PanicInfo, Txt>
Block until the child process closes stderr and attempts to parse the last panic info from it.
If cannot find a panic returns Err with the captured stderr converted to Txt.
Note that the exit code for a fatal panic is 101, checking the exit code is the reliable
way to verify the child process exited due to panic.
Sourcepub async fn into_panic(self) -> Result<PanicInfo, Txt>
pub async fn into_panic(self) -> Result<PanicInfo, Txt>
Await until the child process closes stderr and attempts to parse the last panic info from it.
If cannot find a panic returns Err with the captured stderr converted to Txt.
Note that the exit code for a fatal panic is 101, checking the exit code is the reliable
way to verify the child process exited due to panic.
Source§impl StderrTap
impl StderrTap
Sourcepub fn into_string_blocking(self, remove_ansi_csi: bool) -> String
pub fn into_string_blocking(self, remove_ansi_csi: bool) -> String
Block until the child process closes the stream and converts the capture to String.
Sourcepub async fn into_string(self, remove_ansi_csi: bool) -> String
pub async fn into_string(self, remove_ansi_csi: bool) -> String
Await until the child process closes the stream and converts the capture to String.
Sourcepub fn into_txt_blocking(self, remove_ansi_csi: bool) -> Txt
pub fn into_txt_blocking(self, remove_ansi_csi: bool) -> Txt
Block until the child process closes the stream and converts the capture to Txt.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for StderrTap
impl !UnwindSafe for StderrTap
impl Freeze for StderrTap
impl Send for StderrTap
impl Sync for StderrTap
impl Unpin for StderrTap
impl UnsafeUnpin for StderrTap
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
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>
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>
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