Some work to handle enums that are larger than 32bit
This will require some more work in QFlags and the metaobject system for Q_ENUM. Change-Id: I3687c7d2529dc18e7bc1abfc326e56ff7a365bc5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
0e6a327f14
commit
4376c4d9d8
@ -956,7 +956,7 @@ void qt_QMetaEnum_flagDebugOperator(QDebug &debug, size_t sizeofT, int value)
|
|||||||
MyNamespace::MyClass::MyScopedEnum::Enum3
|
MyNamespace::MyClass::MyScopedEnum::Enum3
|
||||||
MyNamespace::MyClass::MyScopedEnum(456)
|
MyNamespace::MyClass::MyScopedEnum(456)
|
||||||
*/
|
*/
|
||||||
QDebug qt_QMetaEnum_debugOperator(QDebug &dbg, int value, const QMetaObject *meta, const char *name)
|
QDebug qt_QMetaEnum_debugOperator(QDebug &dbg, qint64 value, const QMetaObject *meta, const char *name)
|
||||||
{
|
{
|
||||||
QDebugStateSaver saver(dbg);
|
QDebugStateSaver saver(dbg);
|
||||||
dbg.nospace();
|
dbg.nospace();
|
||||||
|
@ -388,7 +388,7 @@ void qt_QMetaEnum_flagDebugOperator(QDebug &debug, size_t sizeofT, Int value)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(QT_NO_QOBJECT) && !defined(Q_QDOC)
|
#if !defined(QT_NO_QOBJECT) && !defined(Q_QDOC)
|
||||||
Q_CORE_EXPORT QDebug qt_QMetaEnum_debugOperator(QDebug&, int value, const QMetaObject *meta, const char *name);
|
Q_CORE_EXPORT QDebug qt_QMetaEnum_debugOperator(QDebug&, qint64 value, const QMetaObject *meta, const char *name);
|
||||||
Q_CORE_EXPORT QDebug qt_QMetaEnum_flagDebugOperator(QDebug &dbg, quint64 value, const QMetaObject *meta, const char *name);
|
Q_CORE_EXPORT QDebug qt_QMetaEnum_flagDebugOperator(QDebug &dbg, quint64 value, const QMetaObject *meta, const char *name);
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
@ -397,7 +397,7 @@ operator<<(QDebug dbg, T value)
|
|||||||
{
|
{
|
||||||
const QMetaObject *obj = qt_getEnumMetaObject(value);
|
const QMetaObject *obj = qt_getEnumMetaObject(value);
|
||||||
const char *name = qt_getEnumName(value);
|
const char *name = qt_getEnumName(value);
|
||||||
return qt_QMetaEnum_debugOperator(dbg, typename QFlags<T>::Int(value), obj, name);
|
return qt_QMetaEnum_debugOperator(dbg, static_cast<typename std::underlying_type<T>::type>(value), obj, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T,
|
template<typename T,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user