qxLib
Functions
float_compare.inl File Reference

Go to the source code of this file.

Functions

template<std::floating_point T>
constexpr bool qx::float_compare (T fLeft, T fRight, T fEps)
 Tolerance-based floating comparison. More...
 
template<class T >
constexpr bool qx::epsilon_equal (T left, T right, T eps=std::numeric_limits< T >::epsilon())
 Constexpr comparison function for a user defined epsilon values. More...
 
template<class T >
constexpr bool qx::epsilon_zero (T value, T eps=std::numeric_limits< T >::epsilon())
 Constexpr comparison with zero for a user defined epsilon values. More...
 
template<class T >
constexpr bool qx::epsilon_less_equal (T left, T right, T eps=std::numeric_limits< T >::epsilon())
 Constexpr comparison function for a user defined epsilon values. More...
 
template<class T >
constexpr bool qx::epsilon_greater_equal (T left, T right, T eps=std::numeric_limits< T >::epsilon())
 Constexpr comparison function for a user defined epsilon values. More...
 

Detailed Description

Author
Khrapov
Date
25.09.2025

Definition in file float_compare.inl.

Function Documentation

◆ epsilon_equal()

template<class T >
constexpr bool qx::epsilon_equal ( left,
right,
eps = std::numeric_limits<T>::epsilon() 
)
constexpr

Constexpr comparison function for a user defined epsilon values.

Template Parameters
T- value type
Parameters
left- left value
right- right value
eps- epsilon value
Return values
-true if |left - right| < eps

Definition at line 23 of file float_compare.inl.

◆ epsilon_greater_equal()

template<class T >
constexpr bool qx::epsilon_greater_equal ( left,
right,
eps = std::numeric_limits<T>::epsilon() 
)
constexpr

Constexpr comparison function for a user defined epsilon values.

Template Parameters
T- value type
Parameters
left- left value
right- right value
eps- epsilon value
Return values
-true if left > right or |left - right| < eps

Definition at line 41 of file float_compare.inl.

◆ epsilon_less_equal()

template<class T >
constexpr bool qx::epsilon_less_equal ( left,
right,
eps = std::numeric_limits<T>::epsilon() 
)
constexpr

Constexpr comparison function for a user defined epsilon values.

Template Parameters
T- value type
Parameters
left- left value
right- right value
eps- epsilon value
Return values
-true if left < right or |left - right| < eps

Definition at line 35 of file float_compare.inl.

◆ epsilon_zero()

template<class T >
constexpr bool qx::epsilon_zero ( value,
eps = std::numeric_limits<T>::epsilon() 
)
constexpr

Constexpr comparison with zero for a user defined epsilon values.

Template Parameters
T- value type
Parameters
value- user value
eps- epsilon value
Return values
-true if |value| < eps

Definition at line 29 of file float_compare.inl.

◆ float_compare()

template<std::floating_point T>
constexpr bool qx::float_compare ( fLeft,
fRight,
fEps = std::numeric_limits< T >::epsilon() 
)
constexpr

Tolerance-based floating comparison.

Template Parameters
T- floating point type
Parameters
fLeft- left value
fRight- right value
fEps- epsilon value
Return values
-true if two values are nearly equal based on tolerance-based floating comparison

Definition at line 14 of file float_compare.inl.