Numeric Limits

This commit is contained in:
Isuru Samarathunga
2025-10-12 12:52:02 +05:30
parent 6ce5667ada
commit 07638ea7b3

View File

@ -22,8 +22,7 @@
namespace ia namespace ia
{ {
template<typename _value_type> template<typename _value_type> using initializer_list = std::initializer_list<_value_type>;
using initializer_list = std::initializer_list<_value_type>;
#undef VOID #undef VOID
typedef void VOID; typedef void VOID;
@ -122,19 +121,31 @@ STATIC CONSTEXPR FLOAT32 FLOAT64_EPSILON = std::numeric_limits<FLOAT64>::epsilon
{ {
static BOOL __internal_validate_types() static BOOL __internal_validate_types()
{ {
if(sizeof(CHAR) != static_cast<size_t>(1)) return false; if (sizeof(CHAR) != static_cast<size_t>(1))
if(sizeof(INT8) != static_cast<size_t>(1)) return false; return false;
if(sizeof(INT16) != static_cast<size_t>(2)) return false; if (sizeof(INT8) != static_cast<size_t>(1))
if(sizeof(INT32) != static_cast<size_t>(4)) return false; return false;
if(sizeof(INT64) != static_cast<size_t>(8)) return false; if (sizeof(INT16) != static_cast<size_t>(2))
if(sizeof(UINT8) != static_cast<size_t>(1)) return false; return false;
if(sizeof(UINT16) != static_cast<size_t>(2)) return false; if (sizeof(INT32) != static_cast<size_t>(4))
if(sizeof(UINT32) != static_cast<size_t>(4)) return false; return false;
if(sizeof(UINT64) != static_cast<size_t>(8)) return false; if (sizeof(INT64) != static_cast<size_t>(8))
if(sizeof(FLOAT32) != static_cast<size_t>(4)) return false; return false;
if(sizeof(FLOAT64) != static_cast<size_t>(8)) return false; if (sizeof(UINT8) != static_cast<size_t>(1))
if(sizeof(PVOID) < static_cast<size_t>(4)) return false; return false;
if (sizeof(UINT16) != static_cast<size_t>(2))
return false;
if (sizeof(UINT32) != static_cast<size_t>(4))
return false;
if (sizeof(UINT64) != static_cast<size_t>(8))
return false;
if (sizeof(FLOAT32) != static_cast<size_t>(4))
return false;
if (sizeof(FLOAT64) != static_cast<size_t>(8))
return false;
if (sizeof(PVOID) < static_cast<size_t>(4))
return false;
return true; return true;
} }
} } // namespace types
} } // namespace ia