| Hosted by
  | 
 
 
 with Limited_Lists;
 
 generic
 
 
 type Content_Type is private;
 
 
 
 
 
 
 
 
 
 package Lists is
 
 package Inner_Lists is new Limited_Lists(Content_Type);
 
 
 
 subtype List is Inner_Lists.List;
 subtype List_Access is Inner_Lists.List_Access;
 
 
 
 subtype Item is Inner_Lists.Item;
 subtype Item_Access is Inner_Lists.Item_Access;
 
 
 
 
 
 
 function Create
 return List_Access
 renames Inner_Lists.Create;
 
 
 procedure Push
 (This    : access List;
 Content : in Content_Type);
 
 
 procedure Unshift
 (This    : access List;
 Content : in Content_Type);
 
 
 
 
 
 
 procedure Append
 (This : access List;
 Tail : access List)
 renames Inner_Lists.Append;
 
 
 
 
 
 
 
 function Count
 (This : access List)
 return Natural
 renames Inner_Lists.Count;
 
 
 
 function Empty
 (This : access List)
 return Boolean
 renames Inner_Lists.Empty;
 
 
 
 
 
 function Index
 (This : access List)
 return Natural
 renames Inner_Lists.Index;
 
 
 
 
 
 
 function First
 (This : access List)
 return Content_Type
 renames Inner_Lists.First;
 
 
 function Last
 (This : access List)
 return Content_Type
 renames Inner_Lists.Last;
 
 
 
 
 
 
 
 
 procedure Reset
 (This : access List)
 renames Inner_Lists.Reset;
 
 
 procedure Next
 (This : access List)
 renames Inner_Lists.Next;
 
 
 
 function Next
 (This : access List)
 return Boolean
 renames Inner_Lists.Next;
 
 
 
 function Next_Available
 (This : access List)
 return Boolean
 renames Inner_Lists.Next_Available;
 
 
 function Next_Content
 (This : access List)
 return Content_Type
 renames Inner_Lists.Next_Content;
 
 
 
 
 function End_Of_List
 (This : access List)
 return Boolean
 renames Inner_Lists.End_Of_List;
 
 
 function Current
 (This : access List)
 return Content_Type
 renames Inner_Lists.Current;
 
 
 
 
 
 
 procedure Update_Current
 (This    : access List;
 Content : in Content_Type);
 
 
 procedure Remove_Current
 (This : access List)
 renames Inner_Lists.Remove_Current;
 
 
 
 procedure Insert_Before_Current
 (This    : access List;
 Content : in Content_Type);
 
 
 
 procedure Insert_After_Current
 (This    : access List;
 Content : in Content_Type);
 
 
 
 
 
 
 function First_Item
 (This : access List)
 return Item_Access
 renames Inner_Lists.First_Item;
 
 
 function Last_Item
 (This : access List)
 return Item_Access
 renames Inner_Lists.Last_Item;
 
 
 function Current_Item
 (This : access List)
 return Item_Access
 renames Inner_Lists.Current_Item;
 
 
 procedure Next_Item
 (This : in out Item_Access)
 renames Inner_Lists.Next_Item;
 
 
 function Next_Item
 (This : access Item)
 return Item_Access
 renames Inner_Lists.Next_Item;
 
 
 
 function Item_Invalid
 (This : in Item_Access)
 return Boolean
 renames Inner_Lists.Item_Invalid;
 
 
 function Item_Equals
 (This  : in Item_Access;
 Other : in Item_Access)
 return Boolean
 renames Inner_Lists.Item_Equals;
 
 
 function Item_Content
 (This : access Item)
 return Content_Type
 renames Inner_Lists.Item_Content;
 
 
 procedure Update_Item
 (This    : access Item;
 Content : in Content_Type);
 
 
 procedure Remove_Item
 (Previous : in Item_Access;
 This     : in out Item_Access;
 Context  : access List)
 renames Inner_Lists.Remove_Item;
 
 end Lists;
 
 |