Skip to content

Commit 36266bd

Browse files
committed
Consistently use visit_content_seq and visit_content_map when deserialize enums
Helper methods visit_content_[seq|map] does the same as [Seq|Map]Deserializer::deserialize_any and used everywhere except here. Reuse them for consistency
1 parent 508ec36 commit 36266bd

File tree

1 file changed

+3
-9
lines changed

1 file changed

+3
-9
lines changed

serde/src/private/de.rs

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1615,9 +1615,7 @@ mod content {
16151615
V: de::Visitor<'de>,
16161616
{
16171617
match self.value {
1618-
Some(Content::Seq(v)) => {
1619-
de::Deserializer::deserialize_any(SeqDeserializer::new(v.into_iter()), visitor)
1620-
}
1618+
Some(Content::Seq(v)) => visit_content_seq(v, visitor),
16211619
Some(other) => Err(de::Error::invalid_type(
16221620
other.unexpected(),
16231621
&"tuple variant",
@@ -1638,12 +1636,8 @@ mod content {
16381636
V: de::Visitor<'de>,
16391637
{
16401638
match self.value {
1641-
Some(Content::Map(v)) => {
1642-
de::Deserializer::deserialize_any(MapDeserializer::new(v.into_iter()), visitor)
1643-
}
1644-
Some(Content::Seq(v)) => {
1645-
de::Deserializer::deserialize_any(SeqDeserializer::new(v.into_iter()), visitor)
1646-
}
1639+
Some(Content::Map(v)) => visit_content_map(v, visitor),
1640+
Some(Content::Seq(v)) => visit_content_seq(v, visitor),
16471641
Some(other) => Err(de::Error::invalid_type(
16481642
other.unexpected(),
16491643
&"struct variant",

0 commit comments

Comments
 (0)