/** @page Memory Memory: работа с памятью
Parser при работе с памятью целиком полагается на сборку мусора. См. http://www.hpl.hp.com/personal/Hans_Boehm/gc
Работа с памятью происходит так: все выделения происходят через pa_malloc pa_malloc_atomic, pa_realloc, pa_free,
А для C++ перегружены соответствующие new. Для выделения памяти в C++ стиле не для объектов необходимо указать, будет ли выделяемый блок хранить указатели,
или нет: new(UseGC) означает "будет". new(PointerFreeGC) означает "не будет".
Для удобства выделения памяти для объектов имеется прародитель PA_Object,
реализующий свой new через pa_malloc, и предоставляющий обёртки для malloc/malloc_atomic/realloc/free.
Рекомендуется, где возможно, выделять память в стиле C++ [через new], исключение допустимо для случая,
когда необходимо использовать realloc: на многих платформах new меняет указатель, выделенный распределителем,
т.о. недопустимы new+realloc / realloc+delete.
*/
E-mail: