考虑一下:
loop {
let data = match something() {
Err(err) => {
warn!("An error: {}; skipped.", err);
continue;
},
Ok(x) => x
};
let data2 = match somethingElse() {
Err(err) => {
warn!("An error: {}; skipped.", err);
continue;
},
Ok(x) => x
};
// and so on
}
Run Code Online (Sandbox Code Playgroud)
如果我不需要分配ok值data,我会使用if let Err(err) = something(),但是上面的代码是否有快捷方式,以避免复制粘贴Err/Ok分支,我认为,典型情况?像这样的东西if let也会返回ok值.
rust ×1