pub enum ElementParser {
Outside,
SingleQ,
DoubleQ,
}
Expand description
A parser that search a >
symbol in the slice outside of quoted regions.
The parser considers two quoted regions: a double-quoted ("..."
) and
a single-quoted ('...'
) region. Matches found inside those regions are not
considered as results. Each region starts and ends by its quote symbol,
which cannot be escaped (but can be encoded as XML character entity or named
entity. Anyway, that encoding does not contain literal quotes).
To use a parser create an instance of parser and feed
data into it.
After successful search the parser will return Some
with position of
found symbol. If search is unsuccessful, a None
will be returned. You
typically would expect positive result of search, so that you should feed
new data until you get it.
NOTE: after successful match the parser does not returned to the initial state and should not be used anymore. Create a new parser if you want to perform new search.
§Example
use quick_xml::parser::{ElementParser, Parser};
let mut parser = ElementParser::default();
// Parse `<my-element with = 'some > inside'>and the text follow...`
// splitted into three chunks
assert_eq!(parser.feed(b"<my-element"), None);
// ...get new chunk of data
assert_eq!(parser.feed(b" with = 'some >"), None);
// ...get another chunk of data
assert_eq!(parser.feed(b" inside'>and the text follow..."), Some(8));
// ^ ^
// 0 8
Variants§
Outside
The initial state (inside element, but outside of attribute value).
SingleQ
Inside a single-quoted region ('...'
).
DoubleQ
Inside a double-quoted region ("..."
).
Trait Implementations§
Source§impl Clone for ElementParser
impl Clone for ElementParser
Source§fn clone(&self) -> ElementParser
fn clone(&self) -> ElementParser
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more