Выносим генерацию конструкторов для ast в отдельный модуль. И скомпилированные конструкторы тоже