Browse Source

Merge pull request #2 from eidheim/juci

Just minor fixes. Hopefully this solution is better than the "const int" one in the previous pull request.
merge-requests/37/head
Jørgen Lien Sellæg 11 years ago
parent
commit
2bec386303
  1. 2
      src/CompileCommands.cc
  2. 2
      src/CompletionString.cc
  3. 19
      src/TranslationUnit.cc
  4. 9
      src/TranslationUnit.h

2
src/CompileCommands.cc

@ -17,7 +17,7 @@ std::vector<clang::CompileCommand> clang::CompileCommands::
get_commands() {
unsigned N = clang_CompileCommands_getSize(commands_);
std::vector<clang::CompileCommand> res;
for (auto i = 0; i < N; i++) {
for (unsigned i = 0; i < N; i++) {
res.emplace_back(clang::CompileCommand(i, this));
}
return res;

2
src/CompletionString.cc

@ -17,7 +17,7 @@ std::vector<clang::CompletionChunk> clang::CompletionString::
get_chunks() {
std::vector<clang::CompletionChunk> res;
if (clang_getCompletionAvailability(str_) == CXAvailability_Available) {
for (auto 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)),
static_cast<CompletionChunkKind>
(clang_getCompletionChunkKind(str_, i)));

19
src/TranslationUnit.cc

@ -1,13 +1,10 @@
#include "TranslationUnit.h"
const int TranslationUnitOptions = CXTranslationUnit_CacheCompletionResults | CXTranslationUnit_PrecompiledPreamble | CXTranslationUnit_Incomplete;
clang::TranslationUnit::
~TranslationUnit() {
// clang_disposeTranslationUnit(tu_);
clang_disposeTranslationUnit(tu_);
}
clang::TranslationUnit& clang::TranslationUnit::
operator=(const clang::TranslationUnit &tu) {
tu_ = tu.tu_;
@ -45,7 +42,8 @@ clang::TranslationUnit::
TranslationUnit(clang::Index *index,
const std::string &filepath,
const std::vector<std::string> &command_line_args,
const std::map<std::string, std::string> &buffers) {
const std::map<std::string, std::string> &buffers,
unsigned flags) {
std::vector<CXUnsavedFile> files;
for (auto &buffer : buffers) {
CXUnsavedFile file;
@ -65,12 +63,13 @@ TranslationUnit(clang::Index *index,
args.size(),
files.data(),
files.size(),
TranslationUnitOptions);
flags);
}
int clang::TranslationUnit::
ReparseTranslationUnit(const std::string &file_path,
const std::map<std::string, std::string> &buffers) {
const std::map<std::string, std::string> &buffers,
unsigned flags) {
std::vector<CXUnsavedFile> files;
for (auto &buffer : buffers) {
CXUnsavedFile file;
@ -82,5 +81,9 @@ ReparseTranslationUnit(const std::string &file_path,
return clang_reparseTranslationUnit(tu_,
files.size(),
files.data(),
TranslationUnitOptions);
flags);
}
unsigned clang::TranslationUnit::DefaultFlags() {
return CXTranslationUnit_CacheCompletionResults | CXTranslationUnit_PrecompiledPreamble | CXTranslationUnit_Incomplete;
}

9
src/TranslationUnit.h

@ -23,16 +23,17 @@ namespace clang {
TranslationUnit(Index *index,
const std::string &filepath,
const std::vector<std::string> &command_line_args,
const std::map<std::string, std::string> &buffers);
const std::map<std::string, std::string> &buffers,
unsigned flags=DefaultFlags());
TranslationUnit(Index *index,
const std::string &filepath);
~TranslationUnit();
TranslationUnit() { }
TranslationUnit& operator=(const TranslationUnit &tu);
int ReparseTranslationUnit(const std::string &file_path,
const std::map<std::string, std::string>
&buffers);
&buffers,
unsigned flags=DefaultFlags());
static unsigned DefaultFlags();
private:
friend Token;
friend Tokens;

Loading…
Cancel
Save