From c5dc08c1e086f454ede697dcd3f170d8806ae418 Mon Sep 17 00:00:00 2001 From: nitrix Date: Mon, 25 Nov 2019 14:44:14 +0100 Subject: [PATCH] add return statement to the grammar --- src/main/antlr4/de/hsrm/compiler/Klang/Klang.g4 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/antlr4/de/hsrm/compiler/Klang/Klang.g4 b/src/main/antlr4/de/hsrm/compiler/Klang/Klang.g4 index 27d0b70..9263309 100644 --- a/src/main/antlr4/de/hsrm/compiler/Klang/Klang.g4 +++ b/src/main/antlr4/de/hsrm/compiler/Klang/Klang.g4 @@ -24,6 +24,7 @@ statement : print | if_statement | variable_assignment + | return_statement ; print @@ -38,6 +39,10 @@ variable_assignment : IDENT EQUAL expression SCOL ; +return_statement + : RETURN expression SCOL + ; + expression : atom MULT atom #multiplicationExpression | atom op=(ADD | SUB) atom #additiveExpression @@ -64,6 +69,7 @@ PRINT: 'print'; IF: 'if'; ELSE: 'else'; FUNC: 'function'; +RETURN: 'return'; SCOL: ';'; OBRK: '{';