Browse Source

Changed the last fix to instead return the correct number of chunks in clang::CompletionString::get_num_chunks().

merge-requests/37/head
eidheim 11 years ago
parent
commit
06d1c1aa7c
  1. 15
      src/CompletionString.cc

15
src/CompletionString.cc

@ -7,16 +7,21 @@ CompletionString(const CXCompletionString &str) {
int clang::CompletionString:: int clang::CompletionString::
get_num_chunks() { get_num_chunks() {
return clang_getNumCompletionChunks(str_); if (clang_getCompletionAvailability(str_) == CXAvailability_Available)
return clang_getNumCompletionChunks(str_);
else
return 0;
} }
std::vector<clang::CompletionChunk> clang::CompletionString:: std::vector<clang::CompletionChunk> clang::CompletionString::
get_chunks() { get_chunks() {
std::vector<clang::CompletionChunk> res; std::vector<clang::CompletionChunk> res;
for (auto i = 0; i < get_num_chunks(); i++) { if (clang_getCompletionAvailability(str_) == CXAvailability_Available) {
res.emplace_back(clang_getCString(clang_getCompletionChunkText(str_, i)), for (auto i = 0; i < get_num_chunks(); i++) {
static_cast<CompletionChunkKind> res.emplace_back(clang_getCString(clang_getCompletionChunkText(str_, i)),
(clang_getCompletionChunkKind(str_, i))); static_cast<CompletionChunkKind>
(clang_getCompletionChunkKind(str_, i)));
}
} }
return res; return res;
} }

Loading…
Cancel
Save