9 #ifndef _STRUS_UNORDERED_MAP_HPP_INCLUDED
10 #define _STRUS_UNORDERED_MAP_HPP_INCLUDED
14 #define STRUS_GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
17 #undef STRUS_USE_STD_UNORDERED_MAP
18 #if __cplusplus >= 201103L
20 #define STRUS_USE_STD_UNORDERED_MAP
21 #elif defined __GNUC__
22 #if STRUS_GCC_VERSION >= 40900
23 #define STRUS_USE_STD_UNORDERED_MAP
24 #endif // STRUS_GCC_VERSION
28 #ifdef STRUS_USE_STD_UNORDERED_MAP
29 #include <unordered_map>
34 template<
typename Key,
typename Elem,
typename Hash = std::hash<Key>,
typename Pred = std::equal_to<Key> >
36 :
public std::unordered_map<Key,Elem,Hash,Pred>
45 #else //STRUS_USE_STD_UNORDERED_MAP
46 #include <boost/unordered_map.hpp>
51 template<
typename Key,
typename Elem,
typename Hash = boost::hash<Key>,
typename Pred = std::equal_to<Key> >
53 :
public boost::unordered_map<Key,Elem,Hash,Pred>
61 #endif //STRUS_USE_STD_UNORDERED_MAP
unordered_map(const unordered_map &o)
Definition: unordered_map.hpp:57
Definition: unordered_map.hpp:52
unordered_map()
Definition: unordered_map.hpp:56