INNER CODE UNIT · Rust

deserialize

pamburus/hl · crates/enumset-serde/src/lib.rs:8

pub fn deserialize<'de, D, T: EnumSetType + de::Deserialize<'de>>(deserializer: D) -> Result<EnumSet<T>, D::Error>
where
    D: de::Deserializer<'de>,
{
    deserializer.deserialize_any(EnumSetDeserializer::default())
}

// ---

struct EnumSetDeserializer<T: EnumSetType>(EnumSet<T>);

impl<T: EnumSetType> Default for EnumSetDeserializer<T> {
    fn default() -> Self {
        Self(EnumSet::new())
    }
}

impl<'de, T: EnumSetType + de::Deserialize<'de>> de::Visitor<'de> for EnumSetDeserializer<T> {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…