DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T V

⟦a1c2421d1⟧ TextFile

    Length: 1933 (0x78d)
    Types: TextFile
    Names: »V«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

with Semaphore;
generic
    type Item is private;
    type Priority is limited private;
    with function Priority_Of (The_Item : in Item) return Priority;
    with function "<" (Left : in Priority; Right : in Priority) return Boolean;
    with function "<=" (Left : in Priority; Right : in Priority) return Boolean;
package Deque_Priority_Balking_Guarded_Unbounded_Unmanaged_Iterator is

    type Deque is limited private;

    type Location is (Front, Back);

    procedure Seize (The_Deque : in Deque);
    procedure Release (The_Deque : in Deque);
    procedure Copy (From_The_Deque : in Deque; To_The_Deque : in out Deque);
    procedure Clear (The_Deque : in out Deque);
    procedure Add (The_Item : in Item;
                   To_The_Deque : in out Deque;
                   At_The_Location : in Location);
    procedure Pop (The_Deque : in out Deque; At_The_Location : in Location);
    procedure Remove_Item (From_The_Deque : in out Deque;
                           At_The_Position : in Positive);

    function Is_Equal (Left : in Deque; Right : in Deque) return Boolean;
    function Length_Of (The_Deque : in Deque) return Natural;
    function Is_Empty (The_Deque : in Deque) return Boolean;
    function Front_Of (The_Deque : in Deque) return Item;
    function Back_Of (The_Deque : in Deque) return Item;
    function Position_Of
                (The_Item : in Item; In_The_Deque : in Deque) return Natural;

    generic
        with procedure Process (The_Item : in Item; Continue : out Boolean);
    procedure Iterate (Over_The_Deque : in Deque);

    Overflow : exception;
    Underflow : exception;
    Position_Error : exception;

private
    type Node;
    type Structure is access Node;
    type Deque is
        record
            Guard : Semaphore.Kind;
            The_Front : Structure;
            The_Back : Structure;
        end record;
end Deque_Priority_Balking_Guarded_Unbounded_Unmanaged_Iterator;