ExpertiDict

Rust · Intermediário · Inglês · Técnico

thiserror

/ðɪs ˈɛɹɚ/substantivo

Crate que gera, com um derive, a implementação de Display e Error para enums de erro de bibliotecas. Reduz o código repetitivo e mantém os tipos de erro precisos.

Onde usar

É usada em bibliotecas, onde os chamadores precisam distinguir os erros. Em aplicações, costuma ser combinada com anyhow.

Em código

use thiserror::Error;
#[derive(Debug, Error)]
enum ErroApp {
  #[error("ausente: {0}")]
  Ausente(String),
  #[error("inválido")]
  Invalido,
}

Exemplos

We use thiserror for the library's error enum.

Usamos thiserror para o enum de erros da biblioteca.

thiserror writes the Display impl for you.

O thiserror escreve o impl de Display para você.

Cuidado

Não serve para quem só quer propagar qualquer erro sem tipá-lo; nesse caso o anyhow é mais prático.

Antônimos

anyhow

Origem

Do inglês 'this error', 'este erro', nome que lembra a mensagem de cada variante.

Veja também

Todos os termos de Rust