Я пишу утилиту, которая должна анализировать файлы заголовков С++ (и C), извлекать структуры, перечисления, поля и т.д. и генерировать код на других языках на основе извлеченной информации. Я решил использовать libclang для этого.
Я использую RecursiveASTVisitor
, и мне кажется, что я могу извлечь всю необходимую информацию, кроме комментариев.
Я хочу иметь комментарий, который появляется прямо над каждым объявлением (полем, строкой, классом, перечислением), и добавлять его текст при генерации кода на других языках.
Проблема в том, что все образцы, которые я видел, которые используют комментарии, используют CxCursor
и интерфейс C для clang, и я понятия не имею, как получить CxCursor
в моем контексте.
Итак - как я могу извлекать комментарии при использовании RecursiveASTVisitor
?