Range-v3
Range algorithms, views, and actions for the Standard Library
concepts.hpp File Reference

Functions

 ranges::CPP_PP_CAT (CPP_PP_DEF_, template(typename Fun, typename... Args)) META_CONCEPT CPP_PP_CAT(CPP_PP_DEF_
 
 ranges::CPP_PP_CAT (CPP_PP_DEF_, template(typename R, typename T, typename U)) META_CONCEPT CPP_PP_CAT(CPP_PP_DEF_
 

Variables

concept ranges::invocable = CPP_PP_CAT( CPP_PP_DEF_IMPL_IS_PAREN_, 0 )( requires (Fun&& fn) ( invoke(static_cast<Fun &&>(fn), std::declval<Args>()...) ) )( requires (Fun&& fn) ( invoke(static_cast<Fun &&>(fn), std::declval<Args>()...) ) )
 
concept ranges::predicate = CPP_PP_CAT( CPP_PP_DEF_IMPL_IS_PAREN_, 0 )( regular_invocable<Fun )( regular_invocable<Fun, Args...> && convertible_to<invoke_result_t<Fun, Args...>, bool> )
 
concept ranges::regular_invocable = CPP_PP_CAT( CPP_PP_DEF_IMPL_IS_PAREN_, 0 )( invocable<Fun )( invocable<Fun, Args...> )
 
concept ranges::relation = CPP_PP_CAT( CPP_PP_DEF_IMPL_IS_PAREN_, 0 )( predicate<R )( predicate<R, T, T> && predicate<R, U, U> && predicate<R, T, U> && predicate<R, U, T> )
 
concept ranges::strict_weak_order = CPP_PP_CAT( CPP_PP_DEF_IMPL_IS_PAREN_, 0 )( relation<R )( relation<R, T, U> )