diff options
author | Eike Ziller <eike.ziller@qt.io> | 2016-11-22 13:59:54 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2016-11-23 15:35:48 +0000 |
commit | 2ed5d7998aa03358674de56ad407f57579d0fdb9 (patch) | |
tree | c493d45d468ba920717f5d83c5ada6f804716dc9 /src/plugins/cpptools/builtinindexingsupport.cpp | |
parent | a86ff510dcfd9400ec7165370854f815a1fae951 (diff) | |
download | qt-creator-2ed5d7998aa03358674de56ad407f57579d0fdb9.tar.gz |
Find Symbols: Use QRegularExpression instead of QRegExp
This makes it more consistent with the other find filters.
Change-Id: I39ad144d66091c3ccc5e4452009cc236165915ea
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/cpptools/builtinindexingsupport.cpp')
-rw-r--r-- | src/plugins/cpptools/builtinindexingsupport.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/plugins/cpptools/builtinindexingsupport.cpp b/src/plugins/cpptools/builtinindexingsupport.cpp index 3ce769afa8..99277ddb13 100644 --- a/src/plugins/cpptools/builtinindexingsupport.cpp +++ b/src/plugins/cpptools/builtinindexingsupport.cpp @@ -46,6 +46,7 @@ #include <QCoreApplication> #include <QDir> #include <QElapsedTimer> +#include <QRegularExpression> using namespace CppTools; using namespace CppTools::Internal; @@ -281,11 +282,13 @@ public: CPlusPlus::Snapshot::const_iterator it = m_snapshot.begin(); QString findString = (m_parameters.flags & Core::FindRegularExpression - ? m_parameters.text : QRegExp::escape(m_parameters.text)); + ? m_parameters.text : QRegularExpression::escape(m_parameters.text)); if (m_parameters.flags & Core::FindWholeWords) findString = QString::fromLatin1("\\b%1\\b").arg(findString); - QRegExp matcher(findString, (m_parameters.flags & Core::FindCaseSensitively - ? Qt::CaseSensitive : Qt::CaseInsensitive)); + QRegularExpression matcher(findString, (m_parameters.flags & Core::FindCaseSensitively + ? QRegularExpression::NoPatternOption + : QRegularExpression::CaseInsensitiveOption)); + matcher.optimize(); while (it != m_snapshot.end()) { if (future.isPaused()) future.waitForResume(); @@ -294,7 +297,7 @@ public: if (m_fileNames.isEmpty() || m_fileNames.contains(it.value()->fileName())) { QVector<Core::SearchResultItem> resultItems; auto filter = [&](const IndexItem::Ptr &info) -> IndexItem::VisitorResult { - if (matcher.indexIn(info->symbolName()) != -1) { + if (matcher.match(info->symbolName()).hasMatch()) { QString text = info->symbolName(); QString scope = info->symbolScope(); if (info->type() == IndexItem::Function) { |