NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
invoke.hpp 文件参考

统一调用接口 更多...

invoke.hpp 的引用(Include)关系图:

浏览该文件的源代码.

struct  invoke_result< F(Args...)>
 invoke_result的特化版本 更多...
struct  is_invocable< F, Args >
 判断类型是否可调用 更多...
struct  is_invocable_r< Ret, F, Args >
 判断类型是否可调用并返回指定类型 更多...
struct  is_nothrow_invocable< F, Args >
 判断调用是否不会抛出异常 更多...

类型定义

template<typename F, typename... Args>
using invoke_result_t = typename inner::__invoke_result_aux<F, Args...>::type
 invoke_result的便捷别名

函数

template<typename Callable, typename... Args>
NEFORCE_CONSTEXPR14 inner::__invoke_result_aux< Callable, Args... >::type invoke (Callable &&f, Args &&... args) noexcept(is_nothrow_invocable< Callable, Args... >::value)
 统一调用接口
template<typename Res, typename Callable, typename... Args>
NEFORCE_CONSTEXPR14 enable_if_t< is_invocable_r< Res, Callable, Args... >::value, Res > invoke_r (Callable &&f, Args &&... args) noexcept(is_nothrow_invocable< Callable, Args... >::value)
 带返回类型检查的统一调用接口

变量

template<typename F, typename... Args>
NEFORCE_INLINE17 constexpr bool is_invocable_v = is_invocable<F, Args...>::value
 is_invocable的便捷变量模板
template<typename Ret, typename F, typename... Args>
NEFORCE_INLINE17 constexpr bool is_invocable_r_v = is_invocable_r<Ret, F, Args...>::value
 is_invocable_r的便捷变量模板
template<typename F, typename... Args>
NEFORCE_INLINE17 constexpr bool is_nothrow_invocable_v = is_nothrow_invocable<F, Args...>::value
 is_nothrow_invocable的便捷变量模板

详细描述

统一调用接口

此文件提供了统一的可调用接口,并提供相关的可调用性检查工具。

在文件 invoke.hpp 中定义.