Equality operators
<mrdocs/ADT/Optional.hpp>Equality operator
template<
class U,
class E2>
requires std::is_void_v<U>
constexpr
bool
operator==(
Expected const& x,
Expected<U, E2> const& y) noexcept(noexcept(bool(x.error() == y.error())));
» more...
Equality operator
constexpr
bool
operator==(
Iterator const& it,
std::default_sentinel_t rhs) noexcept;
» more...
Equality operator
constexpr
bool
operator==(
ParseResult const& lhs,
ParseResult const& rhs) = default;
» more...
Equality operator
bool
operator==(
Optional<TemplateInfo> const& lhs,
Optional<TemplateInfo> const& rhs);
» more...
Equality operator
bool
operator==(
Polymorphic<TParam> const& lhs,
Polymorphic<TParam> const& rhs);
» more...
Equality operator
bool
operator==(
Polymorphic<Name> const& lhs,
Polymorphic<Name> const& rhs);
» more...
Equality operator
bool
operator==(
Optional<Polymorphic<Type>> const& lhs,
Optional<Polymorphic<Type>> const& rhs);
» more...
Equality operator
bool
operator==(
Polymorphic<Type> const& lhs,
Polymorphic<Type> const& rhs);
» more...
Equality operator
template<
class U,
class E2>
constexpr
bool
operator==(
Expected const& x,
Expected<U, E2> const& y) noexcept(noexcept(bool(*x == *y)) && noexcept(bool(x.error() == y.error())))
requires (!std::is_void_v<U>);
» more...
Equality operator
template<class U>
constexpr
bool
operator==(
Expected const& x,
U const& v) noexcept(noexcept(bool(*x == v)));
» more...
Equality operator
template<class E2>
constexpr
bool
operator==(
Expected const& x,
Unexpected<E2> const& e) noexcept(noexcept(bool(x.error() == e.error())));
» more...
Equality operator
constexpr
bool
operator==(
ArrayView a,
ArrayView b) noexcept
requires requires (const T& x, const T& y) { { x == y } -> std::convertible_to<bool>; };
» more...
Equality operator
template<
class U,
class E2>
requires (!std::is_void_v<U>)
constexpr
bool
operator==(
Expected const& x,
Expected<U, E2> const& y) noexcept(noexcept(bool(*x == *y)) && noexcept(bool(x.error() == y.error())));
» more...
Equality operator
template<class U>
constexpr
bool
operator==(
Expected const& x,
U const& v) noexcept(noexcept(bool(*x == v)));
» more...
Equality operator
template<class E2>
constexpr
bool
operator==(
Expected const& x,
Unexpected<E2> const& e) noexcept(noexcept(bool(x.error() == e.error())));
» more...
Equality operator
template<class Er>
[[nodiscard]]
constexpr
bool
operator==(
Unexpected const& x,
Unexpected<Er> const& y);
» more...
Equality operator
template<class Base>
requires detail::CanVisitCompare<Base>
bool
operator==(
Polymorphic<Base> const& lhs,
Polymorphic<Base> const& rhs);
» more...
Compares a value to an engaged Optional for equality. Returns true if the Optional is engaged and its value equals lhs.
template<
typename T,
typename U>
requires (!detail::isOptionalV<T>)
constexpr
/* implementation-defined */
operator==(
T const& lhs,
Optional<U> const& rhs);
» more...
Compares an engaged Optional to a value for equality. Returns true if the Optional is engaged and its value equals rhs.
template<
typename T,
typename U>
requires (!detail::isOptionalV<U>)
constexpr
/* implementation-defined */
operator==(
Optional<T> const& lhs,
U const& rhs);
» more...
Checks if the Optional is disengaged (equal to std::nullopt). Returns true if the Optional does not contain a value.
template<typename T>
[[nodiscard]]
constexpr
bool
operator==(
Optional<T> const& lhs,
std::nullopt_t rhs) noexcept;
» more...
Compares two Optional values for equality. Returns true if both are engaged and their contained values are equal, or both are disengaged.
template<
typename T,
typename U>
constexpr
/* implementation-defined */
operator==(
Optional<T> const& lhs,
Optional<U> const& rhs);
» more...
true if the optional is engaged and equal to lhs; otherwise, false.true if the optional is engaged and equal to rhs; otherwise, false.true if the optional is disengaged; otherwise, false.true if both optionals are engaged and equal, or both are disengaged; otherwise, false.