From 605798674f82020263a317f60965d8b963082804 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcel=20M=C3=BCller?= Date: Thu, 12 Mar 2026 18:00:45 +0100 Subject: [PATCH] Make usage of the $side metavariable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcel Müller --- src/ast/mod.rs | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/ast/mod.rs b/src/ast/mod.rs index 1b25884..55190b0 100644 --- a/src/ast/mod.rs +++ b/src/ast/mod.rs @@ -655,32 +655,32 @@ fn parse_expression<'input>( input: &mut Input<'input>, ) -> Result, AstError> { macro_rules! infix { - ($parser:expr => [ $($side:ident $val:tt => $prec:expr),* $(,)? ]) => { + ($parser:expr => [ $($side:tt $val:tt => $prec:expr),* $(,)? ]) => { dispatch! { surrounded(ws, parse_operator); $( - TokenOperator::$val => Left($prec, |_, lhs, rhs| Ok(TemplateAstExpr::Operation { op: TokenOperator::$val, lhs: Box::new(lhs), rhs: Box::new(rhs) })) + TokenOperator::$val => $side($prec, |_, lhs, rhs| Ok(TemplateAstExpr::Operation { op: TokenOperator::$val, lhs: Box::new(lhs), rhs: Box::new(rhs) })) ),* } }; } trace( "expression", - expression(surrounded(ws, parse_operand)).infix( - infix! { surrounded(ws, parse_operator) => [ - left Plus => 18, - left Minus => 18, - left Times => 20, - left Divide => 20, - left And => 10, - left Or => 7, - left Equal => 12, - left NotEqual => 12, - left Greater => 15, - left GreaterOrEqual => 15, - left Lesser => 15, - left LesserOrEqual => 15, - ] }, - ), + expression(surrounded(ws, parse_operand)).infix(infix! { + surrounded(ws, parse_operator) => [ + Left Plus => 18, + Left Minus => 18, + Left Times => 20, + Left Divide => 20, + Left And => 10, + Left Or => 7, + Left Equal => 12, + Left NotEqual => 12, + Left Greater => 15, + Left GreaterOrEqual => 15, + Left Lesser => 15, + Left LesserOrEqual => 15, + ] + }), ) .parse_next(input) }