Add float utilities, & float formatting with dragonbox

This commit is contained in:
2024-11-28 23:53:55 +01:00
parent 3dc9bc3a6c
commit 27c3969e69
14 changed files with 4653 additions and 20 deletions

17
asl/float.hpp Normal file
View File

@ -0,0 +1,17 @@
#pragma once
#include "asl/meta.hpp"
namespace asl
{
template<is_floating_point T> constexpr T infinity() { return __builtin_inf(); }
template<is_floating_point T> constexpr T nan() { return static_cast<T>(__builtin_nanf("")); }
template<is_floating_point T> constexpr bool is_infinity(T f) { return __builtin_isinf(f); }
template<is_floating_point T> constexpr bool is_nan(T f) { return __builtin_isnan(f); }
} // namespace asl