Struct serde_yml::loader::Document

source ·
pub struct Document<'input> {
    pub events: Vec<(Event<'input>, Mark)>,
    pub error: Option<Arc<ErrorImpl>>,
    pub anchor_event_map: BTreeMap<usize, usize>,
}
Expand description

Represents a YAML document.

Fields§

§events: Vec<(Event<'input>, Mark)>

The parsed events of the document.

This field contains a vector of (Event<'input>, Mark) tuples, where:

  • Event<'input> represents a parsed YAML event, such as a scalar, sequence, or mapping. The 'input lifetime parameter indicates the lifetime of the input data associated with the event.
  • Mark represents the position in the input where the event was encountered.
§error: Option<Arc<ErrorImpl>>

Any error encountered during parsing.

This field is an optional Arc<ErrorImpl>, where:

  • Arc is a reference-counted smart pointer that allows multiple ownership of the error.
  • ErrorImpl is the underlying error type that holds the details of the parsing error.

If an error occurs during parsing, this field will contain Some(error). Otherwise, it will be None.

§anchor_event_map: BTreeMap<usize, usize>

Map from alias id to index in events.

This field is a BTreeMap that maps alias ids to their corresponding index in the events vector.

In YAML, an alias is a reference to a previously defined anchor. When an alias is encountered during parsing, its id is used to look up the index of the corresponding event in the events vector.

Trait Implementations§

source§

impl<'input> Debug for Document<'input>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'input> Freeze for Document<'input>

§

impl<'input> !RefUnwindSafe for Document<'input>

§

impl<'input> Send for Document<'input>

§

impl<'input> Sync for Document<'input>

§

impl<'input> Unpin for Document<'input>

§

impl<'input> !UnwindSafe for Document<'input>

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.