|
| constexpr bool | ghassanpl::constexpr_math::isnan (std::integral auto f) noexcept |
| constexpr bool | ghassanpl::constexpr_math::isnan (float f) |
| constexpr bool | ghassanpl::constexpr_math::isnan (double f) |
| constexpr bool | ghassanpl::constexpr_math::isfinite (std::integral auto f) noexcept |
| constexpr bool | ghassanpl::constexpr_math::isfinite (float f) |
| constexpr bool | ghassanpl::constexpr_math::isfinite (double f) |
| template<std::floating_point T, typename RESULT = T> |
| constexpr RESULT | ghassanpl::constexpr_math::floor (T num) noexcept |
| template<typename T> |
| constexpr bool | ghassanpl::constexpr_math::signbit (T num) |
| template<typename T> |
| constexpr int | ghassanpl::constexpr_math::sign (T val) |
| template<std::floating_point T, typename RESULT = T> |
| constexpr RESULT | ghassanpl::constexpr_math::ceil (T num) noexcept |
| template<std::floating_point T, typename RESULT = T> |
| constexpr RESULT | ghassanpl::constexpr_math::trunc (T num) noexcept |
| template<arithmetic T> |
| constexpr auto | ghassanpl::constexpr_math::abs (T num) |
| template<arithmetic T, arithmetic U, arithmetic V> |
| constexpr auto | ghassanpl::constexpr_math::fma (T a, U b, V c) noexcept |
| template<arithmetic T, arithmetic U> |
| constexpr auto | ghassanpl::constexpr_math::fmod (T a, U b) noexcept |
| template<arithmetic T> |
| constexpr auto | ghassanpl::constexpr_math::sqrt (T value) noexcept |
| template<arithmetic T, arithmetic U> |
| constexpr auto | ghassanpl::constexpr_math::pow (T base, U exponent) noexcept |
| template<std::integral T> |
| constexpr unsigned | ghassanpl::constexpr_math::ilog2 (T val) noexcept |
| constexpr double | ghassanpl::constexpr_math::unlerp (const double a, const double b, const double t) noexcept |
A re-implementation of some of the <cmath> functions but constexpr.