1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum WrkError {
5 #[error("Execution error: {0}")]
7 Exec(String),
8 #[error("History error: {0}")]
10 History(String),
11 #[error("Bitmap plotting error: {0}")]
12 Bitmap(String),
13 #[error("Lua error: {0}")]
15 Lua(String),
16 #[error("Plot error: {0}")]
18 Plot(String),
19 #[error("Statistics error: {0}")]
20 Stats(String),
21 #[error(transparent)]
22 Io(#[from] std::io::Error),
23 #[error(transparent)]
24 Serde(#[from] serde_json::Error),
25 #[error(transparent)]
26 Chrono(#[from] chrono::ParseError),
27 #[error(transparent)]
28 Url(#[from] url::ParseError),
29 #[error(transparent)]
30 Tempfile(#[from] tempfile::PersistError),
31 #[error(transparent)]
32 WrkBuilder(#[from] crate::wrk::WrkBuilderError),
33 #[error(transparent)]
34 WrkResultBuilder(#[from] crate::result::WrkResultBuilderError),
35 #[error(transparent)]
36 BenchmarkBuilder(#[from] crate::benchmark::BenchmarkBuilderError),
37}