diff options
Diffstat (limited to 'src/dbus/qdbuspendingreply.h')
-rw-r--r-- | src/dbus/qdbuspendingreply.h | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src/dbus/qdbuspendingreply.h b/src/dbus/qdbuspendingreply.h index da29894d15..4bf574e140 100644 --- a/src/dbus/qdbuspendingreply.h +++ b/src/dbus/qdbuspendingreply.h @@ -111,7 +111,7 @@ namespace QDBusPendingReplyTypes { template<typename T1 = void, typename T2 = void, typename T3 = void, typename T4 = void, typename T5 = void, typename T6 = void, typename T7 = void, typename T8 = void> class QDBusPendingReply: -#ifdef Q_QDOC +#ifdef Q_CLANG_QDOC public QDBusPendingCall #else public QDBusPendingReplyData @@ -144,13 +144,21 @@ public: inline int count() const { return Count; } -#if defined(Q_QDOC) +#if defined(Q_CLANG_QDOC) QVariant argumentAt(int index) const; #else using QDBusPendingReplyData::argumentAt; #endif -#if defined(Q_QDOC) + template<int Index> inline + const typename Select<Index>::Type argumentAt() const + { + Q_STATIC_ASSERT_X(Index >= 0 && Index < Count, "Index out of bounds"); + typedef typename Select<Index>::Type ResultType; + return qdbus_cast<ResultType>(argumentAt(Index), 0); + } + +#if defined(Q_CLANG_QDOC) bool isFinished() const; void waitForFinished(); @@ -159,18 +167,9 @@ public: QDBusError error() const; QDBusMessage reply() const; - template<int Index> inline Type argumentAt() const; inline T1 value() const; inline operator T1() const; #else - template<int Index> inline - const typename Select<Index>::Type argumentAt() const - { - Q_STATIC_ASSERT_X(Index >= 0 && Index < Count, "Index out of bounds"); - typedef typename Select<Index>::Type ResultType; - return qdbus_cast<ResultType>(argumentAt(Index), 0); - } - inline typename Select<0>::Type value() const { return argumentAt<0>(); |