summaryrefslogtreecommitdiff
path: root/boost/poly_collection/detail/poly_collection.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/poly_collection/detail/poly_collection.hpp')
-rw-r--r--boost/poly_collection/detail/poly_collection.hpp48
1 files changed, 23 insertions, 25 deletions
diff --git a/boost/poly_collection/detail/poly_collection.hpp b/boost/poly_collection/detail/poly_collection.hpp
index eebd75ca89..2334347419 100644
--- a/boost/poly_collection/detail/poly_collection.hpp
+++ b/boost/poly_collection/detail/poly_collection.hpp
@@ -33,12 +33,12 @@ namespace boost{
namespace poly_collection{
-namespace detail{
-
-namespace poly_collection_impl{
+namespace common_impl{
/* common implementation for all polymorphic collections */
+using namespace detail;
+
template<typename Model,typename Allocator>
class poly_collection
{
@@ -50,14 +50,14 @@ class poly_collection
template<typename... T>
using for_all=typename for_all_types<T...>::type;
template<typename T>
- struct is_subtype: /* using makes VS2015 choke, hence we derive */
- Model::template is_subtype<typename std::decay<T>::type>{};
+ struct is_implementation: /* using makes VS2015 choke, hence we derive */
+ Model::template is_implementation<typename std::decay<T>::type>{};
template<typename T>
- using enable_if_subtype=
- typename std::enable_if<is_subtype<T>::value>::type*;
+ using enable_if_implementation=
+ typename std::enable_if<is_implementation<T>::value>::type*;
template<typename T>
- using enable_if_not_subtype=
- typename std::enable_if<!is_subtype<T>::value>::type*;
+ using enable_if_not_implementation=
+ typename std::enable_if<!is_implementation<T>::value>::type*;
template<typename T>
using is_acceptable=
detail::is_acceptable<typename std::decay<T>::type,Model>;
@@ -68,7 +68,7 @@ class poly_collection
using enable_if_not_acceptable=
typename std::enable_if<!is_acceptable<T>::value>::type*;
template<typename InputIterator>
- using enable_if_derefs_to_subtype=enable_if_subtype<
+ using enable_if_derefs_to_implementation=enable_if_implementation<
typename std::iterator_traits<InputIterator>::value_type
>;
template<typename T>
@@ -679,7 +679,7 @@ public:
};
}
- template<typename T,enable_if_subtype<T> =nullptr>
+ template<typename T,enable_if_implementation<T> =nullptr>
iterator insert(T&& x)
{
auto it=get_map_iterator_for(x);
@@ -689,7 +689,7 @@ public:
template<
typename T,
enable_if_not_same<const_iterator,T> =nullptr,
- enable_if_subtype<T> =nullptr
+ enable_if_implementation<T> =nullptr
>
iterator insert(const_iterator hint,T&& x)
{
@@ -705,7 +705,7 @@ public:
template<
typename BaseIterator,typename T,
enable_if_not_same<local_iterator_impl<BaseIterator>,T> =nullptr,
- enable_if_subtype<T> =nullptr
+ enable_if_implementation<T> =nullptr
>
nonconst_version<local_iterator_impl<BaseIterator>>
insert(local_iterator_impl<BaseIterator> pos,T&& x)
@@ -719,7 +719,7 @@ public:
template<
typename InputIterator,
- enable_if_derefs_to_subtype<InputIterator> =nullptr,
+ enable_if_derefs_to_implementation<InputIterator> =nullptr,
enable_if_derefs_to_not_terminal<InputIterator> =nullptr
>
void insert(InputIterator first,InputIterator last)
@@ -729,7 +729,7 @@ public:
template<
typename InputIterator,
- enable_if_derefs_to_subtype<InputIterator> =nullptr,
+ enable_if_derefs_to_implementation<InputIterator> =nullptr,
enable_if_derefs_to_terminal<InputIterator> =nullptr
>
void insert(InputIterator first,InputIterator last)
@@ -766,7 +766,7 @@ public:
template<
typename InputIterator,
- enable_if_derefs_to_subtype<InputIterator> =nullptr,
+ enable_if_derefs_to_implementation<InputIterator> =nullptr,
enable_if_derefs_to_not_terminal<InputIterator> =nullptr
>
void insert(const_iterator hint,InputIterator first,InputIterator last)
@@ -783,7 +783,7 @@ public:
template<
typename InputIterator,
- enable_if_derefs_to_subtype<InputIterator> =nullptr,
+ enable_if_derefs_to_implementation<InputIterator> =nullptr,
enable_if_derefs_to_terminal<InputIterator> =nullptr
>
void insert(const_iterator hint,InputIterator first,InputIterator last)
@@ -837,7 +837,7 @@ public:
template<
typename InputIterator,
- enable_if_derefs_to_subtype<InputIterator> =nullptr
+ enable_if_derefs_to_implementation<InputIterator> =nullptr
>
local_base_iterator insert(
const_local_base_iterator pos,InputIterator first,InputIterator last)
@@ -1084,7 +1084,7 @@ private:
template<
typename T,typename BaseIterator,typename U,
- enable_if_subtype<U> =nullptr,
+ enable_if_implementation<U> =nullptr,
enable_if_not_constructible<T,U&&> =nullptr
>
static segment_base_iterator local_insert(
@@ -1096,7 +1096,7 @@ private:
template<
typename T,typename BaseIterator,typename U,
- enable_if_subtype<U> =nullptr,
+ enable_if_implementation<U> =nullptr,
enable_if_constructible<T,U&&> =nullptr
>
static segment_base_iterator local_insert(
@@ -1108,7 +1108,7 @@ private:
template<
typename T,typename BaseIterator,typename U,
- enable_if_not_subtype<U> =nullptr,
+ enable_if_not_implementation<U> =nullptr,
enable_if_constructible<T,U&&> =nullptr
>
static segment_base_iterator local_insert(
@@ -1119,7 +1119,7 @@ private:
template<
typename T,typename BaseIterator,typename U,
- enable_if_not_subtype<U> =nullptr,
+ enable_if_not_implementation<U> =nullptr,
enable_if_not_constructible<T,U&&> =nullptr
>
static segment_base_iterator local_insert(
@@ -1165,9 +1165,7 @@ void swap(
x.swap(y);
}
-} /* namespace poly_collection::detail::poly_collection_impl */
-
-} /* namespace poly_collection::detail */
+} /* namespace poly_collection::common_impl */
} /* namespace poly_collection */