bsl::operator<=

Less-than-or-equal operators

Synopses

Declared in <bslstl_optional.h>

Return true if the specified lhs optional object is ordered before the specified rhs optional object or if lhs and rhs have the same value, and false otherwise. (See operator< and operator==.) This function can be called in constant expressions only if neither t_LHS_TYPE nor t_RHS_TYPE is allocator-aware.

template<
    class t_LHS_TYPE,
    class t_RHS_TYPE>
constexpr
bool
operator<=(
    bsl::optional<t_LHS_TYPE> const& lhs,
    bsl::optional<t_RHS_TYPE> const& rhs);
» more...

Return true if the specified lhs optional object is ordered before the specified rhs or lhs and rhs have the same value, and false otherwise. (See operator< and operator==.) This function can be called in constant expressions only if t_LHS_TYPE is not allocator-aware.

template<
    class t_LHS_TYPE,
    class t_RHS_TYPE>
constexpr
bool
operator<=(
    bsl::optional<t_LHS_TYPE> const& lhs,
    t_RHS_TYPE const& rhs);
» more...

Return true if the specified lhs is ordered before the specified rhs optional object or lhs and rhs have the same value, and false otherwise. (See operator< and operator==.) This function can be called in constant expressions only if t_RHS_TYPE is not allocator-aware.

template<
    class t_LHS_TYPE,
    class t_RHS_TYPE>
constexpr
bool
operator<=(
    t_LHS_TYPE const& lhs,
    bsl::optional<t_RHS_TYPE> const& rhs);
» more...

Return true if the specified lhs is ordered before the specified rhs optional object or lhs and rhs have the same value, and false otherwise. (See operator< and operator==.) Note that this function will fail to compile if t_LHS_TYPE and t_RHS_TYPE are not compatible. These functions can be called in constant expressions only if the bsl::optional's value type is not allocator-aware.

template<
    class t_LHS_TYPE,
    class t_RHS_TYPE>
constexpr
bool
operator<=(
    bsl::optional<t_LHS_TYPE> const& lhs,
    std::optional<t_RHS_TYPE> const& rhs);
» more...

Compare a std::optional with a bsl::optional using less-than-or-equal.

template<
    class t_LHS_TYPE,
    class t_RHS_TYPE>
constexpr
bool
operator<=(
    std::optional<t_LHS_TYPE> const& lhs,
    bsl::optional<t_RHS_TYPE> const& rhs);
» more...

Return whether the specified stacks compare lexicographically; see the non-member operator<= in the bsl namespace.

bool
operator<=(
    stack<VAL, CONT> const&,
    stack<VAL, CONT> const&);
» more...

Return true if the value of the specified lhs stack is lexicographically less than or equal to that of the specified rhs stack, and false otherwise. The value of stack lhs is lexicographically less than or equal to that of stack rhs if rhs is not lexicographically less than lhs (see operator<). This method requires that operator<, inducing a total order, be defined for value_type. Note that this operator returns !(rhs < lhs).

template<
    class VALUE,
    class CONTAINER>
bool
operator<=(
    stack<VALUE, CONTAINER> const& lhs,
    stack<VALUE, CONTAINER> const& rhs);
» more...

Return true if the index of the active alternative in the specified lhs is less than that of the specified rhs, or if both have the same active alternative and the contained value of lhs compares less than or equal to that of rhs, or if lhs is valueless by exception; otherwise, return false. All alternatives shall support operator<=.

template<
    class t_HEAD,
    class... t_TAIL>
bool
operator<=(
    variant<t_HEAD, t_TAIL...> const& lhs,
    variant<t_HEAD, t_TAIL...> const& rhs);
» more...

Return whether the specified queues compare lexicographically; see the non-member operator<= in the bsl namespace.

bool
operator<=(
    queue<VALUE2, CONTAINER2> const&,
    queue<VALUE2, CONTAINER2> const&);
» more...

Return true if the value of the specified lhs queue is lexicographically less than or equal to that of the specified rhs queue, and false otherwise. The value of queue lhs is lexicographically less than or equal to that of queue rhs if rhs is not lexicographically less than lhs (see operator<). This method requires that operator<, inducing a total order, be defined for value_type. Note that this operator returns !(rhs < lhs).

template<
    class VALUE,
    class CONTAINER>
bool
operator<=(
    queue<VALUE, CONTAINER> const& lhs,
    queue<VALUE, CONTAINER> const& rhs);
» more...

Return true if __x is lexicographically less than or equal to __y.

template<
    class _Tp,
    class _Alloc>
bool
operator<=(
    slist<_Tp, _Alloc> const& __x,
    slist<_Tp, _Alloc> const& __y);
» more...