aboutsummaryrefslogtreecommitdiff
path: root/src/kompsos-collector.adb
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2026-01-22 16:41:39 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2026-01-22 16:41:39 +1300
commit28d132c2823d7dfa21190bf746f9f39dd59a40d8 (patch)
treeb0d1e26b2fadffa43bca2300dc273d8991c77df4 /src/kompsos-collector.adb
parent42e3c2fa30552a227e38f03b859f03ae51f9000d (diff)
States are now custom linked lists
Diffstat (limited to 'src/kompsos-collector.adb')
-rw-r--r--src/kompsos-collector.adb16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/kompsos-collector.adb b/src/kompsos-collector.adb
index c8333cf..4654dc7 100644
--- a/src/kompsos-collector.adb
+++ b/src/kompsos-collector.adb
@@ -95,13 +95,21 @@ package body Kompsos.Collector is
-- Unify Variable and other Terms by introducing a new substitution
if Real_Left.Kind = Var_Term then
- Extended := Potential;
- Extended.Actual.Append ((Real_Left.Var, Real_Right));
+ Extended := (Ctrl => (Ada.Finalization.Controlled with
+ Actual => new State_Component'(
+ Counter => 1,
+ Key => Real_Left.Var,
+ Value => Real_Right,
+ Next => Potential)));
return True;
end if;
if Real_Right.Kind = Var_Term then
- Extended := Potential;
- Extended.Actual.Append ((Real_Right.Var, Real_Left));
+ Extended := (Ctrl => (Ada.Finalization.Controlled with
+ Actual => new State_Component'(
+ Counter => 1,
+ Key => Real_Right.Var,
+ Value => Real_Left,
+ Next => Potential)));
return True;
end if;