authorgravatar for me@paperdave.netdave caruso <me@paperdave.net> 2024-02-02 22:45:03-08:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2024-02-03 07:45:03+01:00
log7bdbb637854c6c3568f62baebcf5f9c53e8dda56
tree1dcb4f1bf9fca7b5e9806e70579fb107dbdc1f73
parentf7fcc6aa17b5528e2cecce40d36fd37840f80dd1
signature Signed by PGP key B5690EEEBB952194

fix(parser): parse empty blocks (#17)


1 files changed, 12 insertions(+), 0 deletions(-)

crates/parser/parse_block.rs+12
......@@ -20,6 +20,18 @@ pub fn parse_block(p: &mut Parser) -> Result<Block> {
2020 .peek()
2121 .map_or(false, |x| x.is_start_of_statement_like_expression());
2222
23 match p.peek() {
24 Some(TokenType::ClosedBrace) => {
25 p.next();
26 p.is_top_level = was_top_level;
27 return Ok(Block {
28 statements,
29 has_implicit_return: false,
30 });
31 }
32 _ => (),
33 }
34
2335 let statement = match parse_statement(p) {
2436 Ok(statement) => statement,
2537 Err(err) => {