Expand description
A specialized Result
type for I/O operations.
This type is broadly used across std::io
for any operation which may
produce an error.
This typedef is generally used to avoid writing out io::Error
directly and
is otherwise a direct mapping to Result
.
While usual Rust style is to import types directly, aliases of Result
often are not, to make it easier to distinguish between them. Result
is
generally assumed to be std::result::Result
, and so users of this alias
will generally use io::Result
instead of shadowing the prelude’s import
of std::result::Result
.
Examples
A convenience function that bubbles an io::Result
to its caller:
use core2::io;
#[cfg(feature = "std")]
fn get_string() -> io::Result<String> {
let mut buffer = String::new();
std::io::stdin().read_line(&mut buffer).map_err(|e| io::Error::from(e))?;
Ok(buffer)
}