Struct command_error::OutputConversionError
source · pub struct OutputConversionError { /* private fields */ }
Expand description
An error produced when attempting to convert Command
Output
to a custom format (such as
Utf8Output
).
Produced by methods like CommandExt::output_checked_with
and
CommandExt::output_checked_utf8
.
let mut command = Command::new("sh");
command.args(["-c", "echo puppy doggy"]);
let displayed: Utf8ProgramAndArgs = (&command).into();
let mut output = command.output().unwrap();
output.stdout[5] = 0xc0; // Invalid UTF-8 byte.
let inner: Result<utf8_command::Utf8Output, _> = output.try_into();
let error = OutputConversionError::new(
Box::new(displayed),
Box::new(inner.unwrap_err())
);
assert_eq!(
error.to_string(),
"Failed to convert `sh` output: \
Stdout contained invalid utf-8 sequence of 1 bytes from index 5: \
\"puppy�doggy\\n\""
);
Implementations§
Trait Implementations§
source§impl Debug for OutputConversionError
impl Debug for OutputConversionError
source§impl Display for OutputConversionError
impl Display for OutputConversionError
source§impl From<OutputConversionError> for Error
impl From<OutputConversionError> for Error
source§fn from(error: OutputConversionError) -> Self
fn from(error: OutputConversionError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for OutputConversionError
impl !RefUnwindSafe for OutputConversionError
impl Send for OutputConversionError
impl Sync for OutputConversionError
impl Unpin for OutputConversionError
impl !UnwindSafe for OutputConversionError
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
Mutably borrows from an owned value. Read more