early-access version 2083

This commit is contained in:
pineappleEA
2021-09-25 00:06:04 +02:00
parent e72066238e
commit 8528fa5bbb
17 changed files with 65 additions and 83 deletions

View File

@@ -11,14 +11,16 @@
namespace Shader {
template <typename T>
requires std::is_destructible_v<T> class ObjectPool {
requires std::is_destructible_v<T>
class ObjectPool {
public:
explicit ObjectPool(size_t chunk_size = 8192) : new_chunk_size{chunk_size} {
node = &chunks.emplace_back(new_chunk_size);
}
template <typename... Args>
requires std::is_constructible_v<T, Args...>[[nodiscard]] T* Create(Args&&... args) {
requires std::is_constructible_v<T, Args...>
[[nodiscard]] T* Create(Args&&... args) {
return std::construct_at(Memory(), std::forward<Args>(args)...);
}