Browse Source

Renamed TranslationUnit::ReparseTranslationUnit to TranslationUnit::reparse, and added additional TranslationUnit::get_tokens overloads

merge-requests/37/head
eidheim 8 years ago
parent
commit
6df6b21887
  1. 14
      src/TranslationUnit.cc
  2. 4
      src/TranslationUnit.h
  3. 2
      tests/CodeCompleteResults_H_Test.cc
  4. 2
      tests/CompletionString_H_Test.cc
  5. 2
      tests/TranslationUnit_Test.cc

14
src/TranslationUnit.cc

@ -60,7 +60,7 @@ void clangmm::TranslationUnit::parse(Index &index, const std::string &file_path,
args.size(), files.data(), files.size(), flags); args.size(), files.data(), files.size(), flags);
} }
int clangmm::TranslationUnit::ReparseTranslationUnit(const std::string &buffer, unsigned flags) { int clangmm::TranslationUnit::reparse(const std::string &buffer, unsigned flags) {
CXUnsavedFile files[1]; CXUnsavedFile files[1];
auto file_path=to_string(clang_getTranslationUnitSpelling(cx_tu)); auto file_path=to_string(clang_getTranslationUnitSpelling(cx_tu));
@ -96,6 +96,18 @@ std::vector<clangmm::Diagnostic> clangmm::TranslationUnit::get_diagnostics() {
return diagnostics; return diagnostics;
} }
std::unique_ptr<clangmm::Tokens> clangmm::TranslationUnit::get_tokens() {
SourceRange range(clang_getCursorExtent(clang_getTranslationUnitCursor(cx_tu)));
return std::unique_ptr<Tokens>(new Tokens(cx_tu, range));
}
std::unique_ptr<clangmm::Tokens> clangmm::TranslationUnit::get_tokens(const std::string &path, unsigned start_offset, unsigned end_offset) {
SourceLocation start_location(cx_tu, path, start_offset);
SourceLocation end_location(cx_tu, path, end_offset);
SourceRange range(start_location, end_location);
return std::unique_ptr<Tokens>(new Tokens(cx_tu, range));
}
std::unique_ptr<clangmm::Tokens> clangmm::TranslationUnit::get_tokens(unsigned start_offset, unsigned end_offset) { std::unique_ptr<clangmm::Tokens> clangmm::TranslationUnit::get_tokens(unsigned start_offset, unsigned end_offset) {
auto path=clangmm::to_string(clang_getTranslationUnitSpelling(cx_tu)); auto path=clangmm::to_string(clang_getTranslationUnitSpelling(cx_tu));
SourceLocation start_location(cx_tu, path, start_offset); SourceLocation start_location(cx_tu, path, start_offset);

4
src/TranslationUnit.h

@ -23,7 +23,7 @@ namespace clangmm {
unsigned flags=DefaultFlags()); unsigned flags=DefaultFlags());
~TranslationUnit(); ~TranslationUnit();
int ReparseTranslationUnit(const std::string &buffer, unsigned flags=DefaultFlags()); int reparse(const std::string &buffer, unsigned flags=DefaultFlags());
static unsigned DefaultFlags(); static unsigned DefaultFlags();
@ -38,6 +38,8 @@ namespace clangmm {
std::vector<Diagnostic> get_diagnostics(); std::vector<Diagnostic> get_diagnostics();
std::unique_ptr<Tokens> get_tokens();
std::unique_ptr<Tokens> get_tokens(const std::string &path, unsigned start_offset, unsigned end_offset);
std::unique_ptr<Tokens> get_tokens(unsigned start_offset, unsigned end_offset); std::unique_ptr<Tokens> get_tokens(unsigned start_offset, unsigned end_offset);
std::unique_ptr<Tokens> get_tokens(unsigned start_line, unsigned start_column, std::unique_ptr<Tokens> get_tokens(unsigned start_line, unsigned start_column,
unsigned end_line, unsigned end_column); unsigned end_line, unsigned end_column);

2
tests/CodeCompleteResults_H_Test.cc

@ -20,7 +20,7 @@ BOOST_AUTO_TEST_CASE(code_complete_results) {
// ] // ]
tu.ReparseTranslationUnit(buffer); tu.reparse(buffer);
auto results=tu.get_code_completions(buffer, 4, 5); auto results=tu.get_code_completions(buffer, 4, 5);
bool substr_found=false; bool substr_found=false;

2
tests/CompletionString_H_Test.cc

@ -25,7 +25,7 @@ BOOST_AUTO_TEST_CASE(completion_string) {
"return 0\n" "return 0\n"
"}"; "}";
tu.ReparseTranslationUnit(buffer); tu.reparse(buffer);
auto results=tu.get_code_completions(buffer, 4, 5); auto results=tu.get_code_completions(buffer, 4, 5);
// ] // ]

2
tests/TranslationUnit_Test.cc

@ -15,5 +15,5 @@ BOOST_AUTO_TEST_CASE(translation_unit) {
"return 0\n" "return 0\n"
"}\n"; "}\n";
BOOST_CHECK(tu.ReparseTranslationUnit(buffer) == 0); BOOST_CHECK(tu.reparse(buffer) == 0);
} }

Loading…
Cancel
Save