Trait instant_xml::FromXml

source ·
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>;
}

Required Associated Types§

Required Associated Constants§

Required Methods§

source

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

Implementations on Foreign Types§

source§

impl<'xml> FromXml<'xml> for i8

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<i8>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for char

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<char>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml, 'a, T: FromXml<'xml>> FromXml<'xml> for Cow<'a, [T]>where [T]: ToOwned<Owned = Vec<T>>,

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'_, 'xml> ) -> Result<(), Error>

§

type Accumulator = Vec<T, Global>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for f64

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<f64>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for u64

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<u64>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for u32

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<u32>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml, T: FromXml<'xml>> FromXml<'xml> for Vec<T>

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Vec<T, Global>

source§

const KIND: Kind = T::KIND

source§

impl<'xml> FromXml<'xml> for u8

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<u8>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for usize

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<usize>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml, 'a> FromXml<'xml> for Cow<'a, str>

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize( into: &mut Self::Accumulator, _: &'static str, deserializer: &mut Deserializer<'_, 'xml> ) -> Result<(), Error>

§

type Accumulator = CowStrAccumulator<'xml, 'a>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for f32

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<f32>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for bool

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<bool>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for i64

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<i64>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for &'xml str

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<&'xml str>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for u16

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<u16>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for isize

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<isize>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for IpAddr

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<IpAddr>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for String

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, _: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<String>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml, T: FromXml<'xml>> FromXml<'xml> for Option<T>

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = OptionAccumulator<T, <T as FromXml<'xml>>::Accumulator>

source§

const KIND: Kind = T::KIND

source§

impl<'xml> FromXml<'xml> for ()

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, _: &'static str, _: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<()>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for i32

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<i32>

source§

const KIND: Kind = Kind::Scalar

source§

impl<'xml> FromXml<'xml> for i16

source§

fn matches(id: Id<'_>, field: Option<Id<'_>>) -> bool

source§

fn deserialize<'cx>( into: &mut Self::Accumulator, field: &'static str, deserializer: &mut Deserializer<'cx, 'xml> ) -> Result<(), Error>

§

type Accumulator = Option<i16>

source§

const KIND: Kind = Kind::Scalar

Implementors§