std::io

Type Alias Result

1.0.0 · Source
pub type Result<T> = Result<T, Error>;
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 std::io;

fn get_string() -> io::Result<String> {
    let mut buffer = String::new();

    io::stdin().read_line(&mut buffer)?;

    Ok(buffer)
}

Aliased Type§

enum Result<T> {
    Ok(T),
    Err(Error),
}

Variants§

§1.0.0

Ok(T)

Contains the success value

§1.0.0

Err(Error)

Contains the error value