16 #ifndef BLOOMBERG_QUANTUM_ALLOCATOR_H 17 #define BLOOMBERG_QUANTUM_ALLOCATOR_H 19 #include <quantum/impl/quantum_stl_impl.h> 20 #include <quantum/quantum_allocator_traits.h> 21 #include <quantum/quantum_stack_allocator.h> 22 #include <quantum/quantum_heap_allocator.h> 23 #include <quantum/quantum_coroutine_pool_allocator.h> 24 #include <boost/context/stack_traits.hpp> 25 #include <boost/coroutine2/pooled_fixedsize_stack.hpp> 26 #include <boost/coroutine2/fixedsize_stack.hpp> 44 template <
typename Traits>
53 template <
typename AllocType>
55 template <
typename A = AllocType>
56 static AllocType&
instance(std::enable_if_t<!A::default_constructor::value, uint16_t> size) {
57 static AllocType allocator(size);
60 template <
typename A = AllocType>
61 static AllocType&
instance(std::enable_if_t<A::default_constructor::value, uint16_t> = 0) {
62 static AllocType allocator;
70 #endif //BLOOMBERG_QUANTUM_ALLOCATOR_H static AllocType & instance(std::enable_if_t<!A::default_constructor::value, uint16_t > size)
Definition: quantum_allocator.h:56
Definition: quantum_buffer_impl.h:22
static AllocType & instance(std::enable_if_t< A::default_constructor::value, uint16_t >=0)
Definition: quantum_allocator.h:61
Definition: quantum_allocator.h:36
Definition: quantum_allocator.h:45
Definition: quantum_allocator.h:54
std::true_type default_constructor
Definition: quantum_allocator.h:38
std::true_type default_constructor
Definition: quantum_allocator.h:47