Struct MapValueSeqAccess

Source
struct MapValueSeqAccess<'de, 'd, 'm, R, E>
where R: XmlRead<'de>, E: EntityResolver,
{ map: &'m mut ElementMapAccess<'de, 'd, R, E>, filter: TagFilter<'de>, checkpoint: usize, }
Expand description

An accessor to sequence elements forming a value for struct field. Technically, this sequence is flattened out into structure and sequence elements are overlapped with other fields of a structure. Each call to Self::next_element_seed consumes a next sub-tree or consequent list of Text and CData events.

<>
  ...
  <item>The is the one item</item>
  This is <![CDATA[one another]]> item<!-- even when--> it splitted by comments
  <tag>...and that is the third!</tag>
  ...
</>

Depending on Self::filter, only some of that possible constructs would be an element.

Fields§

§map: &'m mut ElementMapAccess<'de, 'd, R, E>

Accessor to a map that creates this accessor and to a deserializer for a sequence items.

§filter: TagFilter<'de>

Filter that determines whether a tag is a part of this sequence.

When feature overlapped-lists is not activated, iteration will stop when found a tag that does not pass this filter.

When feature overlapped-lists is activated, all tags, that not pass this check, will be skipped.

§checkpoint: usize

Checkpoint after which all skipped events should be returned. All events, that was skipped before creating this checkpoint, will still stay buffered and will not be returned

Trait Implementations§

Source§

impl<'de, 'd, 'm, R, E> Drop for MapValueSeqAccess<'de, 'd, 'm, R, E>
where R: XmlRead<'de>, E: EntityResolver,

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl<'de, 'd, 'm, R, E> SeqAccess<'de> for MapValueSeqAccess<'de, 'd, 'm, R, E>
where R: XmlRead<'de>, E: EntityResolver,

Source§

type Error = DeError

The error type that can be returned if some error occurs during deserialization.
Source§

fn next_element_seed<T>(&mut self, seed: T) -> Result<Option<T::Value>, DeError>
where T: DeserializeSeed<'de>,

This returns Ok(Some(value)) for the next value in the sequence, or Ok(None) if there are no more remaining items. Read more
Source§

fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
where T: Deserialize<'de>,

This returns Ok(Some(value)) for the next value in the sequence, or Ok(None) if there are no more remaining items. Read more
Source§

fn size_hint(&self) -> Option<usize>

Returns the number of elements remaining in the sequence, if known.

Auto Trait Implementations§

§

impl<'de, 'd, 'm, R, E> Freeze for MapValueSeqAccess<'de, 'd, 'm, R, E>

§

impl<'de, 'd, 'm, R, E> !RefUnwindSafe for MapValueSeqAccess<'de, 'd, 'm, R, E>

§

impl<'de, 'd, 'm, R, E> Send for MapValueSeqAccess<'de, 'd, 'm, R, E>
where R: Send, E: Send,

§

impl<'de, 'd, 'm, R, E> Sync for MapValueSeqAccess<'de, 'd, 'm, R, E>
where R: Sync, E: Sync,

§

impl<'de, 'd, 'm, R, E> Unpin for MapValueSeqAccess<'de, 'd, 'm, R, E>

§

impl<'de, 'd, 'm, R, E> !UnwindSafe for MapValueSeqAccess<'de, 'd, 'm, R, E>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.