The ArenaAllocator
is a memory allocator which allows to allocate
memory regions of arbitrary size, but requires to deallocate all of them
at once. It reserves memory in big blocks which it then shares in
required pieces.
A deallocate-once, arbitrary size memory allocator