Less-than operators
<mrdocs/ADT/Optional.hpp>Checks if the left Optional is less than the right Optional. Returns true if the right is engaged and either the left is disengaged or its value is less.
template<
typename T,
typename U>
constexpr
/* implementation-defined */
operator<(
Optional<T> const& lhs,
Optional<U> const& rhs);
» more...
Checks if the Optional is less than a value. Returns true if the Optional is disengaged or its value is less than rhs.
template<
typename T,
typename U>
requires (!detail::isOptionalV<U>)
[[nodiscard]]
constexpr
/* implementation-defined */
operator<(
Optional<T> const& lhs,
U const& rhs);
» more...
Checks if a value is less than an engaged Optional. Returns true if the Optional is engaged and lhs is less than its value.
template<
typename T,
typename U>
requires (!detail::isOptionalV<T>)
[[nodiscard]]
constexpr
/* implementation-defined */
operator<(
T const& lhs,
Optional<U> const& rhs);
» more...
true if lhs is less than rhs according to the described rules; otherwise, false.true if the optional is disengaged or less than rhs; otherwise, false.true if the optional is engaged and lhs is less than its value; otherwise, false.