pub trait FromXml<'xml>: Sized {
type Accumulator: Accumulate<Self>;
const KIND: Kind;
// Required methods
fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool;
fn deserialize<'cx>(
into: &mut Self::Accumulator,
field: &'static str,
deserializer: &mut Deserializer<'cx, 'xml>,
) -> Result<(), Error>;
}Expand description
Deserialize a type from XML
Required Associated Constants§
Required Associated Types§
Sourcetype Accumulator: Accumulate<Self>
type Accumulator: Accumulate<Self>
The accumulator type used during deserialization
Required Methods§
Sourcefn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool
fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool
Check if an element or attribute matches this type
Sourcefn deserialize<'cx>(
into: &mut Self::Accumulator,
field: &'static str,
deserializer: &mut Deserializer<'cx, 'xml>,
) -> Result<(), Error>
fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml>, ) -> Result<(), Error>
Deserialize from XML into an accumulator
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.