diff options
author | Marco Bubke <marco.bubke@qt.io> | 2017-09-19 17:56:54 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2017-09-20 10:45:07 +0000 |
commit | 2df9a99cac658c363b8bdf096aac4309d534a01e (patch) | |
tree | 79354c72989b083a214b5f155ef7facc93c64c3f /src/tools/clangrefactoringbackend/source/symbolindexing.h | |
parent | 623135592c069a1d760b28e96aab6a5012fccc12 (diff) | |
download | qt-creator-2df9a99cac658c363b8bdf096aac4309d534a01e.tar.gz |
Clang: Add RefactoringDatabaseInitializer
We moved the creation of the tables and indices to an extra class which can
be called from other places. So you can be sure that a database is
initialized.
Change-Id: Ief5b30ced7b9011ca94367aa2578098423dcecd9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/tools/clangrefactoringbackend/source/symbolindexing.h')
-rw-r--r-- | src/tools/clangrefactoringbackend/source/symbolindexing.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/tools/clangrefactoringbackend/source/symbolindexing.h b/src/tools/clangrefactoringbackend/source/symbolindexing.h index 7a8da5aafb..4dd173e1bf 100644 --- a/src/tools/clangrefactoringbackend/source/symbolindexing.h +++ b/src/tools/clangrefactoringbackend/source/symbolindexing.h @@ -32,6 +32,7 @@ #include "symbolscollector.h" #include "symbolstorage.h" +#include <refactoringdatabaseinitializer.h> #include <stringcache.h> #include <sqlitedatabase.h> @@ -47,12 +48,13 @@ public: Sqlite::ReadStatement, Sqlite::WriteStatement>; using Storage = ClangBackEnd::SymbolStorage<StatementFactory>; + using DatabaseInitializer = RefactoringDatabaseInitializer<Sqlite::Database>; SymbolIndexing(FilePathCache<std::mutex> &filePathCache, Utils::PathString &&databaseFilePath) : m_filePathCache(filePathCache), - m_database(std::move(databaseFilePath)) - + m_database(std::move(databaseFilePath)), + m_databaseInitializer(m_database) { } @@ -75,6 +77,7 @@ public: private: FilePathCache<std::mutex> &m_filePathCache; Sqlite::Database m_database; + DatabaseInitializer m_databaseInitializer; SymbolsCollector m_collector{m_filePathCache}; StatementFactory m_statementFactory{m_database}; Storage m_symbolStorage{m_statementFactory, m_filePathCache}; |