ExpertiDict

Rust · Essencial · Inglês · Técnico

if let

/ɪf lɛt/palavra-chave

Forma curta de match para um único padrão: executa o bloco só se o valor casar, e aceita um else. Muito usada para extrair o valor de Option e Result.

Onde usar

Aparece quando só um caso importa, no lugar de um match com braço vazio. Em review, vira let else se o outro caminho for sair da função.

Em código

let cfg: Option<u16> = Some(8080);
if let Some(porta) = cfg {
  println!("porta {porta}");
} else {
  println!("sem porta");
}

Exemplos

Use if let, you only care about Some.

Use if let, você só liga para o Some.

if let hides the None case silently.

O if let esconde o caso None em silêncio.

Cuidado

Não checa exaustividade: ao usar if let, os outros casos são ignorados sem aviso.

Antônimos

match

Veja também

Todos os termos de Rust