aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/definitions/user_identifier.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/csapi/definitions/user_identifier.h')
-rw-r--r--lib/csapi/definitions/user_identifier.h37
1 files changed, 21 insertions, 16 deletions
diff --git a/lib/csapi/definitions/user_identifier.h b/lib/csapi/definitions/user_identifier.h
index cbb1550f..dadf6f97 100644
--- a/lib/csapi/definitions/user_identifier.h
+++ b/lib/csapi/definitions/user_identifier.h
@@ -6,24 +6,29 @@
#include "converters.h"
-#include <QtCore/QVariant>
-
-namespace QMatrixClient
-{
- // Data structures
+namespace Quotient {
+/// Identification information for a user
+struct UserIdentifier {
+ /// The type of identification. See `Identifier types`_ for supported
+ /// values and additional property descriptions.
+ QString type;
/// Identification information for a user
- struct UserIdentifier
+ QVariantHash additionalProperties;
+};
+
+template <>
+struct JsonObjectConverter<UserIdentifier> {
+ static void dumpTo(QJsonObject& jo, const UserIdentifier& pod)
{
- /// The type of identification. See `Identifier types`_ for supported values and additional property descriptions.
- QString type;
- /// Identification information for a user
- QVariantHash additionalProperties;
- };
- template <> struct JsonObjectConverter<UserIdentifier>
+ fillJson(jo, pod.additionalProperties);
+ addParam<>(jo, QStringLiteral("type"), pod.type);
+ }
+ static void fillFrom(QJsonObject jo, UserIdentifier& pod)
{
- static void dumpTo(QJsonObject& jo, const UserIdentifier& pod);
- static void fillFrom(QJsonObject jo, UserIdentifier& pod);
- };
+ fromJson(jo.take("type"_ls), pod.type);
+ fromJson(jo, pod.additionalProperties);
+ }
+};
-} // namespace QMatrixClient
+} // namespace Quotient