Function to_chars_float
Synopsis
#include <src/c4/yml/tree.hpp>
template <class T>
size_t to_chars_float(substr buf, T val)
Description
No description yet.
Source
Lines 43-56 in src/c4/yml/tree.hpp.
template<class T>
size_t to_chars_float(substr buf, T val)
{
C4_SUPPRESS_WARNING_GCC_CLANG_WITH_PUSH("-Wfloat-equal");
static_assert(std::is_floating_point<T>::value, "must be floating point");
if(C4_UNLIKELY(std::isnan(val)))
return to_chars(buf, csubstr(".nan"));
else if(C4_UNLIKELY(val == std::numeric_limits<T>::infinity()))
return to_chars(buf, csubstr(".inf"));
else if(C4_UNLIKELY(val == -std::numeric_limits<T>::infinity()))
return to_chars(buf, csubstr("-.inf"));
return to_chars(buf, val);
C4_SUPPRESS_WARNING_GCC_CLANG_POP
}