pub trait Deserialize<'de>: Sized {
// Required method
fn deserialize<D: Deserializer<'de>>(reader: D) -> Result<Self, D::Error>;
// Provided method
fn deserialize_seq<D: Deserializer<'de>>(
reader: D,
) -> Result<Self, D::Error> { ... }
}Expand description
A type that can be deserialized from a deserializer. This type has two methods: Deserialize::deserialize and Deserialize::deserialize_seq. The latter is used in cases where types can be constructed from multiple nodes, such as constructing a std::vec::Vec from multiple elements, or a std::string::String from multiple text nodes that are concatenated together.
Required Methods§
Sourcefn deserialize<D: Deserializer<'de>>(reader: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(reader: D) -> Result<Self, D::Error>
Deserializes a value from a deserializer.
Provided Methods§
Sourcefn deserialize_seq<D: Deserializer<'de>>(reader: D) -> Result<Self, D::Error>
fn deserialize_seq<D: Deserializer<'de>>(reader: D) -> Result<Self, D::Error>
Deserializes a value from a deserializer, but tries to do it from a sequence of values.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.