symoxide/parse.rs
1use crate::Expression;
2use lalrpop_util::lalrpop_mod;
3use lazy_static::lazy_static;
4use std::rc::Rc;
5use std::string::ToString;
6
7lalrpop_mod!(py_parser, "/grammars/parse_py_flavor.rs");
8
9lazy_static! {
10 static ref PY_PARSER: py_parser::ExprParser = py_parser::ExprParser::new();
11}
12
13pub fn parse_expr<T: ToString>(input: T) -> Rc<Expression> {
14 PY_PARSER.parse(input.to_string().as_str()).unwrap()
15}
16
17// vim: fdm=marker