summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2018-09-06 13:06:20 -0700
committerThiago Macieira <thiago.macieira@intel.com>2018-09-09 05:23:08 +0000
commit1205f4a2292b9b63d714baeaa17cbf5ff5d8093b (patch)
treed07d2ecd9627c36366371701fd42c52cd7ce9bd4
parent2dca4ef19c6efccb49477baab57012b1377d1cef (diff)
Moc: use QVector more often
It's more optimised and it vectorizes better, due to one level of indirection fewer. Change-Id: I495bc19409f348069f5bfffd1551e85092ed8dc2 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
-rw-r--r--src/tools/moc/generator.cpp4
-rw-r--r--src/tools/moc/generator.h6
-rw-r--r--src/tools/moc/moc.h6
3 files changed, 8 insertions, 8 deletions
diff --git a/src/tools/moc/generator.cpp b/src/tools/moc/generator.cpp
index e499d22618..9fb980893f 100644
--- a/src/tools/moc/generator.cpp
+++ b/src/tools/moc/generator.cpp
@@ -80,7 +80,7 @@ QT_FOR_EACH_STATIC_TYPE(RETURN_METATYPENAME_STRING)
return 0;
}
-Generator::Generator(ClassDef *classDef, const QList<QByteArray> &metaTypes, const QHash<QByteArray, QByteArray> &knownQObjectClasses, const QHash<QByteArray, QByteArray> &knownGadgets, FILE *outfile)
+Generator::Generator(ClassDef *classDef, const QVector<QByteArray> &metaTypes, const QHash<QByteArray, QByteArray> &knownQObjectClasses, const QHash<QByteArray, QByteArray> &knownGadgets, FILE *outfile)
: out(outfile), cdef(classDef), metaTypes(metaTypes), knownQObjectClasses(knownQObjectClasses)
, knownGadgets(knownGadgets)
{
@@ -461,7 +461,7 @@ void Generator::generateCode()
//
// Build extra array
//
- QList<QByteArray> extraList;
+ QVector<QByteArray> extraList;
QHash<QByteArray, QByteArray> knownExtraMetaObject = knownGadgets;
knownExtraMetaObject.unite(knownQObjectClasses);
diff --git a/src/tools/moc/generator.h b/src/tools/moc/generator.h
index 8b80138302..134166580b 100644
--- a/src/tools/moc/generator.h
+++ b/src/tools/moc/generator.h
@@ -39,7 +39,7 @@ class Generator
ClassDef *cdef;
QVector<uint> meta_data;
public:
- Generator(ClassDef *classDef, const QList<QByteArray> &metaTypes, const QHash<QByteArray, QByteArray> &knownQObjectClasses, const QHash<QByteArray, QByteArray> &knownGadgets, FILE *outfile = 0);
+ Generator(ClassDef *classDef, const QVector<QByteArray> &metaTypes, const QHash<QByteArray, QByteArray> &knownQObjectClasses, const QHash<QByteArray, QByteArray> &knownGadgets, FILE *outfile = 0);
void generateCode();
private:
bool registerableMetaType(const QByteArray &propertyType);
@@ -64,9 +64,9 @@ private:
void strreg(const QByteArray &); // registers a string
int stridx(const QByteArray &); // returns a string's id
- QList<QByteArray> strings;
+ QVector<QByteArray> strings;
QByteArray purestSuperClass;
- QList<QByteArray> metaTypes;
+ QVector<QByteArray> metaTypes;
QHash<QByteArray, QByteArray> knownQObjectClasses;
QHash<QByteArray, QByteArray> knownGadgets;
};
diff --git a/src/tools/moc/moc.h b/src/tools/moc/moc.h
index 56763c5e59..d98c73e1a0 100644
--- a/src/tools/moc/moc.h
+++ b/src/tools/moc/moc.h
@@ -65,7 +65,7 @@ struct EnumDef
{
QByteArray name;
QByteArray enumName;
- QList<QByteArray> values;
+ QVector<QByteArray> values;
bool isEnumClass; // c++11 enum class
EnumDef() : isEnumClass(false) {}
};
@@ -207,10 +207,10 @@ public:
bool noInclude;
bool mustIncludeQPluginH;
QByteArray includePath;
- QList<QByteArray> includeFiles;
+ QVector<QByteArray> includeFiles;
QVector<ClassDef> classList;
QMap<QByteArray, QByteArray> interface2IdMap;
- QList<QByteArray> metaTypes;
+ QVector<QByteArray> metaTypes;
// map from class name to fully qualified name
QHash<QByteArray, QByteArray> knownQObjectClasses;
QHash<QByteArray, QByteArray> knownGadgets;