- Tumbleweed 2024.07.05-1.3
 - Leap-16.0
 - Leap-15.6
 
| std::indirectly_unary_invocable,std::indirectly_regular_unary_invocable(3) | C++ Standard Libary | std::indirectly_unary_invocable,std::indirectly_regular_unary_invocable(3) | 
NAME¶
std::indirectly_unary_invocable,std::indirectly_regular_unary_invocable - std::indirectly_unary_invocable,std::indirectly_regular_unary_invocable
Synopsis¶
 Defined in header <iterator>
  
   template< class F, class I >
  
   concept indirectly_unary_invocable =
  
   std::indirectly_readable<I> &&
  
   std::copy_constructible<F> &&
  
   std::invocable<F&, std::iter_value_t<I>&> &&
    (since C++20)
  
   std::invocable<F&, std::iter_reference_t<I>> &&
  
   std::invocable<F&, std::iter_common_reference_t<I>>
    &&
  
   std::common_reference_with<
  
   std::invoke_result_t<F&, std::iter_value_t<I>&>,
  
   std::invoke_result_t<F&, std::iter_reference_t<I>>>;
  
   template< class F, class I >
  
   concept indirectly_regular_unary_invocable =
  
   std::indirectly_readable<I> &&
  
   std::copy_constructible<F> &&
  
   std::regular_invocable<F&, std::iter_value_t<I>&>
    &&
  
   std::regular_invocable<F&, std::iter_reference_t<I>>
    && (since C++20)
  
   std::regular_invocable<F&, std::iter_common_reference_t<I>>
  
   &&
  
   std::common_reference_with<
  
   std::invoke_result_t<F&, std::iter_value_t<I>&>,
  
   std::invoke_result_t<F&, std::iter_reference_t<I>>>;
  
   The concepts indirectly_unary_invocable and
    indirectly_regular_unary_invocable
  
   specify requirements for algorithms that call (regular) unary invocables as
    their
  
   arguments. The key difference between these concepts and std::invocable is
    that they
  
   are applied to the type the I references, rather than I itself.
  
   Semantic requirements
  
   Each concept is modeled by F and I only if all concepts it subsume are
    modeled.
Notes¶
 The distinction between indirectly_unary_invocable and
  
   indirectly_regular_unary_invocable is purely semantic.
| 2024.06.10 | http://cppreference.com |