1#![allow(dead_code)]
2
3#[derive(Debug)]
4pub enum SpeedTestError {
5 Reqwest(reqwest::Error),
6 Io(::std::io::Error),
7 Csv(csv::Error),
8 ParseFloatError(std::num::ParseFloatError),
9 ParseIntError(std::num::ParseIntError),
10 AddrParseError(std::net::AddrParseError),
11 RoXmlTreeError(roxmltree::Error),
12 ConfigParseError,
13 ServerParseError,
14 LatencyTestInvalidPath,
15 LatencyTestNoServerError,
16 LatencyTestClosestError,
17 UrlParseError(url::ParseError),
18 SystemTimeError(std::time::SystemTimeError),
19 ParseShareUrlError,
20 ThreadPoolBuildError(rayon::ThreadPoolBuildError),
21}
22
23impl From<reqwest::Error> for SpeedTestError {
24 fn from(err: reqwest::Error) -> SpeedTestError {
25 SpeedTestError::Reqwest(err)
26 }
27}
28
29impl From<::std::io::Error> for SpeedTestError {
30 fn from(err: ::std::io::Error) -> SpeedTestError {
31 SpeedTestError::Io(err)
32 }
33}
34
35impl From<csv::Error> for SpeedTestError {
36 fn from(err: csv::Error) -> SpeedTestError {
37 SpeedTestError::Csv(err)
38 }
39}
40
41impl From<std::num::ParseFloatError> for SpeedTestError {
42 fn from(err: std::num::ParseFloatError) -> SpeedTestError {
43 SpeedTestError::ParseFloatError(err)
44 }
45}
46
47impl From<std::num::ParseIntError> for SpeedTestError {
48 fn from(err: std::num::ParseIntError) -> SpeedTestError {
49 SpeedTestError::ParseIntError(err)
50 }
51}
52
53impl From<std::net::AddrParseError> for SpeedTestError {
54 fn from(err: std::net::AddrParseError) -> SpeedTestError {
55 SpeedTestError::AddrParseError(err)
56 }
57}
58
59impl From<roxmltree::Error> for SpeedTestError {
60 fn from(err: roxmltree::Error) -> SpeedTestError {
61 SpeedTestError::RoXmlTreeError(err)
62 }
63}
64
65impl From<url::ParseError> for SpeedTestError {
66 fn from(err: url::ParseError) -> SpeedTestError {
67 SpeedTestError::UrlParseError(err)
68 }
69}
70
71impl From<std::time::SystemTimeError> for SpeedTestError {
72 fn from(err: std::time::SystemTimeError) -> SpeedTestError {
73 SpeedTestError::SystemTimeError(err)
74 }
75}
76
77impl From<rayon::ThreadPoolBuildError> for SpeedTestError {
78 fn from(err: rayon::ThreadPoolBuildError) -> SpeedTestError {
79 SpeedTestError::ThreadPoolBuildError(err)
80 }
81}