Trait xso::FromXml

source ·
pub trait FromXml {
    type Builder: FromEventsBuilder<Output = Self>;

    // Required method
    fn from_events(
        name: QName,
        attrs: AttrMap,
    ) -> Result<Self::Builder, FromEventsError>;
}
Expand description

Trait allowing to construct a struct from a stream of rxml::Event items.

To use this, first call FromXml::from_events with the qualified name and the attributes of the corresponding rxml::Event::StartElement event. If the call succeeds, the returned builder object must be fed with the events representing the contents of the element, and then with the EndElement event.

The StartElement passed to from_events must not be passed to feed.

Important: Changing the Builder associated type is considered a non-breaking change for any given implementation of this trait. Always refer to a type’s builder type using fully-qualified notation, for example: <T as xso::FromXml>::Builder.

Required Associated Types§

source

type Builder: FromEventsBuilder<Output = Self>

A builder type used to construct the element.

Important: Changing this type is considered a non-breaking change for any given implementation of this trait. Always refer to a type’s builder type using fully-qualified notation, for example: <T as xso::FromXml>::Builder.

Required Methods§

source

fn from_events( name: QName, attrs: AttrMap, ) -> Result<Self::Builder, FromEventsError>

Attempt to initiate the streamed construction of this struct from XML.

If the passed qualified name and attrs match the element’s type, the Self::Builder is returned and should be fed with XML events by the caller.

Otherwise, an appropriate error is returned.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl FromXml for Element

Available on crate feature minidom only.
source§

impl<T: FromXml> FromXml for Option<T>

source§

impl<T: FromXml> FromXml for Box<T>

Implementors§

impl FromXml for Method

impl FromXml for Header

impl FromXml for MoodEnum

impl FromXml for Actor

impl FromXml for Status

impl FromXml for Action

impl FromXml for Data

impl FromXml for Info

impl FromXml for Metadata

impl FromXml for Required

impl FromXml for Block

impl FromXml for Blocked

impl FromXml for Unblock

impl FromXml for Data

impl FromXml for Storage

impl FromXml for Url

impl FromXml for Disable

impl FromXml for Enable

impl FromXml for Private

impl FromXml for Received

impl FromXml for Sent

impl FromXml for Append

impl FromXml for Cert

impl FromXml for Disable

impl FromXml for Item

impl FromXml for Name

impl FromXml for Resource

impl FromXml for Revoke

impl FromXml for Users

impl FromXml for Active

impl FromXml for Feature

impl FromXml for Inactive

impl FromXml for DataForm

impl FromXml for Option_

impl FromXml for Validate

impl FromXml for Delay

impl FromXml for Feature

impl FromXml for Identity

impl FromXml for Item

impl FromXml for ECaps2

impl FromXml for Service

impl FromXml for Token

impl FromXml for Hash

impl FromXml for Get

impl FromXml for Put

impl FromXml for Close

impl FromXml for Data

impl FromXml for Open

impl FromXml for Idle

impl FromXml for Content

impl FromXml for Range

impl FromXml for Received

impl FromXml for Content

impl FromXml for Group

impl FromXml for RtcpFb

impl FromXml for RtcpMux

impl FromXml for Group

impl FromXml for Source

impl FromXml for Bundle

impl FromXml for Device

impl FromXml for Header

impl FromXml for IV

impl FromXml for Key

impl FromXml for Payload

impl FromXml for Prekeys

impl FromXml for End

impl FromXml for Fin

impl FromXml for Result_

impl FromXml for Start

impl FromXml for Prefs

impl FromXml for Uri

impl FromXml for Body

impl FromXml for Subject

impl FromXml for Thread

impl FromXml for Replace

impl FromXml for Create

impl FromXml for Destroy

impl FromXml for Join

impl FromXml for Leave

impl FromXml for Mix

impl FromXml for SetNick

impl FromXml for Text

impl FromXml for History

impl FromXml for Muc

impl FromXml for Continue

impl FromXml for Item

impl FromXml for MucUser

impl FromXml for Reason

impl FromXml for Nick

impl FromXml for Oob

impl FromXml for PubKey

impl FromXml for Ping

impl FromXml for Query

impl FromXml for Item

impl FromXml for Default

impl FromXml for Delete

impl FromXml for Purge

impl FromXml for Redirect

impl FromXml for Create

impl FromXml for Default

impl FromXml for Item

impl FromXml for Items

impl FromXml for Options

impl FromXml for Publish

impl FromXml for Retract

impl FromXml for Reaction

impl FromXml for Received

impl FromXml for Request

impl FromXml for Group

impl FromXml for Item

impl FromXml for Roster

impl FromXml for SetQuery

impl FromXml for Rtt

impl FromXml for Abort

impl FromXml for Auth

impl FromXml for Response

impl FromXml for Success

impl FromXml for A

impl FromXml for Enable

impl FromXml for Enabled

impl FromXml for Failed

impl FromXml for R

impl FromXml for Resume

impl FromXml for Resumed

impl FromXml for OriginId

impl FromXml for StanzaId

impl FromXml for Stream

impl FromXml for StartTls

impl FromXml for Artist

impl FromXml for Length

impl FromXml for Rating

impl FromXml for Source

impl FromXml for Title

impl FromXml for Track

impl FromXml for Tune

impl FromXml for Uri

impl FromXml for Binval

impl FromXml for Photo

impl FromXml for Type

impl FromXml for Photo

impl FromXml for Open