pub fn parse_json_value<'a, T: Deserialize<'a>>(
    value: Value,
    log_ignored: bool
) -> Result<T, DeserError>
Available on crate feature serde_json only.
Expand description

Parse a json Value as T, logging ignored fields and giving a more detailed error message on parse errors

Examples found in repository?
src/pubsub/mod.rs (line 616)
609
610
611
612
613
614
615
616
617
618
fn deserialize_none_from_empty_string<'de, D, T>(deserializer: D) -> Result<Option<T>, D::Error>
where
    D: serde::de::Deserializer<'de>,
    T: serde::de::DeserializeOwned, {
    let val = serde_json::Value::deserialize(deserializer)?;
    match val {
        serde_json::Value::String(string) if string.is_empty() => Ok(None),
        other => Ok(parse_json_value(other, true).map_err(serde::de::Error::custom)?),
    }
}
More examples
Hide additional examples
src/helix/mod.rs (line 107)
100
101
102
103
104
105
106
107
108
109
fn deserialize_none_from_empty_string<'de, D, T>(deserializer: D) -> Result<Option<T>, D::Error>
where
    D: serde::de::Deserializer<'de>,
    T: serde::de::DeserializeOwned, {
    let val = serde_json::Value::deserialize(deserializer)?;
    match val {
        serde_json::Value::String(string) if string.is_empty() => Ok(None),
        other => Ok(parse_json_value(other, true).map_err(serde::de::Error::custom)?),
    }
}