From df7ec3a4b66433118f09b12d5f32a10368a57852 Mon Sep 17 00:00:00 2001 From: Azriel Hoh Date: Sat, 17 Nov 2018 13:47:23 +1300 Subject: Maintain backward compatibility with Rust 1.15, take 3. --- src/de.rs | 3 ++- tests/enum_external_deserialize.rs | 11 ++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/de.rs b/src/de.rs index 9d5a417..9b58606 100644 --- a/src/de.rs +++ b/src/de.rs @@ -568,7 +568,8 @@ impl<'de> de::Deserializer<'de> for ValueDeserializer<'de> { match &self.value.e { &E::InlineTable(ref values) | &E::DottedTable(ref values) => { let extra_fields = values.iter() - .filter_map(|(ref key, ref _val)| { + .filter_map(|key_value| { + let (ref key, ref _val) = *key_value; if !fields.contains(&&(**key)) { Some(key.clone()) } else { diff --git a/tests/enum_external_deserialize.rs b/tests/enum_external_deserialize.rs index e35f06a..3c38580 100644 --- a/tests/enum_external_deserialize.rs +++ b/tests/enum_external_deserialize.rs @@ -22,8 +22,7 @@ struct Multi { #[test] fn invalid_variant_returns_error_with_good_message_string() { - let error = toml::from_str::("\"NonExistent\"") - .expect_err("Expected deserialization to fail."); + let error = toml::from_str::("\"NonExistent\"").unwrap_err(); assert_eq!( error.to_string(), @@ -33,8 +32,7 @@ fn invalid_variant_returns_error_with_good_message_string() { #[test] fn invalid_variant_returns_error_with_good_message_inline_table() { - let error = toml::from_str::("{ NonExistent = {} }") - .expect_err("Expected deserialization to fail."); + let error = toml::from_str::("{ NonExistent = {} }").unwrap_err(); assert_eq!( error.to_string(), "unknown variant `NonExistent`, expected one of `Plain`, `Tuple`, `NewType`, `Struct`" @@ -43,8 +41,7 @@ fn invalid_variant_returns_error_with_good_message_inline_table() { #[test] fn extra_field_returns_expected_empty_table_error() { - let error = toml::from_str::("{ Plain = { extra_field = 404 } }") - .expect_err("Expected deserialization to fail."); + let error = toml::from_str::("{ Plain = { extra_field = 404 } }").unwrap_err(); assert_eq!(error.to_string(), "expected empty table"); } @@ -52,7 +49,7 @@ fn extra_field_returns_expected_empty_table_error() { #[test] fn extra_field_returns_expected_empty_table_error_struct_variant() { let error = toml::from_str::("{ Struct = { value = 123, extra_0 = 0, extra_1 = 1 } }") - .expect_err("Expected deserialization to fail."); + .unwrap_err(); assert_eq!( error.to_string(), -- cgit v1.2.3