Rust · Essencial · Inglês · Técnico
loop
Laço infinito que só termina com break. Em Rust, loop é uma expressão: o break pode devolver um valor, que vira o resultado do laço.
Onde usar
Aparece em servidores, retentativas e máquinas de estado. O compilador sabe que um loop sem break nunca termina e lhe dá o tipo never.
Em código
let mut n = 0;
let r = loop {
n += 1;
if n == 3 {
break n * 10;
}
};
println!("{r}");Exemplos
Use loop and break with a value.
Use loop e break com um valor.
The main loop never returns.
O loop principal nunca retorna.
Cuidado
Não use while true: o compilador entende melhor o loop, inclusive para a análise de variáveis inicializadas depois do laço.
Sinônimos
laço infinito