Skip to content

Commit 1b6a38f

Browse files
committed
[index] Add a symbol kind for init accessor
This is a new kind of accessor that is being introduced to the Swift language. (cherry picked from commit 461ddfd)
1 parent 459a52e commit 1b6a38f

File tree

4 files changed

+8
-1
lines changed

4 files changed

+8
-1
lines changed

clang/include/clang/Index/IndexSymbol.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ enum class SymbolSubKind : uint8_t {
102102
SwiftSubscript,
103103
SwiftAssociatedType,
104104
SwiftGenericTypeParam,
105+
SwiftAccessorInit,
105106
};
106107

107108
typedef uint32_t SymbolPropertySet;

clang/include/indexstore/indexstore.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
* INDEXSTORE_VERSION_MAJOR is intended for "major" source/ABI breaking changes.
2626
*/
2727
#define INDEXSTORE_VERSION_MAJOR 0
28-
#define INDEXSTORE_VERSION_MINOR 14 /* added C++ concept */
28+
#define INDEXSTORE_VERSION_MINOR 15 /* added Swift init accessor sub-symbol */
2929

3030
#define INDEXSTORE_VERSION_ENCODE(major, minor) ( \
3131
((major) * 10000) \
@@ -313,6 +313,7 @@ typedef enum {
313313
INDEXSTORE_SYMBOL_SUBKIND_SWIFTGENERICTYPEPARAM = 1013,
314314
INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORREAD = 1014,
315315
INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORMODIFY = 1015,
316+
INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORINIT = 1016,
316317
} indexstore_symbol_subkind_t;
317318

318319
INDEXSTORE_OPTIONS(uint64_t, indexstore_symbol_property_t) {

clang/lib/Index/IndexDataStoreUtils.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,8 @@ SymbolSubKind index::getSymbolSubKind(indexstore_symbol_subkind_t K) {
169169
return SymbolSubKind::SwiftAccessorRead;
170170
case INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORMODIFY:
171171
return SymbolSubKind::SwiftAccessorModify;
172+
case INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORINIT:
173+
return SymbolSubKind::SwiftAccessorInit;
172174
case INDEXSTORE_SYMBOL_SUBKIND_SWIFTEXTENSIONOFSTRUCT:
173175
return SymbolSubKind::SwiftExtensionOfStruct;
174176
case INDEXSTORE_SYMBOL_SUBKIND_SWIFTEXTENSIONOFCLASS:
@@ -397,6 +399,8 @@ indexstore_symbol_subkind_t index::getIndexStoreSubKind(SymbolSubKind K) {
397399
return INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORREAD;
398400
case SymbolSubKind::SwiftAccessorModify:
399401
return INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORMODIFY;
402+
case SymbolSubKind::SwiftAccessorInit:
403+
return INDEXSTORE_SYMBOL_SUBKIND_SWIFTACCESSORINIT;
400404
case SymbolSubKind::SwiftExtensionOfStruct:
401405
return INDEXSTORE_SYMBOL_SUBKIND_SWIFTEXTENSIONOFSTRUCT;
402406
case SymbolSubKind::SwiftExtensionOfClass:

clang/lib/Index/IndexSymbol.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -560,6 +560,7 @@ StringRef index::getSymbolSubKindString(SymbolSubKind K) {
560560
case SymbolSubKind::SwiftAccessorMutableAddressor: return "acc-mutaddr";
561561
case SymbolSubKind::SwiftAccessorRead: return "acc-read";
562562
case SymbolSubKind::SwiftAccessorModify: return "acc-modify";
563+
case SymbolSubKind::SwiftAccessorInit: return "acc-init";
563564
case SymbolSubKind::SwiftExtensionOfStruct: return "ext-struct";
564565
case SymbolSubKind::SwiftExtensionOfClass: return "ext-class";
565566
case SymbolSubKind::SwiftExtensionOfEnum: return "ext-enum";

0 commit comments

Comments
 (0)