我正在编写一款Mac OS X桌面应用程序,希望能够解析Objective-C的片段,例如变量和方法声明,以及完整的Objective-C头文件和源文件。
看起来我应该使用Clang来完成这个任务,但我需要一些指针和示例,了解如何将其集成为我的项目库,并如何调用它来解析字符串和文件。
有谁能提供任何帮助吗?
我正在编写一款Mac OS X桌面应用程序,希望能够解析Objective-C的片段,例如变量和方法声明,以及完整的Objective-C头文件和源文件。
看起来我应该使用Clang来完成这个任务,但我需要一些指针和示例,了解如何将其集成为我的项目库,并如何调用它来解析字符串和文件。
有谁能提供任何帮助吗?
libclang
,该代码可在http://llvm.org/svn/llvm-project/cfe/trunk/tools/libclang/上进行查看(但是您需要检出整个Clang repo才能构建它)。不幸的是,几乎没有相关文档。有一个演示文稿在http://llvm.org/devmtg/2010-11/Gregor-libclang.pdf上,它可能有助于启动工作,但大部分情况下,只需通过对代码的查找来解决问题。
实际上,Clang比libclang
提供的更加模块化(您可以仅导入所需组件)。如果您想尝试一下,可以在http://llvm.org/svn/llvm-project/cfe/trunk/examples/上找到示例。