beisen/utils/serde/
mod.rs

1use serde::{Deserialize, Deserializer};
2
3// json解析时,null值解析成对应的默认值
4pub fn deserialize_null_default<'de, D, T>(deserializer: D) -> Result<T, D::Error>
5where
6    T: Default + Deserialize<'de>,
7    D: Deserializer<'de>,
8{
9    let opt = Option::deserialize(deserializer)?;
10    Ok(opt.unwrap_or_default())
11}