49#ifndef MICRO_OS_PLUS_MICRO_TEST_PLUS_INLINES_FUNCTION_COMPARATORS_INLINES_H_
50#define MICRO_OS_PLUS_MICRO_TEST_PLUS_INLINES_FUNCTION_COMPARATORS_INLINES_H_
54#if defined(__cplusplus)
59#pragma GCC diagnostic push
61#pragma GCC diagnostic ignored "-Waggregate-return"
63#pragma clang diagnostic ignored "-Wc++98-compat"
64#pragma clang diagnostic ignored "-Wc++98-compat-pedantic"
82 template <
class Lhs_T,
class Rhs_T>
84 eq (
const Lhs_T& lhs,
const Rhs_T& rhs)
97 template <
class Lhs_T,
class Rhs_T>
99 eq (Lhs_T* lhs, Rhs_T* rhs)
112 template <
class Lhs_T,
class Rhs_T>
114 ne (
const Lhs_T& lhs,
const Rhs_T& rhs)
127 template <
class Lhs_T,
class Rhs_T>
129 ne (Lhs_T* lhs, Rhs_T* rhs)
142 template <
class Lhs_T,
class Rhs_T>
144 gt (
const Lhs_T& lhs,
const Rhs_T& rhs)
157 template <
class Lhs_T,
class Rhs_T>
159 gt (Lhs_T* lhs, Rhs_T* rhs)
172 template <
class Lhs_T,
class Rhs_T>
174 ge (
const Lhs_T& lhs,
const Rhs_T& rhs)
188 template <
class Lhs_T,
class Rhs_T>
190 ge (Lhs_T* lhs, Rhs_T* rhs)
203 template <
class Lhs_T,
class Rhs_T>
205 lt (
const Lhs_T& lhs,
const Rhs_T& rhs)
218 template <
class Lhs_T,
class Rhs_T>
220 lt (Lhs_T* lhs, Rhs_T* rhs)
233 template <
class Lhs_T,
class Rhs_T>
235 le (
const Lhs_T& lhs,
const Rhs_T& rhs)
249 template <
class Lhs_T,
class Rhs_T>
251 le (Lhs_T* lhs, Rhs_T* rhs)
270 template <
class Expr_T>
288 template <
class Lhs_T,
class Rhs_T>
290 _and (
const Lhs_T& lhs,
const Rhs_T& rhs)
306 template <
class Lhs_T,
class Rhs_T>
308 _or (
const Lhs_T& lhs,
const Rhs_T& rhs)
326 mut (
const T& t)
noexcept -> T&
328 return const_cast<T&
> (t);
335#pragma GCC diagnostic pop
constexpr auto le(const Lhs_T &lhs, const Rhs_T &rhs)
Generic less than or equal comparator.
constexpr auto ge(const Lhs_T &lhs, const Rhs_T &rhs)
Generic greater than or equal comparator.
constexpr auto ne(const Lhs_T &lhs, const Rhs_T &rhs)
Generic non-equality comparator.
constexpr auto lt(const Lhs_T &lhs, const Rhs_T &rhs)
Generic less than comparator.
constexpr auto gt(const Lhs_T &lhs, const Rhs_T &rhs)
Generic greater than comparator.
constexpr auto eq(const Lhs_T &lhs, const Rhs_T &rhs)
Generic equality comparator for non-pointer types.
constexpr auto _and(const Lhs_T &lhs, const Rhs_T &rhs)
Generic logical and operation.
constexpr auto _or(const Lhs_T &lhs, const Rhs_T &rhs)
Generic logical or operation.
constexpr auto _not(const Expr_T &expr)
Generic logical not operation.
constexpr auto mut(const T &t) noexcept -> T &
Generic mutator to remove const qualification from any type.
Primary namespace for the µTest++ testing framework.
Logical AND comparator struct template.
Equality comparator struct template.
Greater than or equal comparator struct template.
Greater than comparator struct template.
Less than or equal comparator struct template.
Less than comparator struct template.
Non-equality comparator struct template.
Logical NOT comparator struct template.
Logical OR comparator struct template.