diff options
author | Lars Knoll <lars.knoll@qt.io> | 2020-12-01 15:02:03 +0100 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2020-12-01 16:01:08 +0100 |
commit | 60ea10e70b408b87243b5f0511b91c4848a7ab6f (patch) | |
tree | 5431176b763b0d1a656b10c9a71ecf035c47069a /src/corelib/kernel/qmetatype.cpp | |
parent | 95cea24fa2f3eed5e7d8cfca085a6f09e7643331 (diff) |
Add a way to check whether a metatype has datastream operators
Add QMetaType::hasRegisteredDataStreamOperators() to complement
the method to check whether a data stream operator exists.
Fixes: QTBUG-82916
Change-Id: Ib2f841131b7c401d5a3ae76d49104e41697c4eac
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/corelib/kernel/qmetatype.cpp')
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 7298dc588f..78ade68a2c 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -1733,7 +1733,6 @@ bool QMetaType::debugStream(QDebug& dbg, const void *rhs) meta type. */ bool QMetaType::hasRegisteredDebugStreamOperator() const - { return d_ptr && d_ptr->debugStream != nullptr; } @@ -2687,6 +2686,20 @@ bool QMetaType::load(QDataStream &stream, void *data) const } /*! + \since 6.1 + + Returns \c true, if the meta type system has registered data stream operators for this + meta type. +*/ +bool QMetaType::hasRegisteredDataStreamOperators() const +{ + int type = id(); + if (type == QMetaType::Long || type == QMetaType::ULong) + return true; + return d_ptr && d_ptr->dataStreamIn != nullptr && d_ptr->dataStreamOut != nullptr; +} + +/*! \fn bool QMetaType::load(QDataStream &stream, int type, void *data) \overload \obsolete |