См. Inline Guard Macro idiom . Это, по крайней мере, позволит вам отделить, хотя и немного, код от декларации. Он также позволяет вам переключаться с помощью функций define
.
Да. Он использует тот же синтаксис, что и время жизни.
fn main() {
'outer: for x in 0..5 {
'inner: for y in 0..5 {
println!("{},{}", x, y);
if y == 3 {
break 'outer;
}
}
}
}
См. документацию по меткам петли и соответствующий раздел , ссылка .