]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // Copyright 2005 Daniel Wallin. |
2 | // Copyright 2005 Joel de Guzman. | |
3 | // | |
4 | // Use, modification and distribution is subject to the Boost Software | |
5 | // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | |
6 | // http://www.boost.org/LICENSE_1_0.txt) | |
7 | // | |
8 | // Modeled after range_ex, Copyright 2004 Eric Niebler | |
9 | /////////////////////////////////////////////////////////////////////////////// | |
10 | // | |
11 | // is_std_hash_map.hpp | |
12 | // | |
13 | ///////////////////////////////////////////////////////////////////////////// | |
14 | ||
15 | #ifndef BOOST_PHOENIX_IS_STD_HASH_MAP_EN_16_12_2004 | |
16 | #define BOOST_PHOENIX_IS_STD_HASH_MAP_EN_16_12_2004 | |
17 | ||
18 | #include <boost/mpl/bool.hpp> | |
19 | #include "./std_hash_map_fwd.hpp" | |
20 | ||
21 | namespace boost | |
22 | { | |
23 | template<class T> | |
24 | struct is_std_hash_map | |
25 | : boost::mpl::false_ | |
26 | {}; | |
27 | ||
28 | template<class T> | |
29 | struct is_std_hash_multimap | |
30 | : boost::mpl::false_ | |
31 | {}; | |
32 | ||
33 | #ifdef BOOST_HAS_HASH | |
34 | ||
35 | template< | |
36 | class Kty | |
37 | , class Ty | |
38 | , class Hash | |
39 | , class Cmp | |
40 | , class Alloc | |
41 | > | |
42 | struct is_std_hash_map< ::BOOST_STD_EXTENSION_NAMESPACE::hash_map<Kty,Ty,Hash,Cmp,Alloc> > | |
43 | : boost::mpl::true_ | |
44 | {}; | |
45 | ||
46 | template< | |
47 | class Kty | |
48 | , class Ty | |
49 | , class Hash | |
50 | , class Cmp | |
51 | , class Alloc | |
52 | > | |
53 | struct is_std_hash_multimap< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multimap<Kty,Ty,Hash,Cmp,Alloc> > | |
54 | : boost::mpl::true_ | |
55 | {}; | |
56 | ||
57 | #elif defined(BOOST_DINKUMWARE_STDLIB) | |
58 | ||
59 | template< | |
60 | class Kty | |
61 | , class Ty | |
62 | , class Tr | |
63 | , class Alloc | |
64 | > | |
65 | struct is_std_hash_map< ::BOOST_STD_EXTENSION_NAMESPACE::hash_map<Kty,Ty,Tr,Alloc> > | |
66 | : boost::mpl::true_ | |
67 | {}; | |
68 | ||
69 | template< | |
70 | class Kty | |
71 | , class Ty | |
72 | , class Tr | |
73 | , class Alloc | |
74 | > | |
75 | struct is_std_hash_multimap< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multimap<Kty,Ty,Tr,Alloc> > | |
76 | : boost::mpl::true_ | |
77 | {}; | |
78 | ||
79 | #endif | |
80 | ||
81 | } | |
82 | ||
83 | #endif |