peerplays-fc/include/fc/utility.hpp

19 lines
496 B
C++
Raw Normal View History

2013-03-01 23:56:06 +00:00
#pragma once
2012-09-08 02:50:37 +00:00
#include <stdint.h>
#include <cstdlib>
2012-09-08 02:50:37 +00:00
namespace fc {
using std::size_t;
struct true_type { enum _value { value = 1 }; };
struct false_type { enum _value { value = 0 }; };
2012-09-08 02:50:37 +00:00
namespace detail {
template<typename T> fc::true_type is_class_helper(void(T::*)());
template<typename T> fc::false_type is_class_helper(...);
2012-09-08 02:50:37 +00:00
}
2012-09-08 02:50:37 +00:00
template<typename T>
struct is_class { typedef decltype(detail::is_class_helper<T>(0)) type; enum value_enum { value = type::value }; };
2012-12-03 19:51:31 +00:00
}