diff options
author | Marco Bubke <marco.bubke@qt.io> | 2019-05-07 16:51:22 +0200 |
---|---|---|
committer | Marco Bubke <marco.bubke@qt.io> | 2019-06-13 16:51:48 +0000 |
commit | 4bae5de36b530bbef06ec7cb1fbfb7453fd59dc7 (patch) | |
tree | e8631b82915aef669fd63e6b0a72a1088185fa7e /src/plugins/clangpchmanager/projectupdater.h | |
parent | f636f06b458782289340a61e42e6bbc1e523f937 (diff) |
Enable macro editing for the Clang indexer
Refactor much of the code from Environment* classes to NameValue* classes
to share it with the preprocessor macro settings.
Change-Id: Ica4ee817aa338230c422b30d91240d266248d226
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/plugins/clangpchmanager/projectupdater.h')
-rw-r--r-- | src/plugins/clangpchmanager/projectupdater.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/plugins/clangpchmanager/projectupdater.h b/src/plugins/clangpchmanager/projectupdater.h index 044b86f637..4c4300d194 100644 --- a/src/plugins/clangpchmanager/projectupdater.h +++ b/src/plugins/clangpchmanager/projectupdater.h @@ -37,6 +37,8 @@ #include <projectexplorer/headerpath.h> +#include <utils/environmentfwd.h> + namespace ProjectExplorer { class Macro; using Macros = QVector<Macro>; @@ -59,6 +61,8 @@ namespace ClangPchManager { class HeaderAndSources; class PchManagerClient; +class ClangIndexingSettingsManager; +class ClangIndexingProjectSettings; class CLANGPCHMANAGER_EXPORT ProjectUpdater { @@ -71,10 +75,12 @@ public: ProjectUpdater(ClangBackEnd::ProjectManagementServerInterface &server, ClangBackEnd::FilePathCachingInterface &filePathCache, - ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage) + ClangBackEnd::ProjectPartsStorageInterface &projectPartsStorage, + ClangIndexingSettingsManager &settingsManager) : m_server(server) , m_filePathCache(filePathCache) , m_projectPartsStorage(projectPartsStorage) + , m_settingsManager(settingsManager) {} void updateProjectParts(const std::vector<CppTools::ProjectPart *> &projectParts, @@ -98,8 +104,8 @@ public: void addToHeaderAndSources(HeaderAndSources &headerAndSources, const CppTools::ProjectFile &projectFile) const; static QStringList toolChainArguments(CppTools::ProjectPart *projectPart); - static ClangBackEnd::CompilerMacros createCompilerMacros( - const ProjectExplorer::Macros &projectMacros); + ClangBackEnd::CompilerMacros createCompilerMacros(const ProjectExplorer::Macros &projectMacros, + Utils::NameValueItems &&settingsMacros) const; static SystemAndProjectIncludeSearchPaths createIncludeSearchPaths( const CppTools::ProjectPart &projectPart); static ClangBackEnd::FilePaths createExcludedPaths( @@ -115,6 +121,7 @@ private: ClangBackEnd::ProjectManagementServerInterface &m_server; ClangBackEnd::FilePathCachingInterface &m_filePathCache; ClangBackEnd::ProjectPartsStorageInterface &m_projectPartsStorage; + ClangIndexingSettingsManager &m_settingsManager; }; } // namespace ClangPchManager |