From 10b3e4fbd0779833d3f2c7cff3c1d802664fa358 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 22 Nov 2025 07:55:15 -0500 Subject: feat: lib: logic module improvements. Signed-off-by: Amlal El Mahrouss --- dev/lib/fix/fix.hpp | 8 ++++---- dev/lib/logic/equiv.hpp | 2 +- dev/lib/logic/math.hpp | 8 +++----- 3 files changed, 8 insertions(+), 10 deletions(-) (limited to 'dev') diff --git a/dev/lib/fix/fix.hpp b/dev/lib/fix/fix.hpp index 4f02e28..08360d5 100644 --- a/dev/lib/fix/fix.hpp +++ b/dev/lib/fix/fix.hpp @@ -35,22 +35,22 @@ namespace ocl::fix namespace detail { template - const char_type* begin_fix(); + const char_type* begin_fix() noexcept; template <> - inline const char* begin_fix() + inline const char* begin_fix() noexcept { return "FIX.4.2"; } template <> - inline const char16_t* begin_fix() + inline const char16_t* begin_fix() noexcept { return u"FIX.4.2"; } template <> - inline const char8_t* begin_fix() + inline const char8_t* begin_fix() noexcept { return u8"FIX.4.2"; } diff --git a/dev/lib/logic/equiv.hpp b/dev/lib/logic/equiv.hpp index 1d16958..1bdb6d9 100644 --- a/dev/lib/logic/equiv.hpp +++ b/dev/lib/logic/equiv.hpp @@ -1,6 +1,6 @@ /* * File: equiv.hpp - * Purpose: Equivalence runtime c++ header. + * Purpose: Equivalence header. * Author: Amlal El Mahrouss (amlal@nekernel.org) * Copyright 2025, Amlal El Mahrouss, licensed under the Boost Software License. */ diff --git a/dev/lib/logic/math.hpp b/dev/lib/logic/math.hpp index ce73aa6..52f4535 100644 --- a/dev/lib/logic/math.hpp +++ b/dev/lib/logic/math.hpp @@ -7,11 +7,9 @@ #pragma once -#include - namespace ocl { - template + template <__SIZE_TYPE__ T> struct is_non_boolean_integer final { static constexpr const bool value = true; @@ -29,7 +27,7 @@ namespace ocl static constexpr const bool value = false; }; - constexpr inline auto not_a_number = NAN; - constexpr inline auto positive_infinity = INFINITY; + constexpr inline auto not_a_number = __builtin_nanf (""); + constexpr inline auto positive_infinity = __builtin_inff (); constexpr inline auto negative_infinity = -positive_infinity; } // namespace ocl \ No newline at end of file -- cgit v1.2.3