Add parsing of dot operator

Signed-off-by: Marcel Müller <neikos@neikos.email>
This commit is contained in:
Marcel Müller 2026-03-15 13:39:08 +01:00
parent 145d305c94
commit a590839b21
2 changed files with 33 additions and 0 deletions

View file

@ -710,6 +710,7 @@ fn parse_expression<'input>(
Left GreaterOrEqual => 15,
Left Lesser => 15,
Left LesserOrEqual => 15,
Left Dot => 23,
]
}).postfix(dispatch! { surrounded(ws, parse_operator);
TokenOperator::QuestionMark => Postfix(22, |input, rhs| {
@ -1071,4 +1072,15 @@ mod tests {
insta::assert_debug_snapshot!(ast);
}
#[test]
fn check_access_operator() {
let input = "{{= foo?.bar }}";
let parsed = crate::lexer::parse(input.into()).unwrap();
let ast = panic_pretty(input, parse(parsed.tokens()));
insta::assert_debug_snapshot!(ast);
}
}