pub trait Parser {
// Required methods
fn feed(&mut self, bytes: &[u8]) -> Option<usize>;
fn eof_error() -> SyntaxError;
}
Expand description
Used to decouple reading of data from data source and parsing XML structure from it. This is a state preserved between getting chunks of bytes from the reader.
This trait is implemented for every parser that processes piece of XML grammar.
Required Methods§
Sourcefn feed(&mut self, bytes: &[u8]) -> Option<usize>
fn feed(&mut self, bytes: &[u8]) -> Option<usize>
Process new data and try to determine end of the parsed thing.
Returns position of the end of thing in bytes
in case of successful search
and None
otherwise.
§Parameters
bytes
: a slice to find the end of a thing. Should contain text in ASCII-compatible encoding
Sourcefn eof_error() -> SyntaxError
fn eof_error() -> SyntaxError
Returns parse error produced by this parser in case of reaching end of input without finding the end of a parsed thing.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.