Ada Programming/Libraries/Ada.Containers.Unbounded_Priority_Queues
This language feature has been introduced in Ada 2012.
Ada.Containers.Unbounded_Priority_Queues is a unit of the Predefined Language Environment since Ada 2012.
Specification
-- Standard Ada library specification -- Copyright (c) 2004-2016 AXE Consultants -- Copyright (c) 2004, 2005, 2006 Ada-Europe -- Copyright (c) 2000 The MITRE Corporation, Inc. -- Copyright (c) 1992, 1993, 1994, 1995 Intermetrics, Inc. -- SPDX-License-Identifier: BSD-3-Clause and LicenseRef-AdaReferenceManual -- -------------------------------------------------------------------------withSystem;withAda.Containers.Synchronized_Queue_Interfaces;genericwithpackageQueue_InterfacesisnewAda.Containers.Synchronized_Queue_Interfaces (<>);typeQueue_Priorityisprivate;withfunctionGet_Priority (Element : Queue_Interfaces.Element_Type)returnQueue_Priorityis<>;withfunctionBefore (Left, Right : Queue_Priority)returnBooleanis<>; Default_Ceiling : System.Any_Priority := System.Priority'Last;packageAda.Containers.Unbounded_Priority_QueuesispragmaPreelaborate(Unbounded_Priority_Queues);packageImplementationis-- not specified by the languageendImplementation;protectedtypeQueue (Ceiling : System.Any_Priority := Default_Ceiling)withPriority => CeilingisnewQueue_Interfaces.QueuewithoverridingentryEnqueue (New_Item :inQueue_Interfaces.Element_Type);overridingentryDequeue (Element :outQueue_Interfaces.Element_Type);notoverridingprocedureDequeue_Only_High_Priority (At_Least :inQueue_Priority; Element :inoutQueue_Interfaces.Element_Type; Success :outBoolean);overridingfunctionCurrent_UsereturnCount_Type;overridingfunctionPeak_UsereturnCount_Type;private-- not specified by the languageendQueue;private-- not specified by the languageendAda.Containers.Unbounded_Priority_Queues;
See also
Wikibook
External examples
- Search for examples of
Ada.Containers.Unbounded_Priority_Queuesin: Rosetta Code, GitHub (gists), any Alire crate or this Wikibook. - Search for posts related to
Ada.Containers.Unbounded_Priority_Queuesin: Stack Overflow, comp.lang.ada or any Ada related page.
Ada Reference Manual
Ada 2012
Open-Source Implementations
FSF GNAT
- Specification: a-cuprqu.ads
- Body: a-cuprqu.adb
drake
- Specification: tasking/a-cuprqu.ads
- Body: tasking/a-cuprqu.adb