59#if QT_CONFIG(signaling_nan)
64Q_CORE_EXPORT
double qSNaN() {
return qt_snan(); }
79Q_CORE_EXPORT
double qInf() {
return qt_inf(); }
108 memcpy(&
i, &
f,
sizeof(
f));
141 static const quint32 smallestPositiveFloatAsBits = 0x00000001;
146 static_assert(
sizeof(
quint32) ==
sizeof(
float));
150 if ((
a < 0) != (
b < 0)) {
166 return f2i(
b) - smallestPositiveFloatAsBits + 1;
168 return f2i(
a) - smallestPositiveFloatAsBits + 1;
181 memcpy(&
i, &
d,
sizeof(
d));
199 static const quint64 smallestPositiveFloatAsBits = 0x1;
204 static_assert(
sizeof(
quint64) ==
sizeof(
double));
208 if ((
a < 0) != (
b < 0)) {
224 return d2i(
b) - smallestPositiveFloatAsBits + 1;
226 return d2i(
a) - smallestPositiveFloatAsBits + 1;
463template <
typename T>
static constexpr T
max = std::numeric_limits<T>::max();
464template <
typename T>
static constexpr T
min = std::numeric_limits<T>::min();
466static_assert(qt_saturate<short>(max<unsigned>) == max<short>);
467static_assert(qt_saturate<int>(max<unsigned>) == max<int>);
468static_assert(qt_saturate<qint64>(max<unsigned>) ==
qint64(max<unsigned>));
470static_assert(qt_saturate<short>(max<int>) == max<short>);
471static_assert(qt_saturate<unsigned>(max<int>) == unsigned(max<int>));
472static_assert(qt_saturate<qint64>(max<int>) ==
qint64(max<int>));
474static_assert(qt_saturate<short>(max<qint64>) == max<short>);
475static_assert(qt_saturate<int>(max<qint64>) == max<int>);
476static_assert(qt_saturate<unsigned>(max<qint64>) == max<unsigned>);
477static_assert(qt_saturate<quint64>(max<qint64>) ==
quint64(max<qint64>));
479static_assert(qt_saturate<short>(max<quint64>) == max<short>);
480static_assert(qt_saturate<int>(max<quint64>) == max<int>);
481static_assert(qt_saturate<unsigned>(max<quint64>) == max<unsigned>);
482static_assert(qt_saturate<qint64>(max<quint64>) == max<qint64>);
484static_assert(qt_saturate<short>(min<int>) == min<short>);
485static_assert(qt_saturate<qint64>(min<int>) ==
qint64(min<int>));
486static_assert(qt_saturate<unsigned>(min<int>) == 0);
487static_assert(qt_saturate<quint64>(min<int>) == 0);
489static_assert(qt_saturate<short>(min<qint64>) == min<short>);
490static_assert(qt_saturate<int>(min<qint64>) == min<int>);
491static_assert(qt_saturate<unsigned>(min<qint64>) == 0);
492static_assert(qt_saturate<quint64>(min<qint64>) == 0);
Combined button and popup list for selecting options.
bool qIsFinite(qfloat16 f) noexcept
bool qIsNaN(qfloat16 f) noexcept
bool qIsInf(qfloat16 f) noexcept
static quint64 d2i(double d)
Q_CORE_EXPORT int qFpClassify(double val)
static quint32 f2i(float f)
Q_CORE_EXPORT quint32 qFloatDistance(float a, float b)
Q_CORE_EXPORT Q_DECL_CONST_FUNCTION double qInf()
Q_CORE_EXPORT Q_DECL_CONST_FUNCTION double qQNaN()
static Q_DECL_CONST_FUNCTION bool qt_is_nan(double d)
constexpr static Q_DECL_CONST_FUNCTION double qt_qnan() noexcept
constexpr static Q_DECL_CONST_FUNCTION double qt_inf() noexcept
static Q_DECL_CONST_FUNCTION int qt_fpclassify(double d)
static Q_DECL_CONST_FUNCTION bool qt_is_inf(double d)
static Q_DECL_CONST_FUNCTION bool qt_is_finite(double d)
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
[7]
unsigned long long quint64