pub struct Parser<'src> {
pub lexer: Lexer<'src, Token>,
/* private fields */
}Fields§
§lexer: Lexer<'src, Token>Implementations§
Source§impl<'src> Parser<'src>
impl<'src> Parser<'src>
pub fn new(src: &'src str) -> Self
pub fn next(&mut self) -> Result<(&'src str, Token), String>
pub fn peek(&mut self) -> Result<(&'src str, Token), String>
pub fn peek_any(&mut self, expected: &[Token]) -> bool
pub fn peek_fn(&mut self, f: impl FnOnce(&str, Token) -> bool) -> bool
pub fn expect(&mut self, expected: Token) -> Result<&'src str, String>
pub fn expect_any(&mut self, expected: &[Token]) -> Result<&'src str, String>
pub fn expect_str(&mut self, token: Token, s: &str) -> Result<&'src str, String>
pub fn parse_unescaped_string(&mut self) -> Result<String, String>
pub fn parse<T: Parse>(&mut self) -> Result<T, String>
pub fn parse_value(&mut self) -> Result<ValueId, String>
pub fn parse_list_kw<T: Parse>( &mut self, kw: Option<&str>, sep: &str, ) -> Result<Vec<T>, String>
pub fn parse_list<T: Parse>(&mut self, sep: &str) -> Result<Vec<T>, String>
pub fn parse_scope(&mut self) -> Result<String, String>
pub fn set_resolver( &mut self, resolver: Option<ValueResolver>, ) -> Option<ValueResolver>
pub fn resolve_value( &mut self, name: &str, ty: Option<Type>, ) -> Result<ValueId, String>
pub fn parse_or_report<T: Parse>(&mut self) -> T
pub fn report_error(&self, name: &str, msg: &str)
Auto Trait Implementations§
impl<'src> Freeze for Parser<'src>
impl<'src> RefUnwindSafe for Parser<'src>
impl<'src> Send for Parser<'src>
impl<'src> Sync for Parser<'src>
impl<'src> Unpin for Parser<'src>
impl<'src> UnwindSafe for Parser<'src>
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