pub struct UIoError { /* private fields */ }Expand description
Wrapper type around std::io::Error.
The messages displayed by UIoError should match the error messages displayed by GNU
coreutils.
There are two ways to construct this type: with UIoError::new or by calling the
FromIo::map_err_context method on a std::io::Result or std::io::Error.
use uucore::{
display::Quotable,
error::{FromIo, UResult, UIoError, UError}
};
use std::fs::File;
use std::path::Path;
let path = Path::new("test.txt");
// Manual construction
let e: Box<dyn UError> = UIoError::new(
std::io::ErrorKind::NotFound,
format!("cannot access {}", path.quote())
);
let res: UResult<()> = Err(e.into());
// Converting from an `std::io::Error`.
let res: UResult<File> = File::open(path).map_err_context(|| format!("cannot access {}", path.quote()));Implementations§
Trait Implementations§
Source§impl Error for UIoError
impl Error for UIoError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for UIoError
impl !RefUnwindSafe for UIoError
impl Send for UIoError
impl Sync for UIoError
impl Unpin for UIoError
impl UnsafeUnpin for UIoError
impl !UnwindSafe for UIoError
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