diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-11-14 22:39:19 +0000 |
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-11-14 22:39:19 +0000 |
| commit | 86acd72bd2f344c5dfc4123968d08cc67e1308d5 (patch) | |
| tree | 0eb9ba57a3056ab7b77c9719b5896069005a9887 /clang/include/clang-c/Index.h | |
| parent | 45110fdf8dd0bcc187b7d310b3c643ddd2af0515 (diff) | |
| download | bcm5719-llvm-86acd72bd2f344c5dfc4123968d08cc67e1308d5.tar.gz bcm5719-llvm-86acd72bd2f344c5dfc4123968d08cc67e1308d5.zip | |
[libclang] Slight changes to the indexing API and bigger internal changes for it.
llvm-svn: 144577
Diffstat (limited to 'clang/include/clang-c/Index.h')
| -rw-r--r-- | clang/include/clang-c/Index.h | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/clang/include/clang-c/Index.h b/clang/include/clang-c/Index.h index 307929f22a0..7db85ce0385 100644 --- a/clang/include/clang-c/Index.h +++ b/clang/include/clang-c/Index.h @@ -4008,14 +4008,15 @@ typedef enum { CXIdxEntity_ObjCProtocol = 7, CXIdxEntity_ObjCCategory = 8, - CXIdxEntity_ObjCMethod = 9, - CXIdxEntity_ObjCProperty = 10, - CXIdxEntity_ObjCIvar = 11, + CXIdxEntity_ObjCInstanceMethod = 9, + CXIdxEntity_ObjCClassMethod = 10, + CXIdxEntity_ObjCProperty = 11, + CXIdxEntity_ObjCIvar = 12, - CXIdxEntity_Enum = 12, - CXIdxEntity_Struct = 13, - CXIdxEntity_Union = 14, - CXIdxEntity_CXXClass = 15 + CXIdxEntity_Enum = 13, + CXIdxEntity_Struct = 14, + CXIdxEntity_Union = 15, + CXIdxEntity_CXXClass = 16 } CXIdxEntityKind; @@ -4032,6 +4033,12 @@ typedef struct { CXIdxClientContainer container; int isRedeclaration; int isDefinition; + int isContainer; + /** + * \brief Whether the declaration exists in code or was created implicitly + * by the compiler, e.g. implicit objc methods for properties. + */ + int isImplicit; } CXIdxDeclInfo; typedef struct { @@ -4067,17 +4074,15 @@ typedef struct { } CXIdxObjCProtocolRefInfo; typedef struct { - const CXIdxDeclInfo *declInfo; - const CXIdxBaseClassInfo *superInfo; const CXIdxObjCProtocolRefInfo *const *protocols; unsigned numProtocols; -} CXIdxObjCInterfaceDeclInfo; +} CXIdxObjCProtocolRefListInfo; typedef struct { - const CXIdxDeclInfo *declInfo; - const CXIdxObjCProtocolRefInfo *const *protocols; - unsigned numProtocols; -} CXIdxObjCProtocolDeclInfo; + const CXIdxObjCContainerDeclInfo *containerInfo; + const CXIdxBaseClassInfo *superInfo; + const CXIdxObjCProtocolRefListInfo *protocols; +} CXIdxObjCInterfaceDeclInfo; /** * \brief Data for \see indexEntityReference callback. @@ -4185,8 +4190,8 @@ CINDEX_LINKAGE const CXIdxObjCCategoryDeclInfo * clang_index_getObjCCategoryDeclInfo(const CXIdxDeclInfo *); -CINDEX_LINKAGE const CXIdxObjCProtocolDeclInfo * -clang_index_getObjCProtocolDeclInfo(const CXIdxDeclInfo *); +CINDEX_LINKAGE const CXIdxObjCProtocolRefListInfo * +clang_index_getObjCProtocolRefListInfo(const CXIdxDeclInfo *); /** * \brief Index the given source file and the translation unit corresponding |

