aboutsummaryrefslogtreecommitdiffstats
path: root/src/memory.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/memory.hpp')
-rw-r--r--src/memory.hpp38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/memory.hpp b/src/memory.hpp
new file mode 100644
index 0000000..0467bf6
--- /dev/null
+++ b/src/memory.hpp
@@ -0,0 +1,38 @@
+#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
+