Simple semantic analysis structure

This commit is contained in:
2026-04-15 08:32:29 +02:00
parent 5de519f561
commit 6df7f672d0
4 changed files with 26 additions and 13 deletions
+2 -13
View File
@@ -1,14 +1,3 @@
pub fn add(left: u64, right: u64) -> u64 {
left + right
}
pub mod top_level;
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn it_works() {
let result = add(2, 2);
assert_eq!(result, 4);
}
}
pub struct Scope {}
+18
View File
@@ -0,0 +1,18 @@
use std::collections::HashMap;
pub struct TypeSymbol {
export: bool,
name: String,
}
pub struct FunctionSymbol {
export: bool,
name: String,
params: HashMap<String, TypeSymbol>,
}
pub struct StructSymbol {
export: bool,
name: String,
fields: HashMap<String, TypeSymbol>,
}