9 #pragma warning(disable : 4365 4987)
24template<
class TPo
inter,
class TTarget,
class TBase = TTarget>
38 template<
typename ... Args>
41 auto deleter = [alloc](TBase* ptr)
mutable {
42 alloc.deleteObject(
static_cast<TTarget*
>(ptr));
44 return {alloc.newObject(std::forward<Args>(args)...), deleter};
54template<
class TTarget,
class TBase = TTarget>
57template<
class TTarget,
class TBase = TTarget>
MemoryResource is an abstract class that allows the implementation of polymorphic allocators.
Definition: MemoryResource.h:17
Definition: PolyAllocator.h:129
Definition: ManagedInstance.h:25
ManagedInstance(MemoryResource *memRes)
Definition: ManagedInstance.h:30
MemoryResource * pMemRes
Definition: ManagedInstance.h:48
static ManagedInstance with(MemoryResource *memRes)
Definition: ManagedInstance.h:34
PointerType create(Args &&... args)
Definition: ManagedInstance.h:39
TPointer PointerType
Definition: ManagedInstance.h:27
Definition: BinaryStreamReader.h:121