commit cc4cb4225f40b614f55c3978170c3f2ed9de7a7f
parent accb758e5c8831964990d55af44601825f2fe3a7
Author: citbl <citbl@citbl.org>
Date: Fri, 12 Jun 2026 21:15:13 +1000
generic map
Diffstat:
3 files changed, 33 insertions(+), 5 deletions(-)
diff --git a/src/nightshade.adb b/src/nightshade.adb
@@ -27,6 +27,12 @@ begin
begin
Parser.Parse (P);
Parser.Print_AST (P);
+
+ declare
+ S : Sem.Sem := Sem.Init(P.Top_Program);
+ begin
+ Sem.Analysis(S);
+ end;
end;
end;
end Nightshade;
diff --git a/src/sem.adb b/src/sem.adb
@@ -5,11 +5,21 @@ package body Sem is
----------
function Init (Top_Program : Top_Level_Vectors.Vector) return Sem is
- Symbols : Map;
+ Symbols : Symbols_Map.Map;
S : constant Sem := (Symbols => Symbols, Top_Program => Top_Program);
begin
return S;
end Init;
+ --------------
+ -- analysis --
+ --------------
+
+ procedure Analysis(S: Sem) is
+ begin
+ null;
+ end Analysis;
+
+
end Sem;
diff --git a/src/sem.ads b/src/sem.ads
@@ -12,23 +12,35 @@ package Sem is
end record;
----------------------------------------
- -- Dictionary of String : Symbol_Info --
+ -- dictionary of String : Symbol_Info --
----------------------------------------
- package String_Maps is new
+ package Symbols_Map is new
Ada.Containers.Indefinite_Hashed_Maps
(Key_Type => String,
Element_Type => Symbol_Info,
Hash => Ada.Strings.Hash,
Equivalent_Keys => "=");
- use String_Maps;
+ ---------
+ -- sem --
+ ---------
type Sem is record
- Symbols : Map;
+ Symbols : Symbols_Map.Map;
Top_Program : Top_Level_Vectors.Vector;
end record;
+ ----------
+ -- init --
+ ----------
+
function Init (Top_Program : Top_Level_Vectors.Vector) return Sem;
+ --------------
+ -- analysis --
+ --------------
+
+ procedure Analysis(S: Sem);
+
end Sem;