00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef _GLIBCXX_UNORDERED_MAP
00035 #define _GLIBCXX_UNORDERED_MAP 1
00036
00037 #pragma GCC system_header
00038
00039 #ifndef __GXX_EXPERIMENTAL_CXX0X__
00040 # include <c++0x_warning.h>
00041 #endif
00042
00043 #if defined(_GLIBCXX_INCLUDE_AS_TR1)
00044 # error C++0x header cannot be included from TR1 header
00045 #endif
00046
00047 #include <utility>
00048 #include <type_traits>
00049 #include <bits/stl_algobase.h>
00050 #include <bits/allocator.h>
00051 #include <bits/stl_function.h>
00052 #include <bits/stringfwd.h>
00053 #include <bits/functional_hash.h>
00054 #include <bits/hashtable.h>
00055
00056 #if defined(_GLIBCXX_INCLUDE_AS_CXX0X)
00057 # include <tr1_impl/unordered_map>
00058 #else
00059 # define _GLIBCXX_INCLUDE_AS_CXX0X
00060 #if defined(_GLIBCXX_DEBUG) || defined(_GLIBCXX_PARALLEL)
00061 # define _GLIBCXX_BEGIN_NAMESPACE_TR1 namespace _GLIBCXX_STD_D {
00062 # define _GLIBCXX_END_NAMESPACE_TR1 }
00063 # define _GLIBCXX_TR1 _GLIBCXX_STD_D
00064 #else
00065 # define _GLIBCXX_BEGIN_NAMESPACE_TR1
00066 # define _GLIBCXX_END_NAMESPACE_TR1
00067 # define _GLIBCXX_TR1
00068 #endif
00069 # include <tr1_impl/unordered_map>
00070 # undef _GLIBCXX_TR1
00071 # undef _GLIBCXX_END_NAMESPACE_TR1
00072 # undef _GLIBCXX_BEGIN_NAMESPACE_TR1
00073 # undef _GLIBCXX_INCLUDE_AS_CXX0X
00074 #endif
00075
00076 #endif // _GLIBCXX_UNORDERED_MAP