diff options
Diffstat (limited to 'src/corelib/serialization/qdatastream.h')
-rw-r--r-- | src/corelib/serialization/qdatastream.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/corelib/serialization/qdatastream.h b/src/corelib/serialization/qdatastream.h index ad69621bbe..2acf7d8c4b 100644 --- a/src/corelib/serialization/qdatastream.h +++ b/src/corelib/serialization/qdatastream.h @@ -99,11 +99,12 @@ public: Qt_5_10 = Qt_5_9, Qt_5_11 = Qt_5_10, Qt_5_12 = 18, - Qt_5_13 = Qt_5_12, -#if QT_VERSION >= 0x050e00 + Qt_5_13 = 19, + Qt_5_14 = Qt_5_13, +#if QT_VERSION >= 0x050f00 #error Add the datastream version for this Qt version and update Qt_DefaultCompiledVersion #endif - Qt_DefaultCompiledVersion = Qt_5_13 + Qt_DefaultCompiledVersion = Qt_5_14 }; enum ByteOrder { @@ -131,7 +132,10 @@ public: QIODevice *device() const; void setDevice(QIODevice *); +#if QT_DEPRECATED_SINCE(5, 13) + QT_DEPRECATED_X("Use QDataStream::setDevice(nullptr) instead") void unsetDevice(); +#endif bool atEnd() const; @@ -374,6 +378,16 @@ inline QDataStream &operator>>(QDataStream &s, QFlags<Enum> &e) { return s >> e.i; } template <typename T> +typename std::enable_if<std::is_enum<T>::value, QDataStream &>::type& +operator<<(QDataStream &s, const T &t) +{ return s << static_cast<typename std::underlying_type<T>::type>(t); } + +template <typename T> +typename std::enable_if<std::is_enum<T>::value, QDataStream &>::type& +operator>>(QDataStream &s, T &t) +{ return s >> reinterpret_cast<typename std::underlying_type<T>::type &>(t); } + +template <typename T> inline QDataStream &operator>>(QDataStream &s, QList<T> &l) { return QtPrivate::readArrayBasedContainer(s, l); |