diff --git a/src/opengl/qopenglversionfunctions.h b/src/opengl/qopenglversionfunctions.h index 274ed29c7c3..445f2930696 100644 --- a/src/opengl/qopenglversionfunctions.h +++ b/src/opengl/qopenglversionfunctions.h @@ -94,6 +94,16 @@ struct QOpenGLVersionStatus QPair version; OpenGLStatus status; + + friend constexpr bool operator==(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs) noexcept + { + return lhs.status == rhs.status && lhs.version == rhs.version; + } + + friend constexpr bool operator!=(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs) noexcept + { + return !(lhs == rhs); + } }; inline size_t qHash(const QOpenGLVersionStatus &v, size_t seed = 0) noexcept @@ -102,16 +112,6 @@ inline size_t qHash(const QOpenGLVersionStatus &v, size_t seed = 0) noexcept + v.version.first * 100 + v.version.second * 10, seed); } -constexpr inline bool operator==(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs) -{ - return lhs.status == rhs.status && lhs.version == rhs.version; -} - -constexpr inline bool operator!=(const QOpenGLVersionStatus &lhs, const QOpenGLVersionStatus &rhs) -{ - return !operator==(lhs, rhs); -} - #define QT_OPENGL_DECLARE_FUNCTIONS(ret, name, args) \ ret (QOPENGLF_APIENTRYP name)args; #define QT_OPENGL_COUNT_FUNCTIONS(ret, name, args) +1 diff --git a/src/opengl/qopenglversionprofile.h b/src/opengl/qopenglversionprofile.h index 3ddd3dc8e90..e207548dd64 100644 --- a/src/opengl/qopenglversionprofile.h +++ b/src/opengl/qopenglversionprofile.h @@ -74,25 +74,26 @@ public: private: QOpenGLVersionProfilePrivate* d; + + friend bool operator==(const QOpenGLVersionProfile &lhs, const QOpenGLVersionProfile &rhs) noexcept + { + if (lhs.profile() != rhs.profile()) + return false; + return lhs.version() == rhs.version(); + } + + friend bool operator!=(const QOpenGLVersionProfile &lhs, const QOpenGLVersionProfile &rhs) noexcept + { + return !operator==(lhs, rhs); + } }; -inline size_t qHash(const QOpenGLVersionProfile &v, size_t seed = 0) +inline size_t qHash(const QOpenGLVersionProfile &v, size_t seed = 0) noexcept { return qHash(static_cast(v.profile() * 1000) + v.version().first * 100 + v.version().second * 10, seed); } -inline bool operator==(const QOpenGLVersionProfile &lhs, const QOpenGLVersionProfile &rhs) -{ - if (lhs.profile() != rhs.profile()) - return false; - return lhs.version() == rhs.version(); -} - -inline bool operator!=(const QOpenGLVersionProfile &lhs, const QOpenGLVersionProfile &rhs) -{ - return !operator==(lhs, rhs); -} #ifndef QT_NO_DEBUG_STREAM Q_OPENGL_EXPORT QDebug operator<<(QDebug debug, const QOpenGLVersionProfile &vp);