anyhow

Type Alias Result

Source
pub type Result<T, E = Error> = Result<T, E>;
Expand description

Result<T, Error>

This is a reasonable return type to use throughout your application but also for fn main; if you do, failures will be printed along with any context and a backtrace if one was captured.

anyhow::Result may be used with one or two type parameters.

use anyhow::Result;

fn demo1() -> Result<T> {...}
           // ^ equivalent to std::result::Result<T, anyhow::Error>

fn demo2() -> Result<T, OtherError> {...}
           // ^ equivalent to std::result::Result<T, OtherError>

§Example

use anyhow::Result;

fn main() -> Result<()> {
    let config = std::fs::read_to_string("cluster.json")?;
    let map: ClusterMap = serde_json::from_str(&config)?;
    println!("cluster info: {:#?}", map);
    Ok(())
}

Aliased Type§

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

Variants§

§1.0.0

Ok(T)

Contains the success value

§1.0.0

Err(E)

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.