Это очень далеко не тривиально, но выполнимо.
JavaParser основан на JavaCC , он использует следующую грамматику для генерации кода синтаксического анализатора. Затем синтаксический анализатор создает абстрактное синтаксическое дерево, используя классы модели кода.
Если вы хотите добавить новые языковые элементы, вам необходимо:
- реализовать классы модели кода;
- расширить грамматику, используемую для генерации парсера.
Это не так просто, вам потребуются хорошие знания и понимание JavaCC. Но это абсолютно выполнимо.
Остальное - арахис. Вы напишите посетителю и будете использовать его для прохождения AST. Когда вы встретите узел соответствующего типа, просто преобразуйте часть AST в «нормальную» Java и сериализуйте.
Кстати, JavaParser - очень хорошая основа для создания чего-то похожего на то, что вы хотите. Так что поздравляю с вашим выбором, на самом деле это половина сделки.