Wie kann ich Kommentare extrahieren und mit RecursiveASTVisitor in libclang c ++ zur Deklaration passen?

Ich schreibe ein Dienstprogramm, das C ++ - (und C-) Header-Dateien analysieren, die Strukturen, Aufzählungen, Felder usw. extrahieren und auf der Grundlage der extrahierten Informationen Code in anderen Sprachen generieren soll. Ich habe mich dafür entschieden, libclang zu verwenden.

Ich benutze eineRecursiveASTVisitor und es scheint, dass ich alle Informationen extrahieren kann, die ich brauche, mit Ausnahme von Kommentaren.

Ich möchte, dass der Kommentar, der direkt über jeder Deklaration (Feld, Struktur, Klasse, Aufzählung) erscheint, gelesen und dessen Text hinzugefügt wird, wenn ich den Code in anderen Sprachen erstelle.

Das Problem ist, dass alle Proben, die ich gesehen habe, Kommentare verwendenCxCursor und die C-Schnittstelle für clang, und ich habe keine Ahnung, wie man das bekommtCxCursor in meinem Kontext.

Also - wie kann ich Kommentare extrahieren, während ich sie noch benutze?RecursiveASTVisitor?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage