Browse Source

Fix to see if functions are available.

merge-requests/37/head
eidheim 11 years ago
parent
commit
fa122cc202
  1. 23
      src/CompletionString.cc
  2. 1
      src/CompletionString.h

23
src/CompletionString.cc

@ -5,23 +5,20 @@ CompletionString(const CXCompletionString &str) {
str_ = str; str_ = str;
} }
int clang::CompletionString:: bool clang::CompletionString::available() {
get_num_chunks() { return clang_getCompletionAvailability(str_) == CXAvailability_Available;
if (clang_getCompletionAvailability(str_) == CXAvailability_Available) }
int clang::CompletionString::get_num_chunks() {
return clang_getNumCompletionChunks(str_); 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;
if (clang_getCompletionAvailability(str_) == CXAvailability_Available) { for (size_t i = 0; i < get_num_chunks(); i++) {
for (size_t i = 0; i < get_num_chunks(); i++) { res.emplace_back(clang_getCString(clang_getCompletionChunkText(str_, i)),
res.emplace_back(clang_getCString(clang_getCompletionChunkText(str_, i)), static_cast<CompletionChunkKind>
static_cast<CompletionChunkKind> (clang_getCompletionChunkKind(str_, i)));
(clang_getCompletionChunkKind(str_, i)));
}
} }
return res; return res;
} }

1
src/CompletionString.h

@ -27,6 +27,7 @@ namespace clang {
class CompletionString { class CompletionString {
public: public:
bool available();
std::vector<CompletionChunk> get_chunks(); std::vector<CompletionChunk> get_chunks();
std::string get_brief_comments(); std::string get_brief_comments();
int get_num_chunks(); int get_num_chunks();

Loading…
Cancel
Save