1use custom_error::custom_error;
2
3custom_error! { pub NewsApiError
4 InvalidParameterCombinationError = "The source parameter cannot be mixed with country or category",
5 UndefinedUrlError = "Error constructing newsapi URL",
6 GenericError{code: u16, message: String} = "GenericError: {code} => {message}",
7 BadRequest{code: u16, message: String} = "BadRequest: {code} => {message}",
8 Unauthorized{code: u16, message: String} = "Unauthorized: {code} => {message}",
9 TooManyRequests{code: u16, message: String} = "TooManyRequests: {code} => {message}",
10 ServerError{code: u16, message: String} = "ServerError: {code} => {message}",
11 ReqwestError{source: reqwest::Error} = "Reqwest Failure!",
12 SerdeError{source: serde_json::error::Error} = "Unable to deserialize payload",
13}