#[try_fn]Expand description
An attribute macro that performs “Ok-wrapping” on the return value of a fn item.
This is compatible with Result, Option, ControlFlow, and any type that
implements the unstable std::ops::Try trait.
Using this macro is equivalent to wrapping the body of a fn in a try block.
Nightly:
ⓘ
fn fallible_fn(x: T) -> Result<U, E> {
try {
let a = do_one(x)?;
let b = do_two(a)?;
b
}
}With try_fn:
ⓘ
#[try_fn]
fn fallible_fn(x: T) -> Result<U, E> {
let a = do_one(x)?;
let b = do_two(a)?;
b
}