我想在后序中从 C 程序中遍历 AST。到目前为止,我发现RecursiveASTVisitor可以按顺序遍历树。我想过重写 Traverse* 方法。但是,我认为这对于一个相对常见的任务来说是相当复杂的。有没有更简单的方法或我还没有找到的课程?
问问题
279 次
2 回答
1
https://clang.llvm.org/doxygen/classclang_1_1RecursiveASTVisitor.html#details
默认情况下,此访问者预购会遍历 AST。如果需要后序遍历,则需要重写 shouldTraversePostOrder 方法以返回 true。
于 2020-06-05T18:46:21.757 回答
0
制作通用代码会更复杂,而且可能效率不高。
于 2013-12-08T12:04:21.277 回答