kblib 0.2.3
General utilities library for modern C++
|
#include <kblib/fakestd.h>
Public Types | |
using | Result = decltype(try_call< Fp, Args... >(0)) |
using | type = typename std::conditional< not std::is_same< Result, detail::nat >::value, typename std::conditional< std::is_void< Ret >::value, std::true_type, std::is_convertible< Result, Ret > >::type, std::false_type >::type |
Static Public Member Functions | |
template<class XFp , class... XArgs> | |
static auto | try_call (int) -> decltype(kblib::invoke(std::declval< XFp >(), std::declval< XArgs >()...)) |
template<class XFp , class... XArgs> | |
static auto | try_call (...) -> detail::nat |
Static Public Attributes | |
static const bool | value = type::value |
using kblib::fakestd::detail::invokable_r< Ret, Fp, Args >::Result = decltype(try_call<Fp, Args...>(0)) |
using kblib::fakestd::detail::invokable_r< Ret, Fp, Args >::type = typename std::conditional< not std::is_same<Result, detail::nat>::value, typename std::conditional<std::is_void<Ret>::value, std::true_type, std::is_convertible<Result, Ret> >::type, std::false_type>::type |
|
static |
|
static |
|
static |