49#ifndef MICRO_TEST_PLUS_FUNCTION_COMPARATORS_INLINES_H_
50#define MICRO_TEST_PLUS_FUNCTION_COMPARATORS_INLINES_H_
59#pragma GCC diagnostic push
60#pragma GCC diagnostic ignored "-Waggregate-return"
62#pragma clang diagnostic ignored "-Wc++98-compat"
63#pragma clang diagnostic ignored "-Wc++98-compat-pedantic"
81 template <
class Lhs_T,
class Rhs_T>
83 eq (
const Lhs_T& lhs,
const Rhs_T& rhs)
96 template <
class Lhs_T,
class Rhs_T>
98 eq (Lhs_T* lhs, Rhs_T* rhs)
111 template <
class Lhs_T,
class Rhs_T>
113 ne (
const Lhs_T& lhs,
const Rhs_T& rhs)
126 template <
class Lhs_T,
class Rhs_T>
128 ne (Lhs_T* lhs, Rhs_T* rhs)
141 template <
class Lhs_T,
class Rhs_T>
143 gt (
const Lhs_T& lhs,
const Rhs_T& rhs)
156 template <
class Lhs_T,
class Rhs_T>
158 gt (Lhs_T* lhs, Rhs_T* rhs)
171 template <
class Lhs_T,
class Rhs_T>
173 ge (
const Lhs_T& lhs,
const Rhs_T& rhs)
187 template <
class Lhs_T,
class Rhs_T>
189 ge (Lhs_T* lhs, Rhs_T* rhs)
202 template <
class Lhs_T,
class Rhs_T>
204 lt (
const Lhs_T& lhs,
const Rhs_T& rhs)
217 template <
class Lhs_T,
class Rhs_T>
219 lt (Lhs_T* lhs, Rhs_T* rhs)
232 template <
class Lhs_T,
class Rhs_T>
234 le (
const Lhs_T& lhs,
const Rhs_T& rhs)
248 template <
class Lhs_T,
class Rhs_T>
250 le (Lhs_T* lhs, Rhs_T* rhs)
269 template <
class Expr_T>
287 template <
class Lhs_T,
class Rhs_T>
289 _and (
const Lhs_T& lhs,
const Rhs_T& rhs)
305 template <
class Lhs_T,
class Rhs_T>
307 _or (
const Lhs_T& lhs,
const Rhs_T& rhs)
325 mut (
const T& t)
noexcept -> T&
327 return const_cast<T&
> (t);
334#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.