28 #if defined( _LIBCPP_VERSION ) || (defined(_MSC_VER) && _MSC_VER >= 1700) || defined(__GNUG__) 29 # include <unordered_map> 30 # define _UNORDERED_MAP 31 #elif defined(_MSC_VER) 42 #if defined(_MSC_VER) && ! defined(_UNORDERED_MAP) 43 template<
class _Key,
class _HashFcn,
class _LessKey>
46 size_t operator() (
const _Key& k)
const 51 bool operator() (
const _Key& k1,
const _Key& k2)
const 65 template<
class _Key,
class _LessKey>
68 bool operator() (
const _Key& k1,
const _Key& k2)
const 71 return !l(k1, k2) && !l(k2, k1);
76 template<
class _Key,
class _Tp,
class _HashFcn = trUtil::hash<_Key>,
class _LessKey = std::less<_Key>,
class _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
78 #if defined(_UNORDERED_MAP) 79 std::unordered_map<_Key, _Tp, _HashFcn, trUtil::HashEqual<_Key, _LessKey>, _Alloc >
82 using BaseClass = std::unordered_map<_Key, _Tp, _HashFcn, trUtil::HashEqual<_Key, _LessKey>, _Alloc>;
83 #elif defined(_MSC_VER) 84 stdext::hash_map<_Key, _Tp, trUtil::HashCompare<_Key, _HashFcn, _LessKey>, _Alloc >
87 using BaseClass = stdext::hash_map<_Key, _Tp, trUtil::HashCompare<_Key, _HashFcn, _LessKey>, _Alloc>;
89 std::map<_Key, _Tp, _LessKey, _Alloc >
92 using BaseClass = std::map<_Key, _Tp, _LessKey, _Alloc>;
94 using typename BaseClass::iterator;
95 using typename BaseClass::const_iterator;
99 template<
class _Key,
class _Tp,
class _HashFcn = trUtil::hash<_Key>,
class _LessKey = std::less<_Key>,
class _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
101 #if defined(_UNORDERED_MAP) 102 std::unordered_multimap<_Key, _Tp, _HashFcn, trUtil::HashEqual<_Key, _LessKey>, _Alloc >
105 using BaseClass = std::unordered_multimap<_Key, _Tp, _HashFcn, trUtil::HashEqual<_Key, _LessKey>, _Alloc>;
106 #elif defined(_MSC_VER) 107 stdext::hash_multimap<_Key, _Tp, trUtil::HashCompare<_Key, _HashFcn, _LessKey>, _Alloc >
110 using BaseClass = stdext::hash_multimap<_Key, _Tp, trUtil::HashCompare<_Key, _HashFcn, _LessKey>, _Alloc>;
112 std::multimap<_Key, _Tp, _LessKey, _Alloc >
115 using BaseClass = std::multimap<_Key, _Tp, _LessKey, _Alloc>;
117 using typename BaseClass::iterator;
118 using typename BaseClass::const_iterator;
std::multimap< _Key, _Tp, _LessKey, _Alloc > BaseClass
std::map< _Key, _Tp, _LessKey, _Alloc > BaseClass
Namespace that holds various utility classes for the engine.