Skip to content

Commit ef9306d

Browse files
committed
Yeast: Allow rules that return an empty sequence
1 parent 56822f8 commit ef9306d

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

shared/yeast-macros/src/parse.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -475,6 +475,11 @@ fn parse_direct_list(tokens: &mut Tokens, ctx: &Ident) -> Result<Vec<TokenStream
475475
let group = expect_group(tokens, Delimiter::Parenthesis)?;
476476
let mut inner = group.stream().into_iter().peekable();
477477

478+
// Empty `()` represents an empty sequence — emit nothing.
479+
if inner.peek().is_none() {
480+
continue;
481+
}
482+
478483
// Regular node
479484
let node = parse_direct_node_inner(&mut inner, ctx)?;
480485
items.push(quote! { __nodes.push(#node); });

0 commit comments

Comments
 (0)