ExpertiDict

Rust · Essencial · Inglês · Técnico

Option

/ˈɑːpʃən/substantivo

Enum da biblioteca padrão com as variantes Some(valor) e None, que representa um valor que pode estar ausente. Substitui o null das outras linguagens.

Onde usar

Aparece em buscas, parsers e campos opcionais. O compilador obriga a tratar o None antes de usar o valor, o que elimina erros de ponteiro nulo.

Em código

let nomes = vec!["ana", "rui"];
match nomes.get(5) {
  Some(n) => println!("{n}"),
  None => println!("sem item"),
}

Exemplos

The lookup returns an Option.

A busca devolve um Option.

Handle the None case before returning.

Trate o caso None antes de retornar.

Cuidado

Não é um null disfarçado: não dá para usar o valor sem desembrulhá-lo, e unwrap em None causa panic.

Sinônimos

valor opcional

Veja também

Todos os termos de Rust