From 20f553f3f06c0f981c1f0873c1fe468b8c478dd8 Mon Sep 17 00:00:00 2001 From: Selimaj Dev Date: Fri, 1 May 2026 18:25:51 +0200 Subject: [PATCH] Updated grammar aggresively --- parser/src/grammar.pest | 27 ++------------------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/parser/src/grammar.pest b/parser/src/grammar.pest index 1019796..2149567 100644 --- a/parser/src/grammar.pest +++ b/parser/src/grammar.pest @@ -11,7 +11,6 @@ boolean = { "true" | "false" } string_lit = { "\"" ~ inner_str ~ "\"" } inner_str = @{ (!"\"" ~ ANY)* } -// ================= PREREQUISITES ================= export = { "public" } mutable = { "mut" } var_decl_1 = { type_expr ~ mutable? ~ identifier } @@ -43,11 +42,9 @@ statement_list = { statement* } statement = _{ expr_stmt - | var_decl - | var_assign + | var_decl_statement | if_stmt | while_stmt - | for_stmt | return_stmt | break_stmt | continue_stmt @@ -64,19 +61,7 @@ break_stmt = { "break" ~ ";" } continue_stmt = { "continue" ~ ";" } -// --- variable declarations --- - -// var_decl_kind = { "let" | "const" | "var" } - -var_decl = { - type_expr ~ identifier ~ ("=" ~ expr)? ~ ";" -} - -var_assign = { - expr ~ "=" ~ expr ~ ";" -} - -// --- control flow --- +var_decl_statement = { var_decl_1 ~ ";" } if_stmt = { "if" ~ "(" ~ expr ~ ")" ~ statement ~ ("else" ~ statement)? @@ -86,14 +71,6 @@ while_stmt = { "while" ~ "(" ~ expr ~ ")" ~ statement } -for_stmt = { - "for" ~ "(" ~ var_decl ~ expr ~ ";" ~ var_assign_no_semicolon ~ ")" ~ statement -} - -var_assign_no_semicolon = { - expr ~ "=" ~ expr -} - // ================= EXPRESSIONS ================= type_expr = { identifier }