pub trait ParseInput: Sized {
Show 14 methods
// Required methods
fn parse_chunk<'a, const N: usize>(&mut self) -> Result<&'a [u8; N]>
where Self: 'a;
fn parse_n<'a>(&mut self, n: usize) -> Result<&'a [u8]>
where Self: 'a;
fn parse_ahead<T: Parse<Self>>(&mut self, n: usize) -> Result<T>;
fn parse_compare<T: ParseInline<Self>>(
&mut self,
n: usize,
c: &[u8],
) -> Result<Option<T>>;
fn parse_all<'a>(self) -> Result<&'a [u8]>
where Self: 'a;
fn empty(self) -> Result<()>;
fn non_empty(self) -> Result<Option<Self>>;
// Provided methods
fn consume(self, f: impl FnMut(&mut Self) -> Result<()>) -> Result<()> { ... }
fn parse_collect<T: ParseInline<Self>, B: FromIterator<T>>(
self,
) -> Result<B> { ... }
fn collect<T, B: FromIterator<T>>(
self,
f: impl FnMut(&mut Self) -> Result<T>,
) -> Result<B> { ... }
fn iter<T>(
self,
f: impl FnMut(&mut Self) -> Result<T>,
) -> impl Iterator<Item = Result<T>> { ... }
fn parse_inline<T: ParseInline<Self>>(&mut self) -> Result<T> { ... }
fn parse<T: Parse<Self>>(self) -> Result<T> { ... }
fn parse_vec<T: ParseInline<Self>>(self) -> Result<Vec<T>> { ... }
}Required Methods§
fn parse_chunk<'a, const N: usize>(&mut self) -> Result<&'a [u8; N]>where
Self: 'a,
fn parse_n<'a>(&mut self, n: usize) -> Result<&'a [u8]>where
Self: 'a,
fn parse_ahead<T: Parse<Self>>(&mut self, n: usize) -> Result<T>
fn parse_compare<T: ParseInline<Self>>( &mut self, n: usize, c: &[u8], ) -> Result<Option<T>>
fn parse_all<'a>(self) -> Result<&'a [u8]>where
Self: 'a,
fn empty(self) -> Result<()>
fn non_empty(self) -> Result<Option<Self>>
Provided Methods§
fn consume(self, f: impl FnMut(&mut Self) -> Result<()>) -> Result<()>
fn parse_collect<T: ParseInline<Self>, B: FromIterator<T>>(self) -> Result<B>
fn collect<T, B: FromIterator<T>>( self, f: impl FnMut(&mut Self) -> Result<T>, ) -> Result<B>
fn iter<T>( self, f: impl FnMut(&mut Self) -> Result<T>, ) -> impl Iterator<Item = Result<T>>
fn parse_inline<T: ParseInline<Self>>(&mut self) -> Result<T>
fn parse<T: Parse<Self>>(self) -> Result<T>
fn parse_vec<T: ParseInline<Self>>(self) -> Result<Vec<T>>
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.