aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangpchmanager/pchmanagerclient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/clangpchmanager/pchmanagerclient.cpp')
-rw-r--r--src/plugins/clangpchmanager/pchmanagerclient.cpp63
1 files changed, 5 insertions, 58 deletions
diff --git a/src/plugins/clangpchmanager/pchmanagerclient.cpp b/src/plugins/clangpchmanager/pchmanagerclient.cpp
index c26b871f50..04d1d4a0bf 100644
--- a/src/plugins/clangpchmanager/pchmanagerclient.cpp
+++ b/src/plugins/clangpchmanager/pchmanagerclient.cpp
@@ -43,11 +43,8 @@ void PchManagerClient::alive()
void PchManagerClient::precompiledHeadersUpdated(ClangBackEnd::PrecompiledHeadersUpdatedMessage &&message)
{
- for (ClangBackEnd::ProjectPartPch &projectPartPch : message.takeProjectPartPchs()) {
- const QString pchPath{projectPartPch.pchPath};
- addProjectPartPch(std::move(projectPartPch));
- precompiledHeaderUpdated(projectPartPch.projectPartId, pchPath, projectPartPch.lastModified);
- }
+ for (ClangBackEnd::ProjectPartId &projectPartId : message.takeProjectPartIds())
+ precompiledHeaderUpdated(projectPartId);
}
void PchManagerClient::progress(ClangBackEnd::ProgressMessage &&message)
@@ -66,10 +63,8 @@ void PchManagerClient::progress(ClangBackEnd::ProgressMessage &&message)
void PchManagerClient::precompiledHeaderRemoved(ClangBackEnd::ProjectPartId projectPartId)
{
- for (auto notifier : m_notifiers) {
- removeProjectPartPch(projectPartId);
+ for (auto notifier : m_notifiers)
notifier->precompiledHeaderRemoved(projectPartId);
- }
}
void PchManagerClient::setConnectionClient(PchManagerConnectionClient *connectionClient)
@@ -77,22 +72,6 @@ void PchManagerClient::setConnectionClient(PchManagerConnectionClient *connectio
m_connectionClient = connectionClient;
}
-Utils::optional<ClangBackEnd::ProjectPartPch> PchManagerClient::projectPartPch(
- ClangBackEnd::ProjectPartId projectPartId) const
-{
- auto found = std::lower_bound(m_projectPartPchs.cbegin(),
- m_projectPartPchs.cend(),
- projectPartId,
- [] (const auto &projectPartPch, auto projectPartId) {
- return projectPartId < projectPartPch.projectPartId;
- });
-
- if (found != m_projectPartPchs.end() && found->projectPartId == projectPartId)
- return *found;
-
- return Utils::nullopt;
-}
-
void PchManagerClient::attach(PchManagerNotifierInterface *notifier)
{
m_notifiers.push_back(notifier);
@@ -109,47 +88,15 @@ void PchManagerClient::detach(PchManagerNotifierInterface *notifierToBeDeleted)
m_notifiers.erase(newEnd, m_notifiers.end());
}
-void PchManagerClient::removeProjectPartPch(ClangBackEnd::ProjectPartId projectPartId)
-{
- auto found = std::lower_bound(m_projectPartPchs.begin(),
- m_projectPartPchs.end(),
- projectPartId,
- [] (const auto &projectPartPch, auto projectPartId) {
- return projectPartId < projectPartPch.projectPartId;
- });
-
- if (found != m_projectPartPchs.end() && found->projectPartId == projectPartId) {
- *found = std::move(m_projectPartPchs.back());
- m_projectPartPchs.pop_back();
- }
-}
-
-void PchManagerClient::addProjectPartPch(ClangBackEnd::ProjectPartPch &&projectPartPch)
-{
- auto found = std::lower_bound(m_projectPartPchs.begin(),
- m_projectPartPchs.end(),
- projectPartPch.projectPartId,
- [] (const auto &projectPartPch, auto projectPartId) {
- return projectPartId < projectPartPch.projectPartId;
- });
-
- if (found != m_projectPartPchs.end() && found->projectPartId == projectPartPch.projectPartId)
- *found = std::move(projectPartPch);
- else
- m_projectPartPchs.insert(found, std::move(projectPartPch));
-}
-
const std::vector<PchManagerNotifierInterface *> &PchManagerClient::notifiers() const
{
return m_notifiers;
}
-void PchManagerClient::precompiledHeaderUpdated(ClangBackEnd::ProjectPartId projectPartId,
- const QString &pchFilePath,
- long long lastModified)
+void PchManagerClient::precompiledHeaderUpdated(ClangBackEnd::ProjectPartId projectPartId)
{
for (auto notifier : m_notifiers)
- notifier->precompiledHeaderUpdated(projectPartId, pchFilePath, lastModified);
+ notifier->precompiledHeaderUpdated(projectPartId);
}
} // namespace ClangPchManager