------------------------------------------------------------------------------ -- -- -- GNAT LIBRARY COMPONENTS -- -- -- -- ADA.CONTAINERS.RED_BLACK_TREES.GENERIC_OPERATIONS -- -- -- -- S p e c -- -- -- -- This specification is adapted from the Ada Reference Manual for use with -- -- GNAT. In accordance with the copyright of that document, you can freely -- -- copy and modify this specification, provided that if you redistribute a -- -- modified version, any changes that you have made are clearly indicated. -- -- -- ------------------------------------------------------------------------------ generic with package Tree_Types is new Generic_Tree_Types (<>); use Tree_Types; Null_Node : Node_Access; with function Parent (Node : Node_Access) return Node_Access is <>; with procedure Set_Parent (Node : Node_Access; Parent : Node_Access) is <>; with function Left (Node : Node_Access) return Node_Access is <>; with procedure Set_Left (Node : Node_Access; Left : Node_Access) is <>; with function Right (Node : Node_Access) return Node_Access is <>; with procedure Set_Right (Node : Node_Access; Right : Node_Access) is <>; with function Color (Node : Node_Access) return Color_Type is <>; with procedure Set_Color (Node : Node_Access; Color : Color_Type) is <>; package Ada.Containers.Red_Black_Trees.Generic_Operations is pragma Pure; function Min (Node : Node_Access) return Node_Access; function Max (Node : Node_Access) return Node_Access; procedure Check_Invariant (Tree : Tree_Type); function Next (Node : Node_Access) return Node_Access; function Previous (Node : Node_Access) return Node_Access; procedure Move (Target, Source : in out Tree_Type); generic with function Is_Equal (L, R : Node_Access) return Boolean; function Generic_Equal (Left, Right : Tree_Type) return Boolean; procedure Delete_Node_Sans_Free (Tree : in out Tree_Type; Node : Node_Access); generic with procedure Process (Node : Node_Access) is <>; procedure Generic_Iteration (Tree : Tree_Type); generic with procedure Process (Node : Node_Access) is <>; procedure Generic_Reverse_Iteration (Tree : Tree_Type); generic with function New_Node return Node_Access is <>; procedure Generic_Read (Tree : in out Tree_Type; N : Count_Type); procedure Rebalance_For_Insert (Tree : in out Tree_Type; Node : Node_Access); end Ada.Containers.Red_Black_Trees.Generic_Operations;