2016-08-01 31 views
1

Ich habe den AST-Baum von einem einfachen C++ - Codes ausgeben. enter image description hereTraverse bestimmte Teile von AST-Baum

Ist es möglich, nur die ausgewählten Knoten zu besuchen und alles andere zu ignorieren, einschließlich der Kinder, die libTooling oder ASTMatchers verwenden?

Antwort

1
  • Angebote: Alle stmt (oder eine Unterklasse von Aussagen gut für Sie)
  • eine Bedingung hinzufügen, dass sie hasParent, wahrscheinlich ein CompundStmt basierend auf Ihrem Beispiel.
  • Wieder auf dem Beispiel basiert, möchten Sie wahrscheinlich, dass die CompundStmthasParent, erzwingen, die eine FunctionDecl
ist

die AST matchers reference für Details.