2016-11-29 4 views
1

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

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

ответ

1

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

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

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

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

Отказ от ответственности: Я являюсь спонсором JavaParser

+0

Благодарим за отзыв. Я использую java-symbol-solver-model-0.4.0, но я не могу найти parseStatement() api. Есть ли другая версия, которую я должен использовать? – media

+0

Думаю, я нашел проблему. Вы имели в виду 'JavaParser.parseStatement()' не 'JavaParserFacade.parseStatement()'. – media

+0

да, извините! Я исправил его –