1use thiserror::Error as ThisError;
5
6#[derive(ThisError, Debug, PartialEq, Eq)]
7pub enum Error {
8 #[error("Only ASCII characters are allowed in versions")]
9 NotAscii,
10 #[error("version string is empty")]
11 EmptyVersion,
12 #[error("version string has embedded spaces")]
13 EmbeddedSpaces,
14 #[error("epoch in version is not valid: {0}")]
15 InvalidEpoch(String),
16 #[error("nothing after colon in version number")]
17 NothingAfterColon,
18 #[error("revision number is empty")]
19 EmptyRevision,
20 #[error("version number is empty")]
21 EmptyVersionNumber,
22 #[error("version number does not start with digit")]
23 NonDigitVersion,
24 #[error("invalid character in version number")]
25 InvalidCharacterInVersion,
26 #[error("invalid character in revision number")]
27 InvalidCharacterInRevision,
28}