1use std::path::PathBuf;
2
3#[derive(Debug, thiserror::Error)]
5pub enum RippyError {
6 #[error("I/O error: {0}")]
7 Io(#[from] std::io::Error),
8
9 #[error("JSON error: {0}")]
10 Json(#[from] serde_json::Error),
11
12 #[error("{path}:{line}: {message}")]
13 Config {
14 path: PathBuf,
15 line: usize,
16 message: String,
17 },
18
19 #[error("parse error: {0}")]
20 Parse(String),
21
22 #[error("unknown mode: {0}")]
23 UnknownMode(String),
24
25 #[error("missing field: {0}")]
26 MissingField(String),
27
28 #[error("setup error: {0}")]
29 Setup(String),
30
31 #[error("tracking error: {0}")]
32 Tracking(String),
33
34 #[error("trust error: {0}")]
35 Trust(String),
36}