Как красиво распечатать исходный код при использовании AST, созданного из CST
Я знаю, что довольно просто распечатать код с помощью CST, поскольку информация о грамматике хранится в узле.
Однако при преобразовании в AST большая часть исходной структуры исходного кода теряется из-за десугаринга и других преобразований. Таким образом, как можно красиво печатать исходный код AST, учитывая, что он претерпел эти серьезные переводы? Содержит ли он ссылки на AST, который использовался для его создания (и, следовательно, грамматику / структуру, необходимые для точного воспроизведения исходного кода)?