- Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::ranges::equal_to(3) | C++ Standard Libary | std::ranges::equal_to(3) | 
NAME¶
std::ranges::equal_to - std::ranges::equal_to
Synopsis¶
 Defined in header <functional>
  
   struct equal_to; (since C++20)
  
   Function object for performing comparisons. The parameter types of the
    function call
  
   operator (but not the return type) are deduced from the arguments.
Member functions¶
 operator() checks if the arguments are equal
  
   (public member function)
std::ranges::equal_to::operator()
  
   template< class T, class U >
  
   constexpr bool operator()( T&& t, U&& u ) const;
  
   Given the expression std::forward<T>(t) == std::forward<U>(u) as
    expr:
  
   * If expr results in a call to built-in operator== comparing pointers, given
    the
  
   composite pointer type of t and u as P:
  
   * For the two converted pointers (of type P), if one pointer precedes the
    other in
  
   the implementation-defined strict total order over pointers, returns false,
  
   otherwise returns true.
  
   * If the conversion sequence from T to P or the conversion sequence from U to
    P is
  
   not equality-preserving, the behavior is undefined.
  
   * Otherwise:
  
   * Returns the result of expr.
  
   * If std::equality_comparable_with<T, U> is not modeled, the behavior
    is
  
   undefined.
  
   This overload participates in overload resolution only if
  
   std::equality_comparable_with<T, U> is satisfied.
Notes¶
 Compared to std::equal_to, std::ranges::equal_to additionally
    requires != to be
  
   valid, and that both argument types are required to be (homogeneously)
    comparable
  
   with themselves (via the equality_comparable_with constraint).
Example¶
 This section is incomplete
  
   Reason: no example
  
   Defect reports
  
   The following behavior-changing defect reports were applied retroactively to
  
   previously published C++ standards.
  
   DR Applied to Behavior as published Correct behavior
  
   LWG 3530 C++20 syntactic checks were relaxed only semantic requirements are
  
   while comparing pointers relaxed
See also¶
 equal_to function object implementing x == y
  
   (class template)
Category:¶
* Todo no example
| 2024.06.10 | http://cppreference.com |