From e4790b25e567aeaef20f29d1a6174413bc8ea0f0 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 7 Jun 2023 20:09:18 +0100 Subject: Parse body of functions --- src/main/java/org/shedlang/compiler/parser/Parser.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/main/java') diff --git a/src/main/java/org/shedlang/compiler/parser/Parser.java b/src/main/java/org/shedlang/compiler/parser/Parser.java index 1972163a..384cd694 100644 --- a/src/main/java/org/shedlang/compiler/parser/Parser.java +++ b/src/main/java/org/shedlang/compiler/parser/Parser.java @@ -102,7 +102,11 @@ public class Parser { var returnType = parseTopLevelTypeLevelExpression(tokens); tokens.skip(TokenType.SYMBOL_BRACE_OPEN); - var body = List.of(); + var body = parseMany( + () -> tokens.isNext(TokenType.SYMBOL_BRACE_CLOSE), + () -> parseFunctionStatement(tokens), + () -> true + ); tokens.skip(TokenType.SYMBOL_BRACE_CLOSE); var end = tokens.position(); -- cgit v1.2.3