我正在使用 libclang 来解析一个目标 c 源代码文件。以下代码查找所有 Objective-C 实例方法声明,但它也查找包含中的声明:
enum CXCursorKind curKind = clang_getCursorKind(cursor);
CXString curKindName = clang_getCursorKindSpelling(curKind);
const char *funcDecl="ObjCInstanceMethodDecl";
if(strcmp(clang_getCString(curKindName),funcDecl)==0{
}
如何跳过来自标题包含的所有内容?我只对源文件中我自己的 Objective-C 实例方法声明感兴趣,而不对任何包含感兴趣。
例如,不应包括以下内容
...
Location: /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:15:9:315
Type:
TypeKind: Invalid
CursorKind: ObjCInstanceMethodDecl
...