Shorter solution

This commit is contained in:
Kirill Lokotkov 2023-01-25 19:04:11 +03:00 committed by GitHub
parent ee0ceac55d
commit 6602684996
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -832,12 +832,9 @@ class serializer
// the actual conversion // the actual conversion
// NOLINTNEXTLINE(cppcoreguidelines-pro-type-vararg,hicpp-vararg) // NOLINTNEXTLINE(cppcoreguidelines-pro-type-vararg,hicpp-vararg)
std::ptrdiff_t len; std::ptrdiff_t len = (std::snprintf)(number_buffer.data(), number_buffer.size(),
if (std::is_same<number_float_t, long double>::value) { std::is_same<number_float_t, long double>::value ? "%.*Lg" : "%.*g",
len = (std::snprintf)(number_buffer.data(), number_buffer.size(), "%.*Lg", d, x); d, x);
} else {
len = (std::snprintf)(number_buffer.data(), number_buffer.size(), "%.*g", d, x);
}
// negative value indicates an error // negative value indicates an error
JSON_ASSERT(len > 0); JSON_ASSERT(len > 0);