7 个版本

使用旧 Rust 2015

0.1.7 2017年10月22日
0.1.6 2017年10月20日

#10#success


bitboard_xo 中使用

MIT 许可证

8KB
64

Build Status Latest Version

结果 crate

类型 Outcome 代表成功或失败:每个 Outcome 要么是 Success 要么是 Failure

use outcome::*;
 
fn do_something() -> Outcome {
    Success
}
 
// The return value is an outcome
let result = do_something();
 
// Pattern Match
match result {
    Success => println!("Well done!"),
    Failure => println!("Oh well :("),
}

示例

Outcome 上使用 and_then

/use outcome::*;
 
// Returns `Failure`
let result = Outcome::from_bool(false);
 
match result.and_then(|| Success) {
    Success => println!("Success! :)"),
    Failure => println!("Failure :("),
}

Outcome 上使用 or_none 将其转换为 Option

use outcome::*;
 
let result = Success;
 
// Encapsulates arg within an option
match result.or_none("hello!") {
    Some(s) => println!("{}", s),
    None => println!("Nothing here!"),
}

无运行时依赖