My Project
is_detected.hpp
Go to the documentation of this file.
1 
28 #ifndef BSL_IS_DETECTED_HPP
29 #define BSL_IS_DETECTED_HPP
30 
31 #include "detected.hpp"
32 #include "is_convertible.hpp"
33 #include "is_same.hpp"
34 
35 namespace bsl
36 {
41  template<template<class...> class Op, typename... Args>
42  using is_detected = typename details::detector<nonesuch, void, Op, Args...>::value_t;
43 
46  template<class Expected, template<class...> class Op, class... Args>
47  using is_detected_exact = is_same<Expected, detected_t<Op, Args...>>;
48 
51  template<class To, template<class...> class Op, class... Args>
53 }
54 
55 #endif
Used by is_detected to indicate detection failure.
Definition: nonesuch.hpp:38
If the provided type is convertible from "From" to "To", provides the member constant value equal to ...
Definition: is_convertible.hpp:48
If the provided types are the same, provides the member constant value equal to true....
Definition: is_same.hpp:48
typename details::detector< nonesuch, void, Op, Args... >::type detected_t
The alias template detected_t is equivalent to typename detected_or<bsl::nonesuch,...
Definition: detected.hpp:41
typename details::detector< nonesuch, void, Op, Args... >::value_t is_detected
The alias template is_detected is equivalent to typename detected_or<bsl::nonesuch,...
Definition: is_detected.hpp:42