From c162d518668de8363af67f6ffc1686ebec6de993 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Leo=20Bl=C3=B6cher?= Date: Tue, 19 Jan 2021 02:32:26 +0100 Subject: [PATCH] Add 128-bit integer support to de::IgnoredAny This fixes the errors that occur when IgnoredAny is deserialized from anything containing a 128-bit integer somewhere. As IgnoredAny is used in serde_derive to skip ignored fields in structs, these errors currently prevent parsing of structs with an ignored field containing a 128-bit integer in the serialization. --- serde/src/de/ignored_any.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/serde/src/de/ignored_any.rs b/serde/src/de/ignored_any.rs index 68a644e0d..1d50f5ec3 100644 --- a/serde/src/de/ignored_any.rs +++ b/serde/src/de/ignored_any.rs @@ -130,12 +130,28 @@ impl<'de> Visitor<'de> for IgnoredAny { Ok(IgnoredAny) } + serde_if_integer128! { + #[inline] + fn visit_i128(self, x: i128) -> Result { + let _ = x; + Ok(IgnoredAny) + } + } + #[inline] fn visit_u64(self, x: u64) -> Result { let _ = x; Ok(IgnoredAny) } + serde_if_integer128! { + #[inline] + fn visit_u128(self, x: u128) -> Result { + let _ = x; + Ok(IgnoredAny) + } + } + #[inline] fn visit_f64(self, x: f64) -> Result { let _ = x;