blob: fdfa4841909431ec01f8f302a967d1b4b82d435a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
generic
type Item is private;
package Queue is
INIT_CAPACITY: constant Integer := 256;
type Items_Array is array (Natural range <>) of Item;
type Items_Array_Access is access Items_Array;
type Queue is record
Items: Items_Array_Access := null;
Start: Integer := 0;
Count: Integer := 0;
end record;
procedure Grow(Q: in out Queue);
procedure Enqueue(Q: in out Queue; X: Item);
function Dequeue(Q: in out Queue; X: out Item) return Boolean;
end Queue;
|