00001 #ifndef ENABLE_IF_H
00002 #define ENABLE_IF_H
00003
00004
00005
00006
00007
00008 namespace HepMC {
00009 namespace detail {
00010
00011
00012
00013
00014
00016 template< bool, class >
00017 struct enable_if
00018 { };
00019
00021 template< class T >
00022 struct enable_if<true, T>
00023 {
00024 typedef T type;
00025 };
00026
00027
00028
00029
00030
00032 template< bool, class >
00033 struct disable_if
00034 { };
00035
00037 template< class T >
00038 struct disable_if<false, T>
00039 {
00040 typedef T type;
00041 };
00042
00043
00044
00045
00046
00047 }
00048 }
00049
00050 #endif // ENABLE_IF_H