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>>;
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;
timeStampsToUpdate.reserve(filePathIds.size());
@@ -81,7 +64,7 @@ public:
m_currentSourceTimeStamps.end(),
filePathIds.begin(),
filePathIds.end(),
BackInserterIterator(timeStampsToUpdate));
std::back_inserter(timeStampsToUpdate));
for (SourceTimeStamp &sourceTimeStamp : timeStampsToUpdate) {
sourceTimeStamp.lastModified = m_getModifiedTime(

View File

@@ -70,23 +70,6 @@ void ProjectParts::updateDeferred(const ProjectPartContainers &deferredProjectsP
{
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;
deferredProjectPartPointers.reserve(deferredProjectsParts.size());
@@ -94,7 +77,7 @@ void ProjectParts::updateDeferred(const ProjectPartContainers &deferredProjectsP
m_projectParts.end(),
deferredProjectsParts.begin(),
deferredProjectsParts.end(),
BackInserterIterator(deferredProjectPartPointers),
std::back_inserter(deferredProjectPartPointers),
[](const ProjectPartContainer &first, const ProjectPartContainer &second) {
return first.projectPartId < second.projectPartId;
});

View File

@@ -98,23 +98,6 @@ private:
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
{
bool operator()(const UsedMacro &usedMacro, FilePathId filePathId)
@@ -135,7 +118,7 @@ private:
usedMacros.end(),
filePathId.begin(),
filePathId.end(),
BackInserterIterator(filtertedMacros),
std::back_inserter(filtertedMacros),
Compare{});
std::sort(filtertedMacros.begin(),