ClangPchManager: Remove special back inserter

It was there because we supported very old compilers but I think that is
not anymore the case.

Change-Id: I15ea32f95a75b787f2681b71ed693a1525e5b7d3
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
Marco Bubke
2019-01-23 16:22:54 +01:00
parent db32dfe7a4
commit 1c2d41a63e
3 changed files with 3 additions and 54 deletions

View File

@@ -57,23 +57,6 @@ public:
{ {
using SourceTimeStampReferences = std::vector<std::reference_wrapper<SourceTimeStamp>>; using SourceTimeStampReferences = std::vector<std::reference_wrapper<SourceTimeStamp>>;
class BackInserterIterator : public std::back_insert_iterator<SourceTimeStampReferences>
{
public:
BackInserterIterator(SourceTimeStampReferences &container)
: std::back_insert_iterator<SourceTimeStampReferences>(container)
{}
BackInserterIterator &operator=(SourceTimeStamp &timeStamp)
{
container->push_back(std::ref(timeStamp));
return *this;
}
BackInserterIterator &operator*() { return *this; }
};
SourceTimeStampReferences timeStampsToUpdate; SourceTimeStampReferences timeStampsToUpdate;
timeStampsToUpdate.reserve(filePathIds.size()); timeStampsToUpdate.reserve(filePathIds.size());
@@ -81,7 +64,7 @@ public:
m_currentSourceTimeStamps.end(), m_currentSourceTimeStamps.end(),
filePathIds.begin(), filePathIds.begin(),
filePathIds.end(), filePathIds.end(),
BackInserterIterator(timeStampsToUpdate)); std::back_inserter(timeStampsToUpdate));
for (SourceTimeStamp &sourceTimeStamp : timeStampsToUpdate) { for (SourceTimeStamp &sourceTimeStamp : timeStampsToUpdate) {
sourceTimeStamp.lastModified = m_getModifiedTime( sourceTimeStamp.lastModified = m_getModifiedTime(

View File

@@ -70,23 +70,6 @@ void ProjectParts::updateDeferred(const ProjectPartContainers &deferredProjectsP
{ {
using ProjectPartContainerReferences = std::vector<std::reference_wrapper<ProjectPartContainer>>; using ProjectPartContainerReferences = std::vector<std::reference_wrapper<ProjectPartContainer>>;
class BackInserterIterator : public std::back_insert_iterator<ProjectPartContainerReferences>
{
public:
BackInserterIterator(ProjectPartContainerReferences &container)
: std::back_insert_iterator<ProjectPartContainerReferences>(container)
{}
BackInserterIterator &operator=(ProjectPartContainer &projectPart)
{
container->push_back(std::ref(projectPart));
return *this;
}
BackInserterIterator &operator*() { return *this; }
};
ProjectPartContainerReferences deferredProjectPartPointers; ProjectPartContainerReferences deferredProjectPartPointers;
deferredProjectPartPointers.reserve(deferredProjectsParts.size()); deferredProjectPartPointers.reserve(deferredProjectsParts.size());
@@ -94,7 +77,7 @@ void ProjectParts::updateDeferred(const ProjectPartContainers &deferredProjectsP
m_projectParts.end(), m_projectParts.end(),
deferredProjectsParts.begin(), deferredProjectsParts.begin(),
deferredProjectsParts.end(), deferredProjectsParts.end(),
BackInserterIterator(deferredProjectPartPointers), std::back_inserter(deferredProjectPartPointers),
[](const ProjectPartContainer &first, const ProjectPartContainer &second) { [](const ProjectPartContainer &first, const ProjectPartContainer &second) {
return first.projectPartId < second.projectPartId; return first.projectPartId < second.projectPartId;
}); });

View File

@@ -98,23 +98,6 @@ private:
static UsedMacros filterUsedMarcos(const UsedMacros &usedMacros, const FilePathIds &filePathId) static UsedMacros filterUsedMarcos(const UsedMacros &usedMacros, const FilePathIds &filePathId)
{ {
class BackInserterIterator : public std::back_insert_iterator<UsedMacros>
{
public:
BackInserterIterator(UsedMacros &container)
: std::back_insert_iterator<UsedMacros>(container)
{}
BackInserterIterator &operator=(const UsedMacro &usedMacro)
{
container->push_back(usedMacro);
return *this;
}
BackInserterIterator &operator*() { return *this; }
};
struct Compare struct Compare
{ {
bool operator()(const UsedMacro &usedMacro, FilePathId filePathId) bool operator()(const UsedMacro &usedMacro, FilePathId filePathId)
@@ -135,7 +118,7 @@ private:
usedMacros.end(), usedMacros.end(),
filePathId.begin(), filePathId.begin(),
filePathId.end(), filePathId.end(),
BackInserterIterator(filtertedMacros), std::back_inserter(filtertedMacros),
Compare{}); Compare{});
std::sort(filtertedMacros.begin(), std::sort(filtertedMacros.begin(),