29 #ifndef _GLIBCXX_TYPEINDEX
30 #define _GLIBCXX_TYPEINDEX 1
32 #pragma GCC system_header
34 #if __cplusplus < 201103L
40 namespace std _GLIBCXX_VISIBILITY(default)
42 _GLIBCXX_BEGIN_NAMESPACE_VERSION
55 : _M_target(&__rhs) { }
59 {
return *_M_target == *__rhs._M_target; }
63 {
return *_M_target != *__rhs._M_target; }
67 {
return _M_target->before(*__rhs._M_target); }
71 {
return !__rhs._M_target->before(*_M_target); }
75 {
return __rhs._M_target->before(*_M_target); }
79 {
return !_M_target->before(*__rhs._M_target); }
83 {
return _M_target->hash_code(); }
87 {
return _M_target->
name(); }
93 template<
typename _Tp>
struct hash;
99 typedef size_t result_type;
104 {
return __ti.hash_code(); }
107 _GLIBCXX_END_NAMESPACE_VERSION
112 #endif // _GLIBCXX_TYPEINDEX
enable_if< ::__array_traits< _Tp, _Nm >::_Is_swappable::value >::type noexcept(noexcept(__one.swap(__two)))
swap
const char * name() const noexcept
Primary class template hash.
Class type_indexThe class type_index provides a simple wrapper for type_info which can be used as an ...