3 个版本
0.1.3 | 2022年2月2日 |
---|---|
0.1.2 | 2019年1月12日 |
0.1.1 | 2019年1月11日 |
0.1.0 |
|
14 in #tell
6KB
IoResultOptional
这是一个为 io::Result 添加方法的 trait,使得在文件不存在和其他错误之间的区分变得容易,因为通常的处理方法是如果文件存在则处理。
if let Some(input) = File::open("data").optional()? {
// The data exists, so handle it ...
// If it doesn't exist, it is just ignored
// If there is another error, this function returns it.
}
lib.rs
:
提供了一个为 std::io::Result
添加方法的 trait,使得在文件不存在和其他错误之间的区分变得容易,因为通常的处理方法是如果文件存在则处理。
示例
use io_result_optional::IoResultOptional;
use std::fs::File;
let config = File::open(".app.rc")
.optional()?
.map(readconfig)
.unwrap_or_default();
use io_result_optional::IoResultOptional;
use std::fs::File;
if let Some(input) = File::open("data").optional()? {
// The data exists, so handle it ...
// If it doesn't exist, it is just ignored
// If there is another error, this function returns it.
}