handball/src/grammar.lalrpop

13 lines
284 B
Plaintext

use crate::Tree;
grammar<'s>();
pub Tree: Tree = {
"(" "+" <Tree*> ")" => Tree::Add(<>),
"(" "-" <Tree+> ")" => Tree::Sub(<>),
"(" "*" <Tree*> ")" => Tree::Mul(<>),
"(" "/" <Tree+> ")" => Tree::Div(<>),
r"[0-9]+(\.[0-9]+)?" => Tree::Val(<>.parse().unwrap()),
}