std_shims::io

Type Alias Result

1.0.0 · Source
pub type Result<T> = Result<T, Error>;
Available on crate feature std only.
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

Layout§

Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.