Rust · Essencial · Inglês · Técnico
match
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