#error #try #catch #result #options

break-block-macro

一段简单的语法糖,直到可以使用 ? 操作符退出 try-catch 块

1 个不稳定版本

0.1.0 2024年4月29日

#2197Rust 模式

MIT/Apache

4KB

break-block-macro

一段简单的语法糖,直到可以使用 ? 操作符退出 try-catch 块

bb 宏的行为类似于 ? 操作符,但可以跳出标记作用域,实现类似于 try-catch 的效果。

有关背景信息,请参阅 此问题

使用方法

use break_block_macro::bb;

let result = 'block: {
    let one = bb!(Ok("one"));
    assert_eq!(one, "one");

    let _two = bb!(Err("two"));
    Ok("three")
};
assert_eq!(result, Err("two"));

依赖项

~86KB