DeserializeBytes

Trait DeserializeBytes 

Source
pub trait DeserializeBytes: Sized {
    // Required method
    fn deserialize_bytes<R: XmlReader>(
        reader: &R,
        bytes: &[u8],
    ) -> Result<Self, Error>;

    // Provided method
    fn deserialize_str<R: XmlReader>(reader: &R, s: &str) -> Result<Self, Error> { ... }
}
Expand description

Trait that could be implemented by types to support deserialization from XML byte streams using the quick_xml crate.

This is usually implemented for simple types like numbers, strings or enums.

Required Methods§

Source

fn deserialize_bytes<R: XmlReader>( reader: &R, bytes: &[u8], ) -> Result<Self, Error>

Try to deserialize the type from bytes.

This is used to deserialize the type from attributes or raw element content.

§Errors

Returns a suitable Error if the deserialization was not successful.

Provided Methods§

Source

fn deserialize_str<R: XmlReader>(reader: &R, s: &str) -> Result<Self, Error>

Optimized version of deserialize_bytes that takes a string instead of a bytes slice.

This is useful if previous checks on the string already did the UTF-8 conversion.

§Errors

Returns a suitable Error if the deserialization was not successful.

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.

Implementations on Foreign Types§

Source§

impl DeserializeBytes for bool

Source§

fn deserialize_bytes<R: XmlReader>( reader: &R, bytes: &[u8], ) -> Result<Self, Error>

Implementors§

Source§

impl DeserializeBytes for AttributeUseType

Source§

impl DeserializeBytes for BasicNamespaceListItemType

Source§

impl DeserializeBytes for BlockSetItemType

Source§

impl DeserializeBytes for BlockSetType

Source§

impl DeserializeBytes for DefaultOpenContentModeType

Source§

impl DeserializeBytes for DerivationSetType

Source§

impl DeserializeBytes for FormChoiceType

Source§

impl DeserializeBytes for FullDerivationSetType

Source§

impl DeserializeBytes for NamespaceListType

Source§

impl DeserializeBytes for OpenContentModeType

Source§

impl DeserializeBytes for ProcessContentsType

Source§

impl DeserializeBytes for QnameListAItemType

Source§

impl DeserializeBytes for QnameListItemType

Source§

impl DeserializeBytes for ReducedDerivationControlType

Source§

impl DeserializeBytes for SimpleDerivationSetItemType

Source§

impl DeserializeBytes for SimpleDerivationSetType

Source§

impl DeserializeBytes for TypeDerivationControlType

Source§

impl DeserializeBytes for XpathDefaultNamespaceType

Source§

impl DeserializeBytes for QName

Source§

impl DeserializeBytes for BasicNamespaceListType

Source§

impl DeserializeBytes for BlockSetItemList

Source§

impl DeserializeBytes for QNameList

Source§

impl DeserializeBytes for QnameListAType

Source§

impl DeserializeBytes for QnameListType

Source§

impl DeserializeBytes for ReducedDerivationControlList

Source§

impl DeserializeBytes for SimpleDerivationSetItemList

Source§

impl DeserializeBytes for TypeDerivationControlList

Source§

impl<X> DeserializeBytes for X
where X: DeserializeBytesFromStr, X::Err: Error + Send + Sync + 'static,