use thiserror::Error;
#[derive(Error, Debug, PartialEq)]
pub enum DatafileError {
#[error("JSON can not be parsed")]
InvalidJson,
#[error("Failed to make request to cdn.optimizely.com")]
FailedRequest,
#[error("Failed to decode response from cdn.optimizely.com")]
FailedResponse,
#[error("Failed to open local datafile")]
FailedFileOpen,
#[error("Failed to read from local datafile")]
FailedFileRead,
}
impl serde::de::Error for DatafileError {
fn custom<T: std::fmt::Display>(_msg: T) -> Self {
DatafileError::InvalidJson
}
}