1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use crate::TileSet;
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error("Server request failed: {0}")]
Reqwest(#[from] reqwest::Error),
#[error("Server returned HTTP error code: {0}")]
Http(reqwest::StatusCode),
}
#[derive(Debug, thiserror::Error, PartialEq)]
pub enum ArgumentError {
#[error("Zoom level {0} is too large for the tilset {1} (max: {2})")]
ZoomTooLarge(u32, TileSet, u32),
#[error("Zoom level {0} is too small for the tilset {1} (min: {2})")]
ZoomTooSmall(u32, TileSet, u32),
#[error("X coordinate {0} is too large for the zoom level {1} (max X: {2})")]
XTooLarge(u32, u32, u32),
#[error("Y coordinate {0} is too large for the zoom level {1} (max Y: {2})")]
YTooLarge(u32, u32, u32),
}