--:::::::::: --licncnit.ads -- -Iterators --:::::::::: with List_LPBase.Iterators; generic package List_Cntl_Cntl.Iterators is ---------------------------------------------------- -- DO NOT USE it_zqklst package it_zqklst is new zqklst.Iterators; ---------------------------------------------------- subtype Process_Type is it_zqklst.Process_Type; -- access procedure (Object : in out Object_Type; -- Continue: in out Boolean); procedure Front_To_Rear (List : in List_Type; Process: Process_Type); ---------------------------------------------------- -- Iterate through the list recursively performing -- Process on each object on the way down the structure -- until Continue is set to false, or until all objects -- are visited ---------------------------------------------------- procedure Rear_To_Front (List : in List_Type; Process: Process_Type); ---------------------------------------------------- -- Iterate through the list recursively performing -- Process on each object on the way up the structure -- until Continue is set to false, or until all objects -- are visited ---------------------------------------------------- procedure Round_Trip (List : in List_Type; Down_Proc, Up_Proc : Process_Type); ---------------------------------------------------- -- Iterate through the list recursively performing -- Down_Proc on each object on the way down the structure -- and performing Up_Proc on each object on the way back -- until Continue is set to false, or until all objects -- are visited in both directions ---------------------------------------------------- end List_Cntl_Cntl.Iterators;