Struct bparse::Parser

source ·
pub struct Parser<'input> { /* private fields */ }
Expand description

A byte parser that recognizes Patterns

Implementations§

source§

impl<'i> Parser<'i>

source

pub fn new(input: &'i [u8]) -> Self

Returns a new instance of Parser that will operate on input

source

pub fn advance(&mut self, step: usize)

Advances the parser by step. Does nothing if the parser is at the end of the input

source

pub fn eof(&self) -> bool

Returns true if the parser reached the end of its input. Returns false otherwise

source

pub fn remaining(&self) -> &'i [u8]

Returns the part of the input that is yet to be consumed

source

pub fn try_match(&mut self, pattern: impl Pattern) -> Option<&'i [u8]>

Tests pattern against the remaining input. If the pattern matches, the matching portion is returned and the parser is advanced by the length of the matched slice.

Returns None if the pattern does not match.

Auto Trait Implementations§

§

impl<'input> RefUnwindSafe for Parser<'input>

§

impl<'input> Send for Parser<'input>

§

impl<'input> Sync for Parser<'input>

§

impl<'input> Unpin for Parser<'input>

§

impl<'input> UnwindSafe for Parser<'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>,

§

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>,

§

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.