Clang: Process distinct documents concurrently

Speed ups the typical use cases that can profit from this:
 * Change a header file and switch then to source file
 * Open documents one after the other (Follow Symbol)
 * Change documents visible in splits (e.g. by refactoring action)
 * Restore a session with multiple splits

Fixes the test ClangIpcServer.GetCodeCompletionDependingOnArgumets.

Change-Id: Ia575bd59780df14146dfc091a4d48794e4a0543d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Nikolai Kosjar
2016-05-31 16:07:09 +02:00
parent 90f94363db
commit 38f72855b6
51 changed files with 3736 additions and 1061 deletions

View File

@@ -106,8 +106,8 @@ struct Data {
Utf8StringVector(),
translationUnits};
TranslationUnitCore translationUnitCore{filePath,
translationUnit.index(),
translationUnit.cxTranslationUnit()};
translationUnit.translationUnitCore().cxIndex(),
translationUnit.translationUnitCore().cxTranslationUnit()};
std::unique_ptr<SourceRangeData> d;
};