forked from qt-creator/qt-creator
Qmake: Make finding pro-files fast
Finding the right pro-file was surprisingly slow. Make that fast again. Task-number: QTCREATORBUG-19131 Change-Id: I4b5a8887cb13c36273a553f935a00d87cee4a7b5 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -199,12 +199,14 @@ QmakePriFile *QmakePriFile::findPriFile(const FileName &fileName)
|
||||
{
|
||||
if (fileName == filePath())
|
||||
return this;
|
||||
for (QmakePriFile *n : children()) {
|
||||
if (QmakePriFile *result = n->findPriFile(fileName))
|
||||
return result;
|
||||
}
|
||||
return nullptr;
|
||||
return findOrDefault(m_children, [&fileName](QmakePriFile *pf) { return pf->findPriFile(fileName); });
|
||||
}
|
||||
|
||||
const QmakePriFile *QmakePriFile::findPriFile(const FileName &fileName) const
|
||||
{
|
||||
if (fileName == filePath())
|
||||
return this;
|
||||
return findOrDefault(m_children, [&fileName](const QmakePriFile *pf) { return pf->findPriFile(fileName); });
|
||||
}
|
||||
|
||||
void QmakePriFile::makeEmpty()
|
||||
@@ -1010,6 +1012,11 @@ QmakeProFile *QmakeProFile::findProFile(const FileName &fileName)
|
||||
return dynamic_cast<QmakeProFile *>(findPriFile(fileName));
|
||||
}
|
||||
|
||||
const QmakeProFile *QmakeProFile::findProFile(const FileName &fileName) const
|
||||
{
|
||||
return dynamic_cast<const QmakeProFile *>(findPriFile(fileName));
|
||||
}
|
||||
|
||||
QString QmakeProFile::makefile() const
|
||||
{
|
||||
return singleVariableValue(Variable::Makefile);
|
||||
|
||||
Reference in New Issue
Block a user