From 1668cd19d3efef7c4c64431e7af2b109b020d60c Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Wed, 13 Feb 2019 09:12:19 -0800 Subject: [PATCH] Eliminate try!(..).value to improve rustfmt'd code Rustfmt bails out on the original code, leaving it all on one line. --- serde_derive/src/de.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/serde_derive/src/de.rs b/serde_derive/src/de.rs index e15b6d18..cff71d95 100644 --- a/serde_derive/src/de.rs +++ b/serde_derive/src/de.rs @@ -2384,7 +2384,12 @@ fn deserialize_map( let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path); quote!({ #wrapper - try!(_serde::de::MapAccess::next_value::<#wrapper_ty>(&mut __map)).value + match _serde::de::MapAccess::next_value::<#wrapper_ty>(&mut __map) { + _serde::export::Ok(__wrapper) => __wrapper.value, + _serde::export::Err(__err) => { + return _serde::export::Err(__err); + } + } }) } }; @@ -2615,7 +2620,12 @@ fn deserialize_map_in_place( let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path); quote!({ #wrapper - self.place.#member = try!(_serde::de::MapAccess::next_value::<#wrapper_ty>(&mut __map)).value + self.place.#member = match _serde::de::MapAccess::next_value::<#wrapper_ty>(&mut __map) { + _serde::export::Ok(__wrapper) => __wrapper.value, + _serde::export::Err(__err) => { + return _serde::export::Err(__err); + } + }; }) } };