|
|
|
@ -10,24 +10,34 @@ |
|
|
|
|
// http://blogs.msdn.com/vcblog/archive/2009/05/25/stl-breaking-changes-in-visual-studio-2010-beta-1.aspx
|
|
|
|
|
// And.. they are moved back to stdext in MSVC 2013 (haven't checked 2012). That
|
|
|
|
|
// said, use unordered_map for MSVC 2010 and beyond is our safest bet.
|
|
|
|
|
#if _MSC_VER >= 1600 |
|
|
|
|
#if _MSC_VER >= 1600 // Since Visual Studio 2010
|
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_NAMESPACE std |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_H <unordered_map> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_CLASS unordered_map |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_H <unordered_set> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_CLASS unordered_set |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_COMPARE std::hash_compare |
|
|
|
|
#elif _MSC_VER >= 1500 // Since Visual Studio 2008
|
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_NAMESPACE std::tr1 |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_H <unordered_map> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_CLASS unordered_map |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_H <unordered_set> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_CLASS unordered_set |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_COMPARE stdext::hash_compare |
|
|
|
|
#elif _MSC_VER >= 1310 |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_NAMESPACE stdext |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_H <hash_map> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_CLASS hash_map |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_H <hash_set> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_CLASS hash_set |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_COMPARE stdext::hash_compare |
|
|
|
|
#else |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_NAMESPACE std |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_H <hash_map> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_MAP_CLASS hash_map |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_H <hash_set> |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_SET_CLASS hash_set |
|
|
|
|
#define GOOGLE_PROTOBUF_HASH_COMPARE stdext::hash_compare |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
/* the location of <hash_set> */ |
|
|
|
|