5#ifndef QDBUSEXTRATYPES_H
6#define QDBUSEXTRATYPES_H
10#include <QtDBus/qtdbusglobal.h>
11#include <QtCore/qvariant.h>
12#include <QtCore/qstring.h>
13#include <QtCore/qhashfunctions.h>
23 QDBusObjectPath()
noexcept : m_path() {}
27 inline explicit QDBusObjectPath(
const char *path);
28 inline explicit QDBusObjectPath(QLatin1StringView path);
29 inline explicit QDBusObjectPath(
const QString &path);
30 explicit QDBusObjectPath(QString &&p) : m_path(std::move(p)) { doCheck(); }
32 void swap(QDBusObjectPath &other)
noexcept { m_path.swap(other.m_path); }
34 inline void setPath(
const QString &path);
36 inline QString path()
const
39 operator QVariant()
const;
42#ifndef QT_NO_DEBUG_STREAM
43 Q_DBUS_EXPORT
friend QDebug operator<<(QDebug,
const QDBusObjectPath &);
49inline QDBusObjectPath::QDBusObjectPath(
const char *objectPath)
50 : m_path(QString::fromLatin1(objectPath))
53inline QDBusObjectPath::QDBusObjectPath(QLatin1StringView objectPath)
57inline QDBusObjectPath::QDBusObjectPath(
const QString &objectPath)
61inline void QDBusObjectPath::setPath(
const QString &objectPath)
62{ m_path = objectPath; doCheck(); }
64inline bool operator==(
const QDBusObjectPath &lhs,
const QDBusObjectPath &rhs)
65{
return lhs.path() == rhs.path(); }
67inline bool operator!=(
const QDBusObjectPath &lhs,
const QDBusObjectPath &rhs)
68{
return lhs.path() != rhs.path(); }
70inline bool operator<(
const QDBusObjectPath &lhs,
const QDBusObjectPath &rhs)
71{
return lhs.path() < rhs.path(); }
73inline size_t qHash(
const QDBusObjectPath &objectPath, size_t seed = 0)
74{
return qHash(objectPath.path(), seed); }
81 QDBusSignature()
noexcept;
85 inline explicit QDBusSignature(
const char *signature);
86 inline explicit QDBusSignature(QLatin1StringView signature);
87 inline explicit QDBusSignature(
const QString &signature);
88 explicit QDBusSignature(QString &&sig) : m_signature(std::move(sig)) { doCheck(); }
90 void swap(QDBusSignature &other)
noexcept { m_signature.swap(other.m_signature); }
92 inline void setSignature(
const QString &signature);
94 inline QString signature()
const
95 {
return m_signature; }
102inline QDBusSignature::QDBusSignature(
const char *dBusSignature)
103 : m_signature(QString::fromLatin1(dBusSignature))
106inline QDBusSignature::QDBusSignature(QLatin1StringView dBusSignature)
107 : m_signature(dBusSignature)
110inline QDBusSignature::QDBusSignature(
const QString &dBusSignature)
111 : m_signature(dBusSignature)
114inline void QDBusSignature::setSignature(
const QString &dBusSignature)
115{ m_signature = dBusSignature; doCheck(); }
117inline bool operator==(
const QDBusSignature &lhs,
const QDBusSignature &rhs)
118{
return lhs.signature() == rhs.signature(); }
120inline bool operator!=(
const QDBusSignature &lhs,
const QDBusSignature &rhs)
121{
return lhs.signature() != rhs.signature(); }
123inline bool operator<(
const QDBusSignature &lhs,
const QDBusSignature &rhs)
124{
return lhs.signature() < rhs.signature(); }
126inline size_t qHash(
const QDBusSignature &signature, size_t seed = 0)
127{
return qHash(signature.signature(), seed); }
142 inline void setVariant(
const QVariant &variant);
145 {
return m_variant; }
147Q_DECLARE_SHARED(QDBusVariant)
153{ m_variant = dBusVariant; }
156{
return v1.variant() == v2.variant(); }
160QT_DECL_METATYPE_EXTERN(QDBusVariant, Q_DBUS_EXPORT)
161QT_DECL_METATYPE_EXTERN(QDBusObjectPath, Q_DBUS_EXPORT)
162QT_DECL_METATYPE_EXTERN(QDBusSignature, Q_DBUS_EXPORT)
friend bool operator==(const QByteArray::FromBase64Result &lhs, const QByteArray::FromBase64Result &rhs) noexcept
Returns true if lhs and rhs are equal, otherwise returns false.
friend bool operator!=(const QByteArray::FromBase64Result &lhs, const QByteArray::FromBase64Result &rhs) noexcept
Returns true if lhs and rhs are different, otherwise returns false.
QDBusVariant(QVariant &&v) noexcept
void setVariant(const QVariant &variant)
Assigns the value of the given Qt variant to this D-Bus variant.
void swap(QDBusVariant &other) noexcept
\memberswap{variant}
QDBusVariant(const QVariant &variant)
Constructs a new D-Bus variant from the given Qt variant.
QVariant variant() const
Returns this D-Bus variant as a QVariant object.
QDBusVariant() noexcept
Constructs a new D-Bus variant.
bool operator<(const QElapsedTimer &lhs, const QElapsedTimer &rhs) noexcept
constexpr size_t qHash(const QSize &s, size_t seed=0) noexcept