Skip to main content

normordis_pdf/
error.rs

1use thiserror::Error;
2
3/// All errors that can occur during PDF generation.
4#[derive(Debug, Error)]
5pub enum NormaxisPdfError {
6    #[error("font load error: {0}")]
7    FontLoadError(String),
8
9    #[error("image load error: {0}")]
10    ImageLoadError(String),
11
12    #[error("render error: {0}")]
13    RenderError(String),
14
15    #[error("parse error: {0}")]
16    ParseError(String),
17
18    #[error(transparent)]
19    IoError(#[from] std::io::Error),
20
21    #[error("template error: {0}")]
22    Template(String),
23
24    #[error("cycle detected in style inheritance chain: '{0}'")]
25    StyleCycleError(String),
26
27    #[error("unknown style name: '{0}'")]
28    UnknownStyle(String),
29
30    #[error("NDF integrity error: {0}")]
31    NdfIntegrityError(String),
32
33    #[error("NDF audit chain error: {0}")]
34    NdfAuditError(String),
35
36    #[error("NDF revision error: {0}")]
37    NdfRevisionError(String),
38
39    #[error("NDF compile error: {0}")]
40    NdfCompileError(String),
41
42    #[error("PDF/UA-2 accessibility error: {0}")]
43    AccessibilityError(String),
44
45    #[error("serialisation error: {0}")]
46    SerdeError(String),
47}
48
49pub type Result<T> = std::result::Result<T, NormaxisPdfError>;