# This version of expr_with_spaces.tok generates an abstract-syntax tree (AST)
# from the parsed input.
Factor : @{
Int _ ast("int")
'(' _ Expr ')' _
}
Term : @{
Term '*' _ Factor ast("mul")
Term '/' _ Factor ast("div")
Factor
}
Expr : @{
Expr '+' _ Term ast("add")
Expr '-' _ Term ast("sub")
Term
}
ast => Expr ast_print($ast)