xapi_rs/data/
data_error.rs1use crate::data::ValidationError;
4use std::borrow::Cow;
5use thiserror::Error;
6
7#[derive(Debug, Error)]
9pub enum DataError {
10 #[error("JSON error: {0}")]
12 JSON(
13 #[doc(hidden)]
14 #[from]
15 serde_json::Error,
16 ),
17
18 #[error("IRI/URI error: {0}")]
20 IRI(
21 #[doc(hidden)]
22 #[from]
23 iri_string::validate::Error,
24 ),
25
26 #[error("EMail error: {0}")]
28 Email(
29 #[doc(hidden)]
30 #[from]
31 email_address::Error,
32 ),
33
34 #[error("MIME error: {0:?}")]
36 MIME(
37 #[doc(hidden)]
38 #[from]
39 mime::FromStrError,
40 ),
41
42 #[error("UUID error: {0:?}")]
44 UUID(
45 #[doc(hidden)]
46 #[from]
47 uuid::Error,
48 ),
49
50 #[error("Date-Time error: {0}")]
52 Time(
53 #[doc(hidden)]
54 #[from]
55 chrono::format::ParseError,
56 ),
57
58 #[error("Period error: {0}")]
60 Duration(#[doc(hidden)] Cow<'static, str>),
61
62 #[error("Language Tag error: {0:?}")]
64 LanguageTag(
65 #[doc(hidden)]
66 #[from]
67 language_tags::ParseError,
68 ),
69
70 #[error("Language Tag validation error: {0:?}")]
72 LTValidationError(
73 #[doc(hidden)]
74 #[from]
75 language_tags::ValidationError,
76 ),
77
78 #[error("Semantic version error: {0:?}")]
80 SemVer(
81 #[doc(hidden)]
82 #[from]
83 semver::Error,
84 ),
85
86 #[error("{0}")]
88 Validation(
89 #[doc(hidden)]
90 #[from]
91 ValidationError,
92 ),
93
94 #[error("Runtime error: {0}")]
96 Runtime(#[doc(hidden)] Cow<'static, str>),
97}