Change QMap to QHash as written in TODO annotation

Change-Id: I1e72b6bac63fd2930b9808bbffe8e7f6fbb70934
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
Federico Guerinoni
2020-01-09 16:52:56 +01:00
parent dee41be2ab
commit 04119f9039
2 changed files with 7 additions and 8 deletions

View File

@@ -180,7 +180,7 @@ static QSet<QString> filesWithDataFunctionDefinitions(
return result; return result;
} }
static QMap<QString, QtTestCodeLocationList> checkForDataTags(const QString &fileName, static QHash<QString, QtTestCodeLocationList> checkForDataTags(const QString &fileName,
const CPlusPlus::Snapshot &snapshot) const CPlusPlus::Snapshot &snapshot)
{ {
const QByteArray fileContent = CppParser::getFileContent(fileName); const QByteArray fileContent = CppParser::getFileContent(fileName);
@@ -256,13 +256,13 @@ static void fetchAndMergeBaseTestFunctions(const QSet<QString> &baseClasses,
} }
static QtTestCodeLocationList tagLocationsFor(const QtTestParseResult *func, static QtTestCodeLocationList tagLocationsFor(const QtTestParseResult *func,
const QMap<QString, QtTestCodeLocationList> &dataTags) const QHash<QString, QtTestCodeLocationList> &dataTags)
{ {
if (!func->inherited()) if (!func->inherited())
return dataTags.value(func->name); return dataTags.value(func->name);
QMap<QString, QtTestCodeLocationList>::ConstIterator it = dataTags.begin(); QHash<QString, QtTestCodeLocationList>::ConstIterator it = dataTags.begin();
QMap<QString, QtTestCodeLocationList>::ConstIterator end = dataTags.end(); QHash<QString, QtTestCodeLocationList>::ConstIterator end = dataTags.end();
const int lastColon = func->name.lastIndexOf(':'); const int lastColon = func->name.lastIndexOf(':');
QString funcName = lastColon == -1 ? func->name : func->name.mid(lastColon - 1); QString funcName = lastColon == -1 ? func->name : func->name.mid(lastColon - 1);
for ( ; it != end; ++it) { for ( ; it != end; ++it) {
@@ -317,8 +317,7 @@ static bool handleQtTest(QFutureInterface<TestParseResultPtr> futureInterface,
const QSet<QString> &files = filesWithDataFunctionDefinitions(testFunctions); const QSet<QString> &files = filesWithDataFunctionDefinitions(testFunctions);
// TODO: change to QHash<> QHash<QString, QtTestCodeLocationList> dataTags;
QMap<QString, QtTestCodeLocationList> dataTags;
for (const QString &file : files) for (const QString &file : files)
dataTags.unite(checkForDataTags(file, snapshot)); dataTags.unite(checkForDataTags(file, snapshot));

View File

@@ -89,7 +89,7 @@ public:
bool visit(CPlusPlus::CallAST *ast) override; bool visit(CPlusPlus::CallAST *ast) override;
bool preVisit(CPlusPlus::AST *ast) override; bool preVisit(CPlusPlus::AST *ast) override;
void postVisit(CPlusPlus::AST *ast) override; void postVisit(CPlusPlus::AST *ast) override;
QMap<QString, QtTestCodeLocationList> dataTags() const { return m_dataTags; } QHash<QString, QtTestCodeLocationList> dataTags() const { return m_dataTags; }
private: private:
QString extractNameFromAST(CPlusPlus::StringLiteralAST *ast, bool *ok) const; QString extractNameFromAST(CPlusPlus::StringLiteralAST *ast, bool *ok) const;
@@ -98,7 +98,7 @@ private:
CPlusPlus::Document::Ptr m_currentDoc; CPlusPlus::Document::Ptr m_currentDoc;
CPlusPlus::Overview m_overview; CPlusPlus::Overview m_overview;
QString m_currentFunction; QString m_currentFunction;
QMap<QString, QtTestCodeLocationList> m_dataTags; QHash<QString, QtTestCodeLocationList> m_dataTags;
QtTestCodeLocationList m_currentTags; QtTestCodeLocationList m_currentTags;
unsigned m_currentAstDepth = 0; unsigned m_currentAstDepth = 0;
unsigned m_insideUsingQTestDepth = 0; unsigned m_insideUsingQTestDepth = 0;