aboutsummaryrefslogtreecommitdiffstats
path: root/memory.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'memory.hpp')
-rw-r--r--memory.hpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/memory.hpp b/memory.hpp
index 8955262..0467bf6 100644
--- a/memory.hpp
+++ b/memory.hpp
@@ -1,6 +1,37 @@
#ifndef MEMORY_HPP
#define MEMORY_HPP
+#include <cstddef>
+#include <type_traits>
+
+template<typename T>
+struct kallocator
+{
+ using value_type = T;
+ using size_type = std::size_t;
+ using difference_type = std::ptrdiff_t;
+ using propagate_on_container_move_assignment = std::true_type;
+ using is_always_equal = std::true_type;
+
+ template<class U>
+ struct rebind {
+ typedef kallocator<U> other;
+ };
+
+ kallocator() = default;
+
+ template<typename U>
+ kallocator(const kallocator<U>&) noexcept {}
+
+ T* allocate(std::size_t n) {
+ return new T[n];
+ }
+
+ void deallocate([[maybe_unused]] T* p, [[maybe_unused]] std::size_t n) {
+
+ }
+};
+
void memory_initialize();
#endif // MEMORY_HPP