summaryrefslogtreecommitdiffstats
path: root/clang/include/clang-c/Index.h
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-14 22:39:19 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-11-14 22:39:19 +0000
commit86acd72bd2f344c5dfc4123968d08cc67e1308d5 (patch)
tree0eb9ba57a3056ab7b77c9719b5896069005a9887 /clang/include/clang-c/Index.h
parent45110fdf8dd0bcc187b7d310b3c643ddd2af0515 (diff)
downloadbcm5719-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.h37
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
OpenPOWER on IntegriCloud