ApplicationMessage: Use QHash instead of QMap

QHash provides faster lookup times than QMap because it uses a hash table to store the elements, while QMap uses a self-balancing binary tree.

Signed-off-by: Edgars Cīrulis <edgarsscirulis@gmail.com>
This commit is contained in:
Edgars Cīrulis 2022-12-15 15:43:46 +02:00
parent 4f1ea712da
commit 52dc9068e5
No known key found for this signature in database
GPG Key ID: 307C4E4663F1FCC3
2 changed files with 6 additions and 6 deletions

View File

@ -47,8 +47,8 @@ void ApplicationMessage::parse(const QByteArray & input) {
args.clear(); args.clear();
auto parsedArgs = root.value("args").toObject(); auto parsedArgs = root.value("args").toObject();
for(auto iter = parsedArgs.begin(); iter != parsedArgs.end(); iter++) { for(auto iter = parsedArgs.constBegin(); iter != parsedArgs.constEnd(); iter++) {
args[iter.key()] = iter.value().toString(); args.insert(iter.key(), iter.value().toString());
} }
} }
@ -56,8 +56,8 @@ QByteArray ApplicationMessage::serialize() {
QJsonObject root; QJsonObject root;
root.insert("command", command); root.insert("command", command);
QJsonObject outArgs; QJsonObject outArgs;
for (auto iter = args.begin(); iter != args.end(); iter++) { for (auto iter = args.constBegin(); iter != args.constEnd(); iter++) {
outArgs[iter.key()] = iter.value(); outArgs.insert(iter.key(), iter.value());
} }
root.insert("args", outArgs); root.insert("args", outArgs);

View File

@ -1,12 +1,12 @@
#pragma once #pragma once
#include <QString> #include <QString>
#include <QMap> #include <QHash>
#include <QByteArray> #include <QByteArray>
struct ApplicationMessage { struct ApplicationMessage {
QString command; QString command;
QMap<QString, QString> args; QHash<QString, QString> args;
QByteArray serialize(); QByteArray serialize();
void parse(const QByteArray & input); void parse(const QByteArray & input);