Как создать новый объект в качестве узла AST, используя JavaParser?

Я хотел бы добавить следующее утверждение в мой AST, используя JavaParser. Я уже прочитал руководство и знаю, как делать простые примеры. Однако я не смог найти ничего, связанного с созданием новых объектов. Мне интересно, может ли кто-нибудь помочь мне с этим.

PrintWriter out = new PrintWriter(new FileWriter("path", true));

1 ответ

Решение

Мой совет при попытке сделать что-то вроде этого прост: поместите этот код в строку, проанализируйте его с помощью JavaParser, и вы получите часть AST, которую вы хотите.

В прошлом вы добавляли этот код в класс и анализировали весь файл, а сегодня вы можете просто использовать:

Statement pieceOfAST = JavaParser.parseStatement("<the code of my statement>");

Теперь, если вы хотите, вы можете проверить структуру этого кода и воссоздать программно, или вы просто возьмете часть AST, полученную при разборе, и добавите ее туда, где вам нужно. Вы также можете использовать клон, чтобы получить больше копий и использовать его более одного раза.

Отказ от ответственности: я участник JavaParser

Другие вопросы по тегам