[+] AuHashMapOfHeap

[+] AuListOfHeap
[+] AuBSTOfHeap
This commit is contained in:
Reece Wilson 2024-04-20 23:38:11 +01:00
parent 8e3a0efa68
commit 0d01c3050d
4 changed files with 13 additions and 1 deletions

View File

@ -16,6 +16,9 @@
template <class T, typename Z, typename LessThan_t = AuHash::less<T>, class Allocator_t = Aurora::Memory::ClassArrayAllocator<AuPair<const T, Z>>> template <class T, typename Z, typename LessThan_t = AuHash::less<T>, class Allocator_t = Aurora::Memory::ClassArrayAllocator<AuPair<const T, Z>>>
using AuBST = AURORA_RUNTIME_AU_BST<T, Z, LessThan_t, Allocator_t>; using AuBST = AURORA_RUNTIME_AU_BST<T, Z, LessThan_t, Allocator_t>;
template <class T, typename Z, typename LessThan_t = AuHash::less<T>>
using AuBSTOfHeap = AuBST<T, Z, LessThan_t, Aurora::Memory::CppHeapWrapper<AuPair<const T, Z>>>;
template<typename T> template<typename T>
struct AuIsBST : AuFalseType struct AuIsBST : AuFalseType
{ }; { };

View File

@ -16,6 +16,9 @@
template <class T, class Z, class Hash_t = AuHash::hash<T>, class Equal_t = AuHash::equal<T>, class Allocator_t = Aurora::Memory::ClassArrayAllocator<AuPair<const T, Z>>> template <class T, class Z, class Hash_t = AuHash::hash<T>, class Equal_t = AuHash::equal<T>, class Allocator_t = Aurora::Memory::ClassArrayAllocator<AuPair<const T, Z>>>
using AuHashMap = AURORA_RUNTIME_AU_HASH_MAP<T, Z, Hash_t, Equal_t, Allocator_t>; using AuHashMap = AURORA_RUNTIME_AU_HASH_MAP<T, Z, Hash_t, Equal_t, Allocator_t>;
template <class T, class Z, class Hash_t = AuHash::hash<T>, class Equal_t = AuHash::equal<T>>
using AuHashMapOfHeap = AuHashMap<T, Z, Hash_t, Equal_t, Aurora::Memory::CppHeapWrapper<AuPair<const T, Z>>>;
template<typename T> template<typename T>
struct AuIsHashMap : AuFalseType struct AuIsHashMap : AuFalseType
{ }; { };

View File

@ -23,4 +23,7 @@
template <class T, class Allocator_t = AuConditional_t<AuIsClass_v<T>, Aurora::Memory::ClassArrayAllocator<T>, Aurora::Memory::PrimitiveArrayAllocator<T>>> template <class T, class Allocator_t = AuConditional_t<AuIsClass_v<T>, Aurora::Memory::ClassArrayAllocator<T>, Aurora::Memory::PrimitiveArrayAllocator<T>>>
using AuList = AURORA_RUNTIME_AU_LIST<T, Allocator_t>; using AuList = AURORA_RUNTIME_AU_LIST<T, Allocator_t>;
#endif #endif
template <class T>
using AuListOfHeap = AuList<T, Aurora::Memory::CppHeapWrapper<T>>;

View File

@ -247,6 +247,9 @@ static void auline AuSafeDelete(T *in)
namespace Aurora::Memory namespace Aurora::Memory
{ {
template <class T>
struct CppHeapWrapper;
#if defined(AURORA_ROXTL_ALLOCATORS_USE_STD) #if defined(AURORA_ROXTL_ALLOCATORS_USE_STD)
template<typename T> template<typename T>