198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
|
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
|
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
|
Previous : Callback_Refs.Reference;
begin
Map.Insert (Actual_Time, Callback, Position, Inserted);
if not Inserted then
Previous := Entry_Maps.Element (Position);
if Previous.Update.Data.all in Event_List then
Append
(Event_List (Previous.Update.Data.all),
Callback);
if Previous.Query.Data.all in Event_List then
if Callback.Query.Data.all in Event_List then
for I of Event_List (Callback.Query.Data.all).List loop
Append (Event_List (Previous.Update.Data.all), I);
end loop;
else
Append
(Event_List (Previous.Update.Data.all),
Callback);
end if;
elsif Callback.Query.Data.all in Event_List then
Append (Event_List (Callback.Update.Data.all), Previous);
Map.Replace_Element (Position, Callback);
else
Map.Replace_Element
(Position,
Create_Event_List (Previous, Callback));
end if;
end if;
end;
|