/usr/include/stxxl/bits/compat
Edit: /usr/include/stxxl/bits/compat/hash_map.h (2841B)
/***************************************************************************
* include/stxxl/bits/compat/hash_map.h
*
* compatibility interface to C++ standard extension hash_map
*
* Part of the STXXL. See http://stxxl.sourceforge.net
*
* Copyright (C) 2008, 2010, 2011 Andreas Beckmann
* Copyright (C) 2009, 2010 Johannes Singler
* Copyright (C) 2014 Timo Bingmann
*
* Distributed under the Boost Software License, Version 1.0.
* (See accompanying file LICENSE_1_0.txt or copy at
* http://www.boost.org/LICENSE_1_0.txt)
**************************************************************************/
#ifndef STXXL_COMPAT_HASH_MAP_HEADER
#define STXXL_COMPAT_HASH_MAP_HEADER
#include
#include
#if __cplusplus >= 201103L
#include
#elif STXXL_MSVC
#include
#elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
(!defined(__ICC) || (__ICC > 1110))
#include
#else
#include
#endif
STXXL_BEGIN_NAMESPACE
template
struct compat_hash {
#if __cplusplus >= 201103L
typedef std::hash result;
#elif STXXL_MSVC
typedef stdext::hash_compare result;
#elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
(!defined(__ICC) || (__ICC > 1110))
typedef std::tr1::hash result;
#else
typedef __gnu_cxx::hash result;
#endif
};
template ::result>
struct compat_hash_map {
#if __cplusplus >= 201103L
typedef std::unordered_map result;
#elif STXXL_MSVC
typedef stdext::hash_map result;
#elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
(!defined(__ICC) || (__ICC > 1110))
typedef std::tr1::unordered_map result;
#else
typedef __gnu_cxx::hash_map result;
#endif
};
template ::result>
struct compat_hash_multimap {
#if __cplusplus >= 201103L
typedef std::unordered_multimap result;
#elif STXXL_MSVC
typedef stdext::hash_multimap result;
#elif defined(__GNUG__) && ((__GNUC__ * 10000 + __GNUC_MINOR__ * 100) >= 40200) && \
(!defined(__ICC) || (__ICC > 1110))
typedef std::tr1::unordered_multimap result;
#else
typedef __gnu_cxx::hash_multimap result;
#endif
};
STXXL_END_NAMESPACE
#endif // !STXXL_COMPAT_HASH_MAP_HEADER