xsd_parser::quick_xml

Trait Deserializer

Source
pub trait Deserializer<'de, T>: Debug + Sized {
    // Required methods
    fn init<R>(
        reader: &R,
        event: Event<'de>,
    ) -> DeserializerResult<'de, T, Self>
       where R: XmlReader;
    fn next<R>(
        self,
        reader: &R,
        event: Event<'de>,
    ) -> DeserializerResult<'de, T, Self>
       where R: XmlReader;
    fn finish<R>(self, reader: &R) -> Result<T, Error>
       where R: XmlReader;
}
Expand description

Trait that defines a deserializer that can be used to construct a type from a XML Events.

Required Methods§

Source

fn init<R>(reader: &R, event: Event<'de>) -> DeserializerResult<'de, T, Self>
where R: XmlReader,

Initializes a new deserializer from the passed reader and the initial event.

§Errors

Returns an Error if the initialization of the deserializer failed.

Source

fn next<R>( self, reader: &R, event: Event<'de>, ) -> DeserializerResult<'de, T, Self>
where R: XmlReader,

Processes the next XML Event.

§Errors

Returns an Error if processing the event failed.

Source

fn finish<R>(self, reader: &R) -> Result<T, Error>
where R: XmlReader,

Force the deserializer to finish.

§Errors

Returns an Error if the deserializer could not finish.

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.

Implementors§

Source§

impl<'de> Deserializer<'de, Facet> for FacetDeserializer

Source§

impl<'de> Deserializer<'de, AltType> for AltTypeDeserializer

Source§

impl<'de> Deserializer<'de, Annotation> for AnnotationDeserializer

Source§

impl<'de> Deserializer<'de, Any> for AnyDeserializer

Source§

impl<'de> Deserializer<'de, AnyAttribute> for AnyAttributeDeserializer

Source§

impl<'de> Deserializer<'de, Appinfo> for AppinfoDeserializer

Source§

impl<'de> Deserializer<'de, AssertionType> for AssertionTypeDeserializer

Source§

impl<'de> Deserializer<'de, AttributeGroupType> for AttributeGroupTypeDeserializer

Source§

impl<'de> Deserializer<'de, AttributeType> for AttributeTypeDeserializer

Source§

impl<'de> Deserializer<'de, ComplexBaseType> for ComplexBaseTypeDeserializer

Source§

impl<'de> Deserializer<'de, ComplexContent> for ComplexContentDeserializer

Source§

impl<'de> Deserializer<'de, DefaultOpenContent> for DefaultOpenContentDeserializer

Source§

impl<'de> Deserializer<'de, Documentation> for DocumentationDeserializer

Source§

impl<'de> Deserializer<'de, ElementType> for ElementTypeDeserializer

Source§

impl<'de> Deserializer<'de, ExtensionType> for ExtensionTypeDeserializer

Source§

impl<'de> Deserializer<'de, FacetType> for FacetTypeDeserializer

Source§

impl<'de> Deserializer<'de, Field> for FieldDeserializer

Source§

impl<'de> Deserializer<'de, GroupType> for GroupTypeDeserializer

Source§

impl<'de> Deserializer<'de, Import> for ImportDeserializer

Source§

impl<'de> Deserializer<'de, Include> for IncludeDeserializer

Source§

impl<'de> Deserializer<'de, KeybaseType> for KeybaseTypeDeserializer

Source§

impl<'de> Deserializer<'de, Keyref> for KeyrefDeserializer

Source§

impl<'de> Deserializer<'de, List> for ListDeserializer

Source§

impl<'de> Deserializer<'de, Notation> for NotationDeserializer

Source§

impl<'de> Deserializer<'de, OpenContent> for OpenContentDeserializer

Source§

impl<'de> Deserializer<'de, Override> for OverrideDeserializer

Source§

impl<'de> Deserializer<'de, Redefine> for RedefineDeserializer

Source§

impl<'de> Deserializer<'de, Restriction> for RestrictionDeserializer

Source§

impl<'de> Deserializer<'de, RestrictionType> for RestrictionTypeDeserializer

Source§

impl<'de> Deserializer<'de, Schema> for SchemaDeserializer

Source§

impl<'de> Deserializer<'de, SimpleBaseType> for SimpleBaseTypeDeserializer

Source§

impl<'de> Deserializer<'de, SimpleContent> for SimpleContentDeserializer

Source§

impl<'de> Deserializer<'de, Union> for UnionDeserializer

Source§

impl<'de> Deserializer<'de, WildcardType> for WildcardTypeDeserializer

Source§

impl<'de, T> Deserializer<'de, T> for ContentDeserializer<T>