|  | Home | Libraries | People | FAQ | More | 
template<class Expected, template<class...> class Op, class... Args> using is_detected_exact = is_same<Expected, detected_t<Op, Args...> >; template<class Expected, template<class...> class Op, class... Args> constexpr bool is_detected_exact_v = is_detected_exact<Op, Args...>::value;
C++ Standard Paper: N4502
Compiler Compatibility: Requires C++11 variadic templates and C++11 template aliases.
        Header: #include
        <boost/type_traits/is_detected_exact.hpp>
      
        The type is_detected_exact<To, Op,
        Args>
        is an alias for true_type
        if the result of Op<Args>
        is type To. Otherwise it's
        the type false_type;
      
Examples:
template<class T> using difference_t = typename T::difference_type; static_assert(boost::is_detected_exact_v<std::ptrdiff_t, difference_t, T>);
See also: is_detected, is_detected_convertible.