is_handle.h
Go to the documentation of this file.
1 #ifndef canvas_Persistency_Common_detail_is_handle_h
2 #define canvas_Persistency_Common_detail_is_handle_h
3 
5 
6 #include <type_traits>
7 
8 namespace art {
9  namespace detail {
10  template <class T, class Enable = void>
11  struct is_handle : std::false_type {};
12 
13  template <class T>
14  struct is_handle<T, cet::enable_if_type_exists_t<typename T::HandleTag>>
15  : std::true_type {};
16 
17  template <class T, class U>
18  struct are_handles {
19  static constexpr bool value{detail::is_handle<T>::value &&
21  };
22  }
23 }
24 #endif /* canvas_Persistency_Common_detail_is_handle_h */
25 
26 // Local Variables:
27 // mode: c++
28 // End:
const XML_Char int const XML_Char * value
Definition: expat.h:331
Service to store calibration data products (CDP) in the SQLite3 metadatabase of a file...
Definition: FillParentInfo.h:8
double T
Definition: Xdiff_gwt.C:5
typename enable_if_type_exists< T >::type enable_if_type_exists_t