![]() |
Lumiera
0.pre.03
»edit your freedom«
|
#include "lib/simple-allocator.hpp"
Frontend for explicit allocations, using a custom allocator.
This template is to be instantiated for the collection of types later to be allocated through this custom memory manager/model. It provides convenience shortcuts for placement-construction and releasing of target objects.
Definition at line 136 of file simple-allocator.hpp.
Public Member Functions | |
template<class XX > | |
XX * | create () |
template<class XX , typename P1 > | |
XX * | create (P1 &p1) |
template<class XX , typename P1 , typename P2 > | |
XX * | create (P1 &p1, P2 &p2) |
template<class XX , typename P1 , typename P2 , typename P3 > | |
XX * | create (P1 &p1, P2 &p2, P3 &p3) |
template<class XX , typename P1 , typename P2 , typename P3 , typename P4 > | |
XX * | create (P1 &p1, P2 &p2, P3 &p3, P4 &p4) |
template<class XX , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 > | |
XX * | create (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5) |
template<class XX > | |
void | destroy (XX *entry) |
template<class XX > | |
size_t | numSlots () const |
diagnostics | |
Private Member Functions | |
template<class XX > | |
void | ___assertSupportedType () |
template<class XX > | |
XX * | allocateSlot () |
forward plain memory allocation | |
template<class XX > | |
void | releaseSlot (XX *entry) |
|
inline |
p1 | invoke 1-arg ctor |
Definition at line 203 of file simple-allocator.hpp.
|
inline |
p2 | invoke 2-arg ctor |
Definition at line 214 of file simple-allocator.hpp.
|
inline |
p3 | invoke 3-arg ctor |
Definition at line 226 of file simple-allocator.hpp.
|
inline |
p4 | invoke 4-arg ctor |
Definition at line 239 of file simple-allocator.hpp.
|
inline |
p5 | invoke 5-arg ctor |
Definition at line 253 of file simple-allocator.hpp.