pub fn deserialize<'de, T: Deserialize + ?Sized + 'static, B, D>(
    deserializer: D
) -> Result<B, D::Error>where
    D: Deserializer<'de>,
    Box<T>: Into<B>,
Expand description

Deserialize a value T into B where Box<T>: Into<B>.

This is intended to enable:


#[derive(Serialize, Deserialize)]
struct MyStruct {
    #[serde(with = "serde_traitobject")]
    field: Box<dyn serde_traitobject::Any>,
}

Or, alternatively, if only Deserialize is desired:


#[derive(Deserialize)]
struct MyStruct {
    #[serde(deserialize_with = "serde_traitobject::deserialize")]
    field: Box<dyn serde_traitobject::Any>,
}