type traits (NOT FOR DIRECT USE IN CLIENT CODE!) no interface guarantees; might be changed or removed in the future
More...
|
template<class Fn , class Ret , class... Args> |
constexpr auto | check_is_callable (int) -> decltype(std::declval< Fn >()(std::declval< Args >()...), std::integral_constant< bool, std::is_same< Ret, typename std::result_of< Fn(Args...)>::type >::value > |
| function (class) signature type trait More...
|
|
template<class , class , class... > |
constexpr auto | check_is_callable (long) -> std::false_type |
|
template<class Fn , class Ret > |
constexpr auto | check_is_callable_without_arg (int) -> decltype(std::declval< Fn >()(), std::integral_constant< bool, std::is_same< Ret, typename std::result_of< Fn()>::type >::value > |
|
template<class , class > |
constexpr auto | check_is_callable_without_arg (long) -> std::false_type |
|
template<class Fn , class... Args> |
constexpr auto | check_is_void_callable (int) -> decltype(std::declval< Fn >()(std::declval< Args >()...), std::true_type |
|
template<class , class , class... > |
constexpr auto | check_is_void_callable (long) -> std::false_type |
|
template<class Fn > |
constexpr auto | check_is_void_callable_without_arg (int) -> decltype(std::declval< Fn >()(), std::true_type |
|
template<class > |
constexpr auto | check_is_void_callable_without_arg (long) -> std::false_type |
|
template<class T > |
constexpr auto | check_is_input_range (int) -> decltype(begin(std::declval< T >()), end(std::declval< T >()), std::true_type |
| input range type trait More...
|
|
template<class T > |
constexpr auto | check_is_input_range (char) -> decltype(std::begin(std::declval< T >()), std::end(std::declval< T >()), std::true_type |
|
template<class > |
constexpr auto | check_is_input_range (long) -> std::false_type |
|
template<class T > |
constexpr auto | check_has_size_getter (int) -> decltype(std::declval< T >().size(), std::true_type |
| size() member type trait More...
|
|
template<class > |
constexpr auto | check_has_size_getter (long) -> std::false_type |
|
type traits (NOT FOR DIRECT USE IN CLIENT CODE!) no interface guarantees; might be changed or removed in the future