1
2
3
4
5
6
7
8
9
use lalrpop_util::{lalrpop_mod, ParseError, lexer::Token};

pub mod ast;
lalrpop_mod!(grammar);

/// Parses some xlang source.
pub fn parse_expr(input: &str) -> Result<ast::Expr<'_>, ParseError<usize, Token<'_>, &'static str>> {
    grammar::ExprParser::new().parse(input)
}