Skip to content

Commit e3d4036

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 99cab19 commit e3d4036

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
@@ -1624,9 +1624,7 @@ mod content {
16241624
V: de::Visitor<'de>,
16251625
{
16261626
match self.value {
1627-
Some(Content::Seq(v)) => {
1628-
de::Deserializer::deserialize_any(SeqDeserializer::new(v.into_iter()), visitor)
1629-
}
1627+
Some(Content::Seq(v)) => visit_content_seq(v, visitor),
16301628
Some(other) => Err(de::Error::invalid_type(
16311629
other.unexpected(),
16321630
&"tuple variant",
@@ -1647,12 +1645,8 @@ mod content {
16471645
V: de::Visitor<'de>,
16481646
{
16491647
match self.value {
1650-
Some(Content::Map(v)) => {
1651-
de::Deserializer::deserialize_any(MapDeserializer::new(v.into_iter()), visitor)
1652-
}
1653-
Some(Content::Seq(v)) => {
1654-
de::Deserializer::deserialize_any(SeqDeserializer::new(v.into_iter()), visitor)
1655-
}
1648+
Some(Content::Map(v)) => visit_content_map(v, visitor),
1649+
Some(Content::Seq(v)) => visit_content_seq(v, visitor),
16561650
Some(other) => Err(de::Error::invalid_type(
16571651
other.unexpected(),
16581652
&"struct variant",

0 commit comments

Comments
 (0)