зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1569466 - Implement Deserialize for ErrorStatus. r=ato
Implement Deserialize for ErrorStatus Differential Revision: https://phabricator.services.mozilla.com/D39632 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
719acf006d
Коммит
ccc3d023a4
|
@ -1,5 +1,6 @@
|
|||
use base64::DecodeError;
|
||||
use http::StatusCode;
|
||||
use serde::de::{Deserialize, Deserializer};
|
||||
use serde::ser::{Serialize, Serializer};
|
||||
use serde_json;
|
||||
use std::borrow::Cow;
|
||||
|
@ -149,6 +150,16 @@ impl Serialize for ErrorStatus {
|
|||
}
|
||||
}
|
||||
|
||||
impl<'de> Deserialize<'de> for ErrorStatus {
|
||||
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
|
||||
where
|
||||
D: Deserializer<'de>,
|
||||
{
|
||||
let error_string = String::deserialize(deserializer)?;
|
||||
Ok(ErrorStatus::from(error_string))
|
||||
}
|
||||
}
|
||||
|
||||
impl ErrorStatus {
|
||||
/// Returns the string serialisation of the error type.
|
||||
pub fn error_code(&self) -> &'static str {
|
||||
|
|
Загрузка…
Ссылка в новой задаче