## @file # An OrderedCollectionLib instance that provides a red-black tree # implementation, and allocates and releases tree nodes with # MemoryAllocationLib. # # This library instance is useful when a fast associative container is needed. # Worst case time complexity is O(log n) for Find(), Next(), Prev(), Min(), # Max(), Insert(), and Delete(), where "n" is the number of elements in the # tree. Complete ordered traversal takes O(n) time. # # The implementation is also useful as a fast priority queue. # # Copyright (C) 2014, Red Hat, Inc. # # This program and the accompanying materials are licensed and made available # under the terms and conditions of the BSD License that accompanies this # distribution. The full text of the license may be found at # http://opensource.org/licenses/bsd-license.php. # # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR # IMPLIED. # ## [Defines] INF_VERSION = 0x00010005 BASE_NAME = BaseOrderedCollectionRedBlackTreeLib MODULE_UNI_FILE = BaseOrderedCollectionRedBlackTreeLib.uni FILE_GUID = 699F73C3-0058-484C-A9E5-61189276A985 MODULE_TYPE = BASE VERSION_STRING = 1.0 LIBRARY_CLASS = OrderedCollectionLib # # VALID_ARCHITECTURES = IA32 X64 IPF EBC # [Sources] BaseOrderedCollectionRedBlackTreeLib.c [Packages] MdePkg/MdePkg.dec [LibraryClasses] DebugLib MemoryAllocationLib [FeaturePcd] gEfiMdePkgTokenSpaceGuid.PcdValidateOrderedCollection ## CONSUMES