From d873c616fe937c86f8faf3993a492635e251950f Mon Sep 17 00:00:00 2001 From: Scott McMurray Date: Sun, 7 Mar 2021 14:06:26 -0800 Subject: [PATCH 1/2] Simplify SimpleType::from_nir for UnionType --- serde_dhall/src/value.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/serde_dhall/src/value.rs b/serde_dhall/src/value.rs index df81a850..74d433db 100644 --- a/serde_dhall/src/value.rs +++ b/serde_dhall/src/value.rs @@ -477,9 +477,7 @@ impl SimpleType { .map(|(k, v)| { Some(( k.into(), - v.as_ref() - .map(|v| Ok(Self::from_nir(v)?)) - .transpose()?, + v.as_ref().map(Self::from_nir).flatten(), )) }) .collect::>()?, From dd1c554070a03ee1d7fd84a9a137c4b565735847 Mon Sep 17 00:00:00 2001 From: Scott McMurray Date: Mon, 8 Mar 2021 11:08:23 -0800 Subject: [PATCH 2/2] .map(_).flatten() -> .and_then(_) --- serde_dhall/src/value.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/serde_dhall/src/value.rs b/serde_dhall/src/value.rs index 74d433db..2fef7e9b 100644 --- a/serde_dhall/src/value.rs +++ b/serde_dhall/src/value.rs @@ -475,10 +475,7 @@ impl SimpleType { NirKind::UnionType(kts) => SimpleType::Union( kts.iter() .map(|(k, v)| { - Some(( - k.into(), - v.as_ref().map(Self::from_nir).flatten(), - )) + Some((k.into(), v.as_ref().and_then(Self::from_nir))) }) .collect::>()?, ),