Function and function object utilities.
|
template<typename T > |
using | ranges::bind_element_t = meta::_t< bind_element< T > > |
|
template<typename Fun , typename... Args> |
using | ranges::invoke_result_t = decltype(invoke(std::declval< Fun >(), std::declval< Args >()...)) |
|
template<typename T > |
using | ranges::is_pipeable = meta::bool_< is_pipeable_v< T > > |
|
template<typename T > |
using | ranges::is_reference_wrapper = meta::bool_< is_reference_wrapper_v< T > > |
|
using | ranges::ordered_less = less |
|
template<typename > |
using | ranges::pipeable = pipeable_base |
|
template<typename T > |
using | ranges::ref_t = decltype(ref(std::declval< T >())) |
|
template<typename T > |
using | ranges::unwrap_reference_t = decltype(unwrap_reference(std::declval< T >())) |
|
|
template<typename T > |
T && | ranges::bind_forward (meta::_t< std::remove_reference< T >> &&t) noexcept |
|
template<typename T , typename U = meta::if_< std::is_lvalue_reference<T>, std::reference_wrapper<meta::_t<std::remove_reference<T>>>, T &&>> |
U | ranges::bind_forward (meta::_t< std::remove_reference< T >> &t) noexcept |
|
|
constexpr compose_fn | ranges::compose {} |
|
constexpr indirect_fn | ranges::indirect {} |
|
template<typename Fun , typename... Args> |
concept | ranges::invocable |
|
constexpr invoke_fn | ranges::invoke {} |
|
template<typename Fn , typename... Args> |
constexpr bool | ranges::is_invocable_v |
|
template<typename Fn , typename... Args> |
constexpr bool | ranges::is_nothrow_invocable_v |
|
template<typename T > |
constexpr bool | ranges::is_pipeable_v = std::is_base_of< pipeable_base, T >::value |
|
template<typename T > |
constexpr bool | ranges::is_pipeable_v< T & > |
|
template<typename T > |
constexpr bool | ranges::is_pipeable_v< T && > |
|
template<typename T > |
constexpr bool | ranges::is_reference_wrapper_v |
|
constexpr make_pipeable_fn | ranges::make_pipeable {} |
|
constexpr not_fn_fn | ranges::not_fn {} |
|
constexpr on_fn | ranges::on {} |
|
constexpr overload_fn | ranges::overload {} |
|
template<typename Fun , typename... Args> |
concept | ranges::predicate |
|
constexpr protect_fn | ranges::protect {} |
| Protect a callable so that it can be safely used in a bind expression without accidentally becoming a "nested" bind. More...
|
|
constexpr ref_fn | ranges::ref {} |
|
template<typename Fun , typename... Args> |
concept | ranges::regular_invocable |
|
template<typename R , typename T , typename U > |
concept | ranges::relation |
|
template<typename R , typename T , typename U > |
concept | ranges::strict_weak_order |
|
constexpr unwrap_reference_fn | ranges::unwrap_reference {} |
|
◆ compose
◆ indirect
◆ invocable
template<typename Fun , typename... Args>
concept ranges::invocable |
◆ is_invocable_v
template<typename Fn , typename... Args>
constexpr bool ranges::is_invocable_v |
|
constexpr |
◆ is_nothrow_invocable_v
template<typename Fn , typename... Args>
constexpr bool ranges::is_nothrow_invocable_v |
|
constexpr |
◆ is_pipeable_v< T & >
template<typename T >
constexpr bool ranges::is_pipeable_v< T & > |
|
constexpr |
◆ is_pipeable_v< T && >
template<typename T >
constexpr bool ranges::is_pipeable_v< T && > |
|
constexpr |
◆ is_reference_wrapper_v
template<typename T >
constexpr bool ranges::is_reference_wrapper_v |
|
constexpr |
◆ make_pipeable
◆ not_fn
◆ on
constexpr on_fn ranges::on {} |
|
constexpr |
◆ overload
◆ predicate
template<typename Fun , typename... Args>
concept ranges::predicate |
#include <range/v3/functional/concepts.hpp>
Initial value:=
regular_invocable<Fun, Args...> &&
requires( CPP_PP_FOR_EACH_1 /( CPP_arg , (Fun&&) fn ))
(
concepts::requires_<
convertible_to<
decltype(
invoke(((decltype( fn )&&) fn ), std::declval<Args>()...)),
bool>>
)
◆ protect
◆ ref
constexpr ref_fn ranges::ref {} |
|
related |
◆ regular_invocable
template<typename Fun , typename... Args>
concept ranges::regular_invocable |
◆ relation
template<typename R , typename T , typename U >
◆ strict_weak_order
template<typename R , typename T , typename U >
concept ranges::strict_weak_order |
◆ unwrap_reference