fn next_value_seed<V>(&mutself, seed: V) -> Result<V::Value, Self::Error> where
V: serde_core::de::DeserializeSeed<'de>,
{ iflet Some(date) = self.date.take() {
seed.deserialize(date.to_string().into_deserializer())
} else {
panic!("next_value_seed called before next_key_seed")
}
}
}
/// Integrate [`Datetime`][crate::Datetime] into an untagged deserialize #[cfg(feature = "alloc")] pubenum VisitMap<'de> { /// The map was deserialized as a [Datetime][crate::Datetime] value
Datetime(crate::Datetime), /// The map is of an unknown format and needs further deserialization
Key(alloc::borrow::Cow<'de, str>),
}
impl<'de> VisitMap<'de> { /// Determine the type of the map by deserializing it pubfn next_key_seed<V: serde_core::de::MapAccess<'de>>(
visitor: &mut V,
) -> Result<Option<Self>, V::Error> { letmut key = None; let Some(()) = visitor.next_key_seed(DatetimeOrTable::new(&mut key))? else { return Ok(None);
}; let result = iflet Some(key) = key {
VisitMap::Key(key)
} else { let date: crate::datetime::DatetimeFromString = visitor.next_value()?;
VisitMap::Datetime(date.value)
};
Ok(Some(result))
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.