我在函数末尾有一个相当复杂的match语句(带有嵌套等)。ifthis 的每个分支都应该显式地从函数返回,或者调用某个-> !函数(例如process::exit)。
为了与其他程序员进行通信,并保护自己免受自己的伤害,我想告诉编译器断言此后的任何内容match都是无法访问的。我知道它知道如何静态地执行此操作,因为如果我将代码放在那里,我会收到编译时警告。
我尝试过的两件事:
将match语句分配给let _: ! = match .... 然而,这!仍然是实验性的,所以这不起作用
将其包裹match在封口中move || -> ! { match ... }();。return但是,这限制了我只能从父函数中进行操作。
我的情况的具体细节不一定适用于一般情况:
fn main() -> ()()返回函数,要么分支到!返回函数return条件逻辑中的 -ing 函数需要使用由匹配项展开的值rust ×1