AuROXTL/Include/auROXTL/auList.hpp

29 lines
852 B
C++
Raw Normal View History

2022-04-01 04:06:53 +00:00
/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: auList.hpp
Date: 2022-2-1
Author: Reece
***/
#pragma once
#if !defined(AURORA_RUNTIME_AU_LIST)
#define AURORA_RUNTIME_AU_LIST std::vector
#endif
#include "auMemoryModel.hpp"
#if defined(AURORA_ROXTL_CONTAINERS_USE_PURE)
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>;
2022-04-01 04:06:53 +00:00
#else
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>;
2022-04-01 04:06:53 +00:00
#endif
template <class T>
using AuListOfHeap = AuList<T, AuPMRAllocator<T>>;