pub struct Reader<'a> { /* private fields */ }Expand description
Reads a sequence of generic XML events from an in-memory UTF-8 string.
This is a thin wrapper around quick_xml::Reader, scoped to xml-core’s
own error type so that callers never need to depend on quick_xml
directly.
§Whitespace handling
Unlike some XML tooling, this reader does not trim whitespace from
text nodes automatically. Whether leading/trailing whitespace inside an
element is significant depends on the vocabulary being parsed (for
example, xml:space="preserve" in WordprocessingML) — a decision that
belongs to the higher-level crates, not to this generic layer.
§Scope
This first version only supports reading from an in-memory &str. Real
OOXML parts are read fully into memory from their ZIP entry before
parsing anyway, so this covers the toolkit’s actual needs; streaming
from an arbitrary std::io::Read source can be added later if needed.
Implementations§
Source§impl<'a> Reader<'a>
impl<'a> Reader<'a>
Sourcepub fn from_xml_str(xml: &'a str) -> Self
pub fn from_xml_str(xml: &'a str) -> Self
Creates a new reader over the given XML string.
Sourcepub fn read_event(&mut self) -> Result<Event<'a>>
pub fn read_event(&mut self) -> Result<Event<'a>>
Reads the next XML event.
Returns Ok(Event::Eof) once the end of the input has been reached.