我正在尝试创建一个重构工具,它允许我从 Objective-c 类中获取语法树,以便我可以更改类的结构并输出符合我的标准的不同版本。我正在查看 Clang 的 Libtooling 以生成 AST,然后从那里获取它,我遇到的问题是我需要以某种方式确保我提供了从该源导入的所有可能的标头的所有路径,这就是我想避免。
我想知道是否有一种方法可以为一个类生成 AST,而不必例如为包含我想要重构的类所持有的属性的类定义的框架提供路径。
理想情况下,我将能够在包含属性、函数等内容的源文件的原始文本中获取节点......这样我就可以遍历该树并更改其结构,以便稍后在所需的位置重新生成我的源方法。