rust 语法匹配绑定 - 如何将"Some"与条件和 None 一起匹配



我正在尝试这样匹配(或者也会考虑使用let绑定,因为我对其他情况不感兴趣(

let cl : Option<u64> = res.content_length();
match cl {
Some(x) if x == 0 | None => { // want to take care of x == 0 or None cases
return std::result::Result::Ok(RegisterResponse{..Default::default()})
}
_ => {} // don't care
}

我收到这个编译错误

Some(x) if x == 0 | None => {
|                                       ^ no implementation for `{integer} | std::option::Option<_>`

您在let cl Option<u64> = res.content_length();中的cl之后缺少:

此外,在_ => {}之前(在}之后(需要

最新更新