40 lines
1.8 KiB
Ada
40 lines
1.8 KiB
Ada
|
------------------------------------------------------------------------------
|
||
|
-- --
|
||
|
-- GNAT LIBRARY COMPONENTS --
|
||
|
-- --
|
||
|
-- A D A . I T E R A T O R . I N T E R F A C E S --
|
||
|
-- --
|
||
|
-- S p e c --
|
||
|
-- --
|
||
|
-- This specification is derived 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
|
||
|
type Cursor;
|
||
|
with function Has_Element (Position : Cursor) return Boolean;
|
||
|
pragma Unreferenced (Has_Element);
|
||
|
|
||
|
package Ada.Iterator_Interfaces is
|
||
|
pragma Pure;
|
||
|
|
||
|
type Forward_Iterator is limited interface;
|
||
|
|
||
|
function First
|
||
|
(Object : Forward_Iterator) return Cursor is abstract;
|
||
|
function Next
|
||
|
(Object : Forward_Iterator;
|
||
|
Position : Cursor) return Cursor is abstract;
|
||
|
|
||
|
type Reversible_Iterator is limited interface and Forward_Iterator;
|
||
|
|
||
|
function Last
|
||
|
(Object : Reversible_Iterator) return Cursor is abstract;
|
||
|
function Previous
|
||
|
(Object : Reversible_Iterator;
|
||
|
Position : Cursor) return Cursor is abstract;
|
||
|
end Ada.Iterator_Interfaces;
|