Struct orecc_front::token_reader::TokenReader
source · pub struct TokenReader {
pub cursor: usize,
/* private fields */
}Expand description
A simple character reader that is useful for creating lexers
Fields§
§cursor: usizeA cursor. Just a byte index, useful for spanning and then codespan_reporting
Implementations§
source§impl TokenReader
impl TokenReader
sourcepub fn new(source: Rc<str>) -> Self
pub fn new(source: Rc<str>) -> Self
Create new TokenReader. Just requires a source as Rc
sourcepub fn next_char_if(&mut self, pred: impl FnOnce(char) -> bool) -> Option<char>
pub fn next_char_if(&mut self, pred: impl FnOnce(char) -> bool) -> Option<char>
Self::next_char() but advances if predicate
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for TokenReader
impl !Send for TokenReader
impl !Sync for TokenReader
impl Unpin for TokenReader
impl UnwindSafe for TokenReader
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more