7
私の最初の考えはmap
Option
ですが、閉鎖の内側からtry!
を使用することはできません。 match
ステートメントは不要に見えますが、簡略化する方法を理解できません。オプション<Result<T, E>>を結果<Option<T>、E>にマッチさせずに変換することはできますか?
fn example<T, E>(val: Option<Result<T, E>>) -> Result<Option<T>, E> {
Ok(match val {
Some(v) => Some(v?),
None => None
})
}
をそして逆は 'val.mapによって行うことができる(| V | v.map(OK))(unwrap_or_else | E |一部(ERR( e)))) ' – Arnavion