Add overload for char to QDataStream

This is a distinct types in C++, and should be supported out of the
box in QDataStream. This is also required so we do find a data stream
operator for the types when searching for it using template magic.

Change-Id: Iea57780621e2aab7ed253f1cc896bebada43b9f0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Lars Knoll 2020-07-06 19:58:51 +02:00
parent 4376c4d9d8
commit 5e3b7effbd

View File

@ -148,6 +148,7 @@ public:
int version() const;
void setVersion(int);
QDataStream &operator>>(char &i);
QDataStream &operator>>(qint8 &i);
QDataStream &operator>>(quint8 &i);
QDataStream &operator>>(qint16 &i);
@ -166,6 +167,7 @@ public:
QDataStream &operator>>(char16_t &c);
QDataStream &operator>>(char32_t &c);
QDataStream &operator<<(char i);
QDataStream &operator<<(qint8 i);
QDataStream &operator<<(quint8 i);
QDataStream &operator<<(qint16 i);
@ -370,6 +372,9 @@ inline int QDataStream::version() const
inline void QDataStream::setVersion(int v)
{ ver = v; }
inline QDataStream &QDataStream::operator>>(char &i)
{ return *this >> reinterpret_cast<qint8&>(i); }
inline QDataStream &QDataStream::operator>>(quint8 &i)
{ return *this >> reinterpret_cast<qint8&>(i); }
@ -382,6 +387,9 @@ inline QDataStream &QDataStream::operator>>(quint32 &i)
inline QDataStream &QDataStream::operator>>(quint64 &i)
{ return *this >> reinterpret_cast<qint64&>(i); }
inline QDataStream &QDataStream::operator<<(char i)
{ return *this << qint8(i); }
inline QDataStream &QDataStream::operator<<(quint8 i)
{ return *this << qint8(i); }