Updated grammar

This commit is contained in:
2026-05-01 18:20:25 +02:00
parent 9353ab7ea8
commit 87d5d3117e
2 changed files with 11 additions and 6 deletions
+10 -5
View File
@@ -11,19 +11,24 @@ boolean = { "true" | "false" }
string_lit = { "\"" ~ inner_str ~ "\"" }
inner_str = @{ (!"\"" ~ ANY)* }
// ================= PREREQUISITES =================
export = { "public" }
mutable = { "mut" }
var_decl_1 = { type_expr ~ mutable? ~ identifier }
// ================= TOP LEVEL =================
top_level = _{ import | function_decl | struct_decl }
export = { "public" }
import = { "import" ~ string_lit ~ ";" }
param_list = { param ~ ("," ~ param)* ~ ","? }
param = { export? ~ type_expr ~ identifier }
field_list = { field ~ ("," ~ field)* ~ ","? }
field = { export? ~ type_expr ~ identifier }
param_list = { var_decl_1 ~ ("," ~ var_decl_1)* ~ ","? }
struct_decl = {
export? ~ "struct" ~ identifier ~ "{" ~ param_list? ~ "}"
export? ~ "struct" ~ identifier ~ "{" ~ field_list? ~ "}"
}
function_decl = {