diff options
Diffstat (limited to 'boost/phoenix/stl/algorithm/detail')
9 files changed, 29 insertions, 286 deletions
diff --git a/boost/phoenix/stl/algorithm/detail/is_std_hash_map.hpp b/boost/phoenix/stl/algorithm/detail/is_std_hash_map.hpp index 7a02b4fd61..e100472fcc 100644 --- a/boost/phoenix/stl/algorithm/detail/is_std_hash_map.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_std_hash_map.hpp @@ -15,8 +15,12 @@ #ifndef BOOST_PHOENIX_IS_STD_HASH_MAP_EN_16_12_2004 #define BOOST_PHOENIX_IS_STD_HASH_MAP_EN_16_12_2004 +#include <boost/phoenix/config.hpp> #include <boost/mpl/bool.hpp> -#include "./std_hash_map_fwd.hpp" + +#ifdef BOOST_PHOENIX_HAS_HASH +#include BOOST_PHOENIX_HASH_MAP_HEADER +#endif namespace boost { @@ -30,49 +34,15 @@ namespace boost : boost::mpl::false_ {}; -#ifdef BOOST_HAS_HASH - - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - struct is_std_hash_map< ::BOOST_STD_EXTENSION_NAMESPACE::hash_map<Kty,Ty,Hash,Cmp,Alloc> > - : boost::mpl::true_ - {}; - - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - struct is_std_hash_multimap< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multimap<Kty,Ty,Hash,Cmp,Alloc> > - : boost::mpl::true_ - {}; - -#elif defined(BOOST_DINKUMWARE_STDLIB) +#ifdef BOOST_PHOENIX_HAS_HASH - template< - class Kty - , class Ty - , class Tr - , class Alloc - > - struct is_std_hash_map< ::BOOST_STD_EXTENSION_NAMESPACE::hash_map<Kty,Ty,Tr,Alloc> > + template<class Kty,class Ty,BOOST_PHOENIX_HASH_template_rest_param> + struct is_std_hash_map< ::BOOST_PHOENIX_HASH_NAMESPACE::hash_map<Kty,Ty,BOOST_PHOENIX_HASH_type_rest_param> > : boost::mpl::true_ {}; - template< - class Kty - , class Ty - , class Tr - , class Alloc - > - struct is_std_hash_multimap< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multimap<Kty,Ty,Tr,Alloc> > + template<class Kty,class Ty,BOOST_PHOENIX_HASH_template_rest_param> + struct is_std_hash_multimap< ::BOOST_PHOENIX_HASH_NAMESPACE::hash_multimap<Kty,Ty,BOOST_PHOENIX_HASH_type_rest_param> > : boost::mpl::true_ {}; diff --git a/boost/phoenix/stl/algorithm/detail/is_std_hash_set.hpp b/boost/phoenix/stl/algorithm/detail/is_std_hash_set.hpp index c6631ad705..d57785548a 100644 --- a/boost/phoenix/stl/algorithm/detail/is_std_hash_set.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_std_hash_set.hpp @@ -15,8 +15,12 @@ #ifndef BOOST_PHOENIX_IS_STD_HASH_SET_EN_16_12_2004 #define BOOST_PHOENIX_IS_STD_HASH_SET_EN_16_12_2004 +#include <boost/phoenix/config.hpp> #include <boost/mpl/bool.hpp> -#include "./std_hash_set_fwd.hpp" + +#ifdef BOOST_PHOENIX_HAS_HASH +#include BOOST_PHOENIX_HASH_SET_HEADER +#endif namespace boost { @@ -30,45 +34,15 @@ namespace boost : boost::mpl::false_ {}; -#if defined(BOOST_HAS_HASH) - - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - struct is_std_hash_set< ::BOOST_STD_EXTENSION_NAMESPACE::hash_set<Kty,Hash,Cmp,Alloc> > - : boost::mpl::true_ - {}; - - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - struct is_std_hash_multiset< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multiset<Kty,Hash,Cmp,Alloc> > - : boost::mpl::true_ - {}; - -#elif defined(BOOST_DINKUMWARE_STDLIB) +#ifdef BOOST_PHOENIX_HAS_HASH - template< - class Kty - , class Tr - , class Alloc - > - struct is_std_hash_set< ::BOOST_STD_EXTENSION_NAMESPACE::hash_set<Kty,Tr,Alloc> > + template<class Kty,BOOST_PHOENIX_HASH_template_rest_param> + struct is_std_hash_set< ::BOOST_PHOENIX_HASH_NAMESPACE::hash_set<Kty,BOOST_PHOENIX_HASH_type_rest_param> > : boost::mpl::true_ {}; - template< - class Kty - , class Tr - , class Alloc - > - struct is_std_hash_multiset< ::BOOST_STD_EXTENSION_NAMESPACE::hash_multiset<Kty,Tr,Alloc> > + template<class Kty,BOOST_PHOENIX_HASH_template_rest_param> + struct is_std_hash_multiset< ::BOOST_PHOENIX_HASH_NAMESPACE::hash_multiset<Kty,BOOST_PHOENIX_HASH_type_rest_param> > : boost::mpl::true_ {}; diff --git a/boost/phoenix/stl/algorithm/detail/is_std_list.hpp b/boost/phoenix/stl/algorithm/detail/is_std_list.hpp index 390f592b7b..cc8d18fcaf 100644 --- a/boost/phoenix/stl/algorithm/detail/is_std_list.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_std_list.hpp @@ -16,7 +16,7 @@ #define BOOST_PHOENIX_IS_STD_LIST_EN_16_12_2004 #include <boost/mpl/bool.hpp> -#include <boost/detail/container_fwd.hpp> +#include <list> namespace boost { diff --git a/boost/phoenix/stl/algorithm/detail/is_std_map.hpp b/boost/phoenix/stl/algorithm/detail/is_std_map.hpp index 58aba6220c..2aea278c42 100644 --- a/boost/phoenix/stl/algorithm/detail/is_std_map.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_std_map.hpp @@ -16,7 +16,7 @@ #define BOOST_PHOENIX_IS_STD_MAP_EN_16_12_2004 #include <boost/mpl/bool.hpp> -#include <boost/detail/container_fwd.hpp> +#include <map> namespace boost { diff --git a/boost/phoenix/stl/algorithm/detail/is_std_set.hpp b/boost/phoenix/stl/algorithm/detail/is_std_set.hpp index e44a04765f..cbc4241ad2 100644 --- a/boost/phoenix/stl/algorithm/detail/is_std_set.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_std_set.hpp @@ -20,7 +20,7 @@ #define BOOST_PHOENIX_IS_STD_SET_EN_16_12_2004 #include <boost/mpl/bool.hpp> -#include <boost/detail/container_fwd.hpp> +#include <set> namespace boost { diff --git a/boost/phoenix/stl/algorithm/detail/is_unordered_set_or_map.hpp b/boost/phoenix/stl/algorithm/detail/is_unordered_set_or_map.hpp index 5a4be127b5..54b5f2f408 100644 --- a/boost/phoenix/stl/algorithm/detail/is_unordered_set_or_map.hpp +++ b/boost/phoenix/stl/algorithm/detail/is_unordered_set_or_map.hpp @@ -20,8 +20,13 @@ #ifndef BOOST_PHOENIX_IS_STD_UNORDERED_SET_OR_MAP #define BOOST_PHOENIX_IS_STD_UNORDERED_SET_OR_MAP +#include <boost/phoenix/config.hpp> #include <boost/mpl/bool.hpp> -#include "./std_unordered_set_or_map_fwd.hpp" + +#ifdef BOOST_PHOENIX_HAS_UNORDERED_SET_AND_MAP +#include BOOST_PHOENIX_UNORDERED_SET_HEADER +#include BOOST_PHOENIX_UNORDERED_MAP_HEADER +#endif namespace boost { diff --git a/boost/phoenix/stl/algorithm/detail/std_hash_map_fwd.hpp b/boost/phoenix/stl/algorithm/detail/std_hash_map_fwd.hpp deleted file mode 100644 index 3688897fa3..0000000000 --- a/boost/phoenix/stl/algorithm/detail/std_hash_map_fwd.hpp +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2005 Daniel Wallin. -// Copyright 2005 Joel de Guzman. -// -// Use, modification and distribution is subject to 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) -// -// Modeled after range_ex, Copyright 2004 Eric Niebler -/////////////////////////////////////////////////////////////////////////////// -// -// std_hash_map_fwd.hpp -// -///////////////////////////////////////////////////////////////////////////// - -#if defined(_MSC_VER) -# pragma once -#endif - -#ifndef BOOST_PHOENIX_STD_HASH_MAP_FWD_EN_16_12_2004 -#define BOOST_PHOENIX_STD_HASH_MAP_FWD_EN_16_12_2004 - -#include <boost/phoenix/config.hpp> - -#if defined(BOOST_HAS_HASH) - -namespace BOOST_STD_EXTENSION_NAMESPACE -{ - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - class hash_map; - - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - class hash_multimap; -} - -#elif defined(BOOST_DINKUMWARE_STDLIB) - -namespace BOOST_STD_EXTENSION_NAMESPACE -{ - template< - class Kty - , class Ty - , class Tr - , class Alloc - > - class hash_map; - - template< - class Kty - , class Ty - , class Tr - , class Alloc - > - class hash_multimap; -} - -#endif - -#endif diff --git a/boost/phoenix/stl/algorithm/detail/std_hash_set_fwd.hpp b/boost/phoenix/stl/algorithm/detail/std_hash_set_fwd.hpp deleted file mode 100644 index 54049db891..0000000000 --- a/boost/phoenix/stl/algorithm/detail/std_hash_set_fwd.hpp +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2005 Daniel Wallin. -// Copyright 2005 Joel de Guzman. -// -// Use, modification and distribution is subject to 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) -// -// Modeled after range_ex, Copyright 2004 Eric Niebler -/////////////////////////////////////////////////////////////////////////////// -// -// std_hash_set_fwd.hpp -// -///////////////////////////////////////////////////////////////////////////// - -#ifndef BOOST_PHOENIX_STD_HASH_SET_FWD_EN_16_12_2004 -#define BOOST_PHOENIX_STD_HASH_SET_FWD_EN_16_12_2004 - -#include <boost/phoenix/config.hpp> - -#if defined(BOOST_HAS_HASH) - -namespace BOOST_STD_EXTENSION_NAMESPACE -{ - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - class hash_set; - - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - class hash_multiset; -} - -#elif defined(BOOST_DINKUMWARE_STDLIB) - -namespace BOOST_STD_EXTENSION_NAMESPACE -{ - template< - class Kty - , class Tr - , class Alloc - > - class hash_set; - - template< - class Kty - , class Tr - , class Alloc - > - class hash_multiset; -} - -#endif - -#endif diff --git a/boost/phoenix/stl/algorithm/detail/std_unordered_set_or_map_fwd.hpp b/boost/phoenix/stl/algorithm/detail/std_unordered_set_or_map_fwd.hpp deleted file mode 100644 index e650328d15..0000000000 --- a/boost/phoenix/stl/algorithm/detail/std_unordered_set_or_map_fwd.hpp +++ /dev/null @@ -1,74 +0,0 @@ -///////////////////////////////////////////////////////////////////////////// -// Copyright 2005 Daniel Wallin. -// Copyright 2005 Joel de Guzman. -// Copyright 2015 John Fletcher -// -// Use, modification and distribution is subject to 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) -// -// Modeled after range_ex, Copyright 2004 Eric Niebler -/////////////////////////////////////////////////////////////////////////////// -// -// std_unordered_set_or_map_fwd.hpp -// -///////////////////////////////////////////////////////////////////////////// - -#ifndef BOOST_PHOENIX_STD_UNORDERED_SET_OR_MAP_FWD -#define BOOST_PHOENIX_STD_UNORDERED_SET_OR_MAP_FWD - -#include <boost/phoenix/config.hpp> - -#ifdef BOOST_PHOENIX_HAS_UNORDERED_SET_AND_MAP -#if defined(BOOST_PHOENIX_USING_LIBCPP) \ - || (defined(BOOST_DINKUMWARE_STDLIB) && (BOOST_DINKUMWARE_STDLIB < 540)) -// Advance declaration not working for libc++ and MSVC 10 -#include BOOST_PHOENIX_UNORDERED_SET_HEADER -#include BOOST_PHOENIX_UNORDERED_MAP_HEADER -#else - - - -namespace std { - - - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - class unordered_set; - - template< - class Kty - , class Hash - , class Cmp - , class Alloc - > - class unordered_multiset; - - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - class unordered_map; - - template< - class Kty - , class Ty - , class Hash - , class Cmp - , class Alloc - > - class unordered_multimap; -} -#endif - - -#endif - -#endif |