use serde::Deserialize; pub fn empty_string_as_none<'de, D>(de: D) -> Result<Option<String>, D::Error> where D: serde::Deserializer<'de>, { let opt: Option<String> = Option::deserialize(de)?; Ok(opt.filter(|s| !s.is_empty())) }