catalogue/
error.rs

1// Lints
2// Todo: remove when `https://github.com/rust-lang/rust/issues/147648` will be resolved.
3#![allow(unused_assignments)]
4
5use miette::{
6    SourceSpan,
7};
8
9#[derive(Debug)]
10#[derive(miette::Diagnostic)]
11#[derive(thiserror::Error)]
12pub enum Error {
13    #[error(transparent)]
14    #[diagnostic(transparent)]
15    Name(#[from] parse::NameError),
16
17    #[error("National classification not found '{national}'")]
18    NationalNotFound {
19        #[label]
20        range: SourceSpan,
21
22        national: String,
23    },
24
25    #[error(transparent)]
26    #[diagnostic(transparent)]
27    Path(#[from] parse::PathError),
28
29    #[error(transparent)]
30    #[diagnostic(transparent)]
31    Xml(#[from] parse::xml::ParseError),
32}