initial commit

This commit is contained in:
2026-04-05 16:08:59 +03:00
commit 75ab9bec9f
1117 changed files with 789034 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
use smol_str::SmolStr;
use super::expr::{Expr, Spanned};
#[derive(Debug, PartialEq, Clone)]
pub enum Stmt {
Assignment(SmolStr, Box<Expr>),
/// Property assignment: root variable, field path, value
/// e.g. `a.b.c = 5` → PropertyAssignment("a", ["b", "c"], 5)
PropertyAssignment(SmolStr, Vec<SmolStr>, Box<Expr>),
ExprStmt(Box<Expr>),
If(Box<Expr>, Vec<Stmt>, Option<Vec<Stmt>>),
}
/// Statement with source location
pub type SpannedStmt = Spanned<Stmt>;