【发布时间】:2012-12-21 06:57:20
【问题描述】:
我已经能够使用 CDT 的 AST API 成功解析源代码。我的问题正好相反:如何以编程方式构建 C AST,然后告诉它自己写入文件?我已经看过 ASTWriter 类(但那是内部的)并且找不到任何关于构建实际 AST 的教程或文档。
我找到了一篇论文,其中包含了我想要做什么的想法:Generating Rewritable Abstract Syntax Trees 如果我可以构建树并说“自己编写”,那么生成代码似乎会很容易。这在 CDT 中是否可行?我该如何开始(最好没有弃用/内部方法?)
【问题讨论】:
-
您是对基于 CDT 的解决方案更感兴趣,还是对任何可以让您为 C 构建/转换任意 AST,然后漂亮打印结果的解决方案更感兴趣?
-
由于重点改变产生这个问题的项目,这不再是主要需求。如果我们重新审视它,我更喜欢基于 CDT 的解决方案(如 Eugene 提到的重构解决方案),因为该项目是一个基于 Eclipse 的插件。
标签: java eclipse eclipse-cdt abstract-syntax-tree