forked from boostorg/unordered
Unordered: Remove BOOST_DEDUCED_TYPENAME
[SVN r74192]
This commit is contained in:
@@ -52,8 +52,7 @@ namespace unordered
|
||||
private:
|
||||
#endif
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
::boost::unordered::detail::rebind_wrap<
|
||||
typedef typename ::boost::unordered::detail::rebind_wrap<
|
||||
allocator_type, value_type>::type
|
||||
value_allocator;
|
||||
typedef ::boost::unordered::detail::allocator_traits<value_allocator>
|
||||
@@ -61,16 +60,14 @@ namespace unordered
|
||||
|
||||
typedef ::boost::unordered::detail::set<H, P,
|
||||
value_allocator> types;
|
||||
typedef BOOST_DEDUCED_TYPENAME types::impl table;
|
||||
typedef typename types::impl table;
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME types::node_ptr node_ptr;
|
||||
typedef typename types::node_ptr node_ptr;
|
||||
|
||||
public:
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
allocator_traits::pointer pointer;
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
allocator_traits::const_pointer const_pointer;
|
||||
typedef typename allocator_traits::pointer pointer;
|
||||
typedef typename allocator_traits::const_pointer const_pointer;
|
||||
|
||||
typedef value_type& reference;
|
||||
typedef value_type const& const_reference;
|
||||
@@ -384,8 +381,7 @@ namespace unordered
|
||||
private:
|
||||
#endif
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
::boost::unordered::detail::rebind_wrap<
|
||||
typedef typename ::boost::unordered::detail::rebind_wrap<
|
||||
allocator_type, value_type>::type
|
||||
value_allocator;
|
||||
typedef ::boost::unordered::detail::allocator_traits<value_allocator>
|
||||
@@ -393,16 +389,14 @@ namespace unordered
|
||||
|
||||
typedef ::boost::unordered::detail::multiset<H, P,
|
||||
value_allocator> types;
|
||||
typedef BOOST_DEDUCED_TYPENAME types::impl table;
|
||||
typedef typename types::impl table;
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME types::node_ptr node_ptr;
|
||||
typedef typename types::node_ptr node_ptr;
|
||||
|
||||
public:
|
||||
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
allocator_traits::pointer pointer;
|
||||
typedef BOOST_DEDUCED_TYPENAME
|
||||
allocator_traits::const_pointer const_pointer;
|
||||
typedef typename allocator_traits::pointer pointer;
|
||||
typedef typename allocator_traits::const_pointer const_pointer;
|
||||
|
||||
typedef value_type& reference;
|
||||
typedef value_type const& const_reference;
|
||||
@@ -818,7 +812,7 @@ namespace unordered
|
||||
#if defined(BOOST_UNORDERED_STD_FORWARD_MOVE)
|
||||
template <class T, class H, class P, class A>
|
||||
template <class... Args>
|
||||
std::pair<BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator, bool>
|
||||
std::pair<typename unordered_set<T,H,P,A>::iterator, bool>
|
||||
unordered_set<T,H,P,A>::emplace(Args&&... args)
|
||||
{
|
||||
return table_.emplace(std::forward<Args>(args)...);
|
||||
@@ -826,7 +820,7 @@ namespace unordered
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
template <class... Args>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::emplace_hint(const_iterator, Args&&... args)
|
||||
{
|
||||
return iterator(table_.emplace(std::forward<Args>(args)...).first);
|
||||
@@ -834,7 +828,7 @@ namespace unordered
|
||||
#else
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
std::pair<BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator, bool>
|
||||
std::pair<typename unordered_set<T,H,P,A>::iterator, bool>
|
||||
unordered_set<T,H,P,A>::emplace(
|
||||
boost::unordered::detail::empty_emplace,
|
||||
value_type v
|
||||
@@ -844,7 +838,7 @@ namespace unordered
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::emplace_hint(const_iterator,
|
||||
boost::unordered::detail::empty_emplace,
|
||||
value_type v
|
||||
@@ -858,9 +852,7 @@ namespace unordered
|
||||
template < \
|
||||
BOOST_UNORDERED_TEMPLATE_ARGS(z, n) \
|
||||
> \
|
||||
std::pair< \
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator, \
|
||||
bool> \
|
||||
std::pair<typename unordered_set<T,H,P,A>::iterator, bool> \
|
||||
unordered_set<T,H,P,A>::emplace( \
|
||||
BOOST_UNORDERED_FUNCTION_PARAMS(z, n)) \
|
||||
{ \
|
||||
@@ -871,7 +863,7 @@ namespace unordered
|
||||
template < \
|
||||
BOOST_UNORDERED_TEMPLATE_ARGS(z, n) \
|
||||
> \
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator \
|
||||
typename unordered_set<T,H,P,A>::iterator \
|
||||
unordered_set<T,H,P,A>::emplace_hint( \
|
||||
const_iterator, \
|
||||
BOOST_UNORDERED_FUNCTION_PARAMS(z, n) \
|
||||
@@ -889,14 +881,14 @@ namespace unordered
|
||||
#endif
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
std::pair<BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator, bool>
|
||||
std::pair<typename unordered_set<T,H,P,A>::iterator, bool>
|
||||
unordered_set<T,H,P,A>::insert(value_type const& obj)
|
||||
{
|
||||
return table_.emplace(obj);
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::insert(const_iterator,
|
||||
value_type const& obj)
|
||||
{
|
||||
@@ -905,14 +897,14 @@ namespace unordered
|
||||
|
||||
#if BOOST_UNORDERED_USE_RV_REF
|
||||
template <class T, class H, class P, class A>
|
||||
std::pair<BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator, bool>
|
||||
std::pair<typename unordered_set<T,H,P,A>::iterator, bool>
|
||||
unordered_set<T,H,P,A>::insert(BOOST_RV_REF(value_type) obj)
|
||||
{
|
||||
return table_.emplace(boost::move(obj));
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::insert(const_iterator,
|
||||
BOOST_RV_REF(value_type) obj)
|
||||
{
|
||||
@@ -936,21 +928,21 @@ namespace unordered
|
||||
#endif
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::erase(const_iterator position)
|
||||
{
|
||||
return iterator(table_.erase(position.node_));
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::size_type
|
||||
typename unordered_set<T,H,P,A>::size_type
|
||||
unordered_set<T,H,P,A>::erase(const key_type& k)
|
||||
{
|
||||
return table_.erase_key(k);
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::iterator
|
||||
typename unordered_set<T,H,P,A>::iterator
|
||||
unordered_set<T,H,P,A>::erase(const_iterator first, const_iterator last)
|
||||
{
|
||||
return iterator(table_.erase_range(first.node_, last.node_));
|
||||
@@ -971,14 +963,14 @@ namespace unordered
|
||||
// observers
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::hasher
|
||||
typename unordered_set<T,H,P,A>::hasher
|
||||
unordered_set<T,H,P,A>::hash_function() const
|
||||
{
|
||||
return table_.hash_function();
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::key_equal
|
||||
typename unordered_set<T,H,P,A>::key_equal
|
||||
unordered_set<T,H,P,A>::key_eq() const
|
||||
{
|
||||
return table_.key_eq();
|
||||
@@ -987,7 +979,7 @@ namespace unordered
|
||||
// lookup
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::const_iterator
|
||||
typename unordered_set<T,H,P,A>::const_iterator
|
||||
unordered_set<T,H,P,A>::find(const key_type& k) const
|
||||
{
|
||||
return const_iterator(table_.find_node(k));
|
||||
@@ -996,7 +988,7 @@ namespace unordered
|
||||
template <class T, class H, class P, class A>
|
||||
template <class CompatibleKey, class CompatibleHash,
|
||||
class CompatiblePredicate>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::const_iterator
|
||||
typename unordered_set<T,H,P,A>::const_iterator
|
||||
unordered_set<T,H,P,A>::find(
|
||||
CompatibleKey const& k,
|
||||
CompatibleHash const& hash,
|
||||
@@ -1006,7 +998,7 @@ namespace unordered
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::size_type
|
||||
typename unordered_set<T,H,P,A>::size_type
|
||||
unordered_set<T,H,P,A>::count(const key_type& k) const
|
||||
{
|
||||
return table_.count(k);
|
||||
@@ -1014,15 +1006,15 @@ namespace unordered
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
std::pair<
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::const_iterator,
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::const_iterator>
|
||||
typename unordered_set<T,H,P,A>::const_iterator,
|
||||
typename unordered_set<T,H,P,A>::const_iterator>
|
||||
unordered_set<T,H,P,A>::equal_range(const key_type& k) const
|
||||
{
|
||||
return table_.equal_range(k);
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_set<T,H,P,A>::size_type
|
||||
typename unordered_set<T,H,P,A>::size_type
|
||||
unordered_set<T,H,P,A>::bucket_size(size_type n) const
|
||||
{
|
||||
return table_.bucket_size(n);
|
||||
@@ -1198,7 +1190,7 @@ namespace unordered
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
template <class... Args>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::emplace(Args&&... args)
|
||||
{
|
||||
return iterator(table_.emplace(std::forward<Args>(args)...));
|
||||
@@ -1206,7 +1198,7 @@ namespace unordered
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
template <class... Args>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::emplace_hint(
|
||||
const_iterator, Args&&... args)
|
||||
{
|
||||
@@ -1216,7 +1208,7 @@ namespace unordered
|
||||
#else
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::emplace(
|
||||
boost::unordered::detail::empty_emplace,
|
||||
value_type v
|
||||
@@ -1226,7 +1218,7 @@ namespace unordered
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::emplace_hint(const_iterator,
|
||||
boost::unordered::detail::empty_emplace,
|
||||
value_type v
|
||||
@@ -1240,7 +1232,7 @@ namespace unordered
|
||||
template < \
|
||||
BOOST_UNORDERED_TEMPLATE_ARGS(z, n) \
|
||||
> \
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator \
|
||||
typename unordered_multiset<T,H,P,A>::iterator \
|
||||
unordered_multiset<T,H,P,A>::emplace( \
|
||||
BOOST_UNORDERED_FUNCTION_PARAMS(z, n)) \
|
||||
{ \
|
||||
@@ -1252,7 +1244,7 @@ namespace unordered
|
||||
template < \
|
||||
BOOST_UNORDERED_TEMPLATE_ARGS(z, n) \
|
||||
> \
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator \
|
||||
typename unordered_multiset<T,H,P,A>::iterator \
|
||||
unordered_multiset<T,H,P,A>::emplace_hint( \
|
||||
const_iterator, \
|
||||
BOOST_UNORDERED_FUNCTION_PARAMS(z, n)) \
|
||||
@@ -1269,14 +1261,14 @@ namespace unordered
|
||||
#endif
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::insert(value_type const& obj)
|
||||
{
|
||||
return iterator(table_.emplace(obj));
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::insert(const_iterator,
|
||||
value_type const& obj)
|
||||
{
|
||||
@@ -1285,14 +1277,14 @@ namespace unordered
|
||||
|
||||
#if BOOST_UNORDERED_USE_RV_REF
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::insert(BOOST_RV_REF(value_type) obj)
|
||||
{
|
||||
return iterator(table_.emplace(boost::move(obj)));
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::insert(const_iterator,
|
||||
BOOST_RV_REF(value_type) obj)
|
||||
{
|
||||
@@ -1316,21 +1308,21 @@ namespace unordered
|
||||
#endif
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::erase(const_iterator position)
|
||||
{
|
||||
return iterator(table_.erase(position.node_));
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::size_type
|
||||
typename unordered_multiset<T,H,P,A>::size_type
|
||||
unordered_multiset<T,H,P,A>::erase(const key_type& k)
|
||||
{
|
||||
return table_.erase_key(k);
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::iterator
|
||||
typename unordered_multiset<T,H,P,A>::iterator
|
||||
unordered_multiset<T,H,P,A>::erase(const_iterator first, const_iterator last)
|
||||
{
|
||||
return iterator(table_.erase_range(first.node_, last.node_));
|
||||
@@ -1351,14 +1343,14 @@ namespace unordered
|
||||
// observers
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::hasher
|
||||
typename unordered_multiset<T,H,P,A>::hasher
|
||||
unordered_multiset<T,H,P,A>::hash_function() const
|
||||
{
|
||||
return table_.hash_function();
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::key_equal
|
||||
typename unordered_multiset<T,H,P,A>::key_equal
|
||||
unordered_multiset<T,H,P,A>::key_eq() const
|
||||
{
|
||||
return table_.key_eq();
|
||||
@@ -1367,7 +1359,7 @@ namespace unordered
|
||||
// lookup
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::const_iterator
|
||||
typename unordered_multiset<T,H,P,A>::const_iterator
|
||||
unordered_multiset<T,H,P,A>::find(const key_type& k) const
|
||||
{
|
||||
return const_iterator(table_.find_node(k));
|
||||
@@ -1376,7 +1368,7 @@ namespace unordered
|
||||
template <class T, class H, class P, class A>
|
||||
template <class CompatibleKey, class CompatibleHash,
|
||||
class CompatiblePredicate>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::const_iterator
|
||||
typename unordered_multiset<T,H,P,A>::const_iterator
|
||||
unordered_multiset<T,H,P,A>::find(
|
||||
CompatibleKey const& k,
|
||||
CompatibleHash const& hash,
|
||||
@@ -1386,7 +1378,7 @@ namespace unordered
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::size_type
|
||||
typename unordered_multiset<T,H,P,A>::size_type
|
||||
unordered_multiset<T,H,P,A>::count(const key_type& k) const
|
||||
{
|
||||
return table_.count(k);
|
||||
@@ -1394,15 +1386,15 @@ namespace unordered
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
std::pair<
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::const_iterator,
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::const_iterator>
|
||||
typename unordered_multiset<T,H,P,A>::const_iterator,
|
||||
typename unordered_multiset<T,H,P,A>::const_iterator>
|
||||
unordered_multiset<T,H,P,A>::equal_range(const key_type& k) const
|
||||
{
|
||||
return table_.equal_range(k);
|
||||
}
|
||||
|
||||
template <class T, class H, class P, class A>
|
||||
BOOST_DEDUCED_TYPENAME unordered_multiset<T,H,P,A>::size_type
|
||||
typename unordered_multiset<T,H,P,A>::size_type
|
||||
unordered_multiset<T,H,P,A>::bucket_size(size_type n) const
|
||||
{
|
||||
return table_.bucket_size(n);
|
||||
|
Reference in New Issue
Block a user