From eb08f037f57fa900e7fa0177e71b421effe41001 Mon Sep 17 00:00:00 2001 From: Zoe Juozapaitis Date: Tue, 31 Oct 2017 02:58:41 -0700 Subject: [PATCH 1/2] Add std::num::Wrapping support --- serde/src/de/impls.rs | 17 +++++++++++++++++ serde/src/ser/impls.rs | 16 ++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/serde/src/de/impls.rs b/serde/src/de/impls.rs index b309ccbf..0be48ee0 100644 --- a/serde/src/de/impls.rs +++ b/serde/src/de/impls.rs @@ -1825,3 +1825,20 @@ where deserializer.deserialize_enum("Result", VARIANTS, ResultVisitor(PhantomData)) } } + +//////////////////////////////////////////////////////////////////////////////// + +#[cfg(feature = "std")] +use std::num::Wrapping; + +#[cfg(feature = "std")] +impl<'de, T> Deserialize<'de> for Wrapping +where + T: Deserialize<'de> +{ + fn deserialize(deserializer: D) -> Result, D::Error> + where D: Deserializer<'de> + { + Deserialize::deserialize(deserializer).map(Wrapping) + } +} \ No newline at end of file diff --git a/serde/src/ser/impls.rs b/serde/src/ser/impls.rs index 6d6817b7..bf18a037 100644 --- a/serde/src/ser/impls.rs +++ b/serde/src/ser/impls.rs @@ -664,3 +664,19 @@ impl Serialize for OsString { self.as_os_str().serialize(serializer) } } + +//////////////////////////////////////////////////////////////////////////////// + +#[cfg(feature = "std")] +use std::num::Wrapping; + +#[cfg(feature = "std")] +impl Serialize for Wrapping { + #[inline] + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + self.0.serialize(serializer) + } +} \ No newline at end of file From a7e4911ddbb96073337ecaeb5f76b0064fb0c503 Mon Sep 17 00:00:00 2001 From: Zoe Juozapaitis Date: Tue, 31 Oct 2017 04:29:00 -0700 Subject: [PATCH 2/2] Add newlines to ends of files --- serde/src/de/impls.rs | 2 +- serde/src/ser/impls.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/serde/src/de/impls.rs b/serde/src/de/impls.rs index 0be48ee0..fd6b22f8 100644 --- a/serde/src/de/impls.rs +++ b/serde/src/de/impls.rs @@ -1841,4 +1841,4 @@ where { Deserialize::deserialize(deserializer).map(Wrapping) } -} \ No newline at end of file +} diff --git a/serde/src/ser/impls.rs b/serde/src/ser/impls.rs index bf18a037..a475c33c 100644 --- a/serde/src/ser/impls.rs +++ b/serde/src/ser/impls.rs @@ -679,4 +679,4 @@ impl Serialize for Wrapping { { self.0.serialize(serializer) } -} \ No newline at end of file +}