Go to the documentation of this file.00001 #ifndef HASH_INCLUDED
00002 #define HASH_INCLUDED
00003 #if defined _WIN32 && !defined __MINGW32__
00004 #include <hash_map>
00005 using namespace stdext;
00006 #else // !_WIN32 || __MINGW32__
00007 #define _GLIBCXX_PERMIT_BACKWARD_HASH
00008 #include <ext/hash_map>
00009 using namespace __gnu_cxx;
00010
00011
00012 namespace __gnu_cxx
00013 {
00014 template<> struct hash<long long> {
00015 size_t operator()(long long __x) const { return __x; }
00016 };
00017 template<> struct hash<const long long> {
00018 size_t operator()(const long long __x) const { return __x; }
00019 };
00020
00021
00022 template<> struct hash<unsigned long long> {
00023 size_t operator()(unsigned long long __x) const { return __x; }
00024 };
00025 template<> struct hash<const unsigned long long> {
00026 size_t operator()(const unsigned long long __x) const { return __x; }
00027 };
00028 }
00029 #endif // _WIN32 && !__MINGW32__
00030 #endif // HASH_INCLUDED
00031