Ada 编程/库/Ada.Containers.Unbounded_Priority_Queues
外观
此语言特性是在 Ada 2012 中引入的。
Ada.Containers.Unbounded_Priority_Queues 是 预定义语言环境 自 Ada 2012 以来的一部分。
-- 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 -- -------------------------------------------------------------------------with
System;with
Ada.Containers.Synchronized_Queue_Interfaces;generic
with
package
Queue_Interfacesis
new
Ada.Containers.Synchronized_Queue_Interfaces (<>);type
Queue_Priorityis
private
;with
function
Get_Priority (Element : Queue_Interfaces.Element_Type)return
Queue_Priorityis
<>;with
function
Before (Left, Right : Queue_Priority)return
Booleanis
<>; Default_Ceiling : System.Any_Priority := System.Priority'Last;package
Ada.Containers.Unbounded_Priority_Queuesis
pragma
Preelaborate(Unbounded_Priority_Queues);package
Implementationis
-- not specified by the languageend
Implementation;protected
type
Queue (Ceiling : System.Any_Priority := Default_Ceiling)with
Priority => Ceilingis
new
Queue_Interfaces.Queuewith
overriding
entry
Enqueue (New_Item :in
Queue_Interfaces.Element_Type);overriding
entry
Dequeue (Element :out
Queue_Interfaces.Element_Type);not
overriding
procedure
Dequeue_Only_High_Priority (At_Least :in
Queue_Priority; Element :in
out
Queue_Interfaces.Element_Type; Success :out
Boolean);overriding
function
Current_Usereturn
Count_Type;overriding
function
Peak_Usereturn
Count_Type;private
-- not specified by the languageend
Queue;private
-- not specified by the languageend
Ada.Containers.Unbounded_Priority_Queues;
外部示例
[编辑源代码]- 在以下网站中搜索 示例
Ada.Containers.Unbounded_Priority_Queues
:Rosetta Code,GitHub (gists),任何 Alire 包 或 本维基教科书。 - 在以下网站中搜索与
Ada.Containers.Unbounded_Priority_Queues
相关的 帖子:Stack Overflow,comp.lang.ada 或 任何与 Ada 相关的页面。
FSF GNAT
- 规范:a-cuprqu.ads
- 主体:a-cuprqu.adb
drake