ExpertiDict

Rust · Essencial · Inglês · Técnico

match

/mætʃ/palavra-chave

Expressão que compara um valor com vários padrões e executa o primeiro que casa. O compilador exige que todos os casos possíveis sejam cobertos.

Onde usar

É usada para tratar enums, Option e Result. Se você adiciona uma variante nova, o compilador aponta cada match que ficou incompleto.

Em código

let n = 3;
let nome = match n {
  1 => "um",
  2 | 3 => "poucos",
  _ => "muitos",
};
println!("{nome}");

Exemplos

Add a match arm for the new variant.

Adicione um braço no match para a nova variante.

The match is not exhaustive.

O match não é exaustivo.

Cuidado

Não é um switch: match aceita padrões complexos, devolve um valor e checa exaustividade.

Sinônimos

casamento de padrões

Veja também

Todos os termos de Rust