Move Boost.Range's join_iterator intrusive_ptr_add_ref and intrusive_ptr_release where ADL will actually find them

[SVN r61867]
This commit is contained in:
Douglas Gregor
2010-05-09 01:32:55 +00:00
parent 88001ada37
commit 794fd3e226

View File

@ -71,24 +71,19 @@ private:
mutable reference_count_t count; mutable reference_count_t count;
}; };
} // range_detail
template<typename Iterator1, typename Iterator2> template<typename Iterator1, typename Iterator2>
inline void intrusive_ptr_add_ref(const range_detail::join_iterator_link<Iterator1,Iterator2>* p) inline void intrusive_ptr_add_ref(const join_iterator_link<Iterator1,Iterator2>* p)
{ {
p->add_reference(); p->add_reference();
} }
template<typename Iterator1, typename Iterator2> template<typename Iterator1, typename Iterator2>
inline void intrusive_ptr_release(const range_detail::join_iterator_link<Iterator1,Iterator2>* p) inline void intrusive_ptr_release(const join_iterator_link<Iterator1,Iterator2>* p)
{ {
if (p->release_reference()) if (p->release_reference())
delete p; delete p;
} }
namespace range_detail
{
class join_iterator_begin_tag {}; class join_iterator_begin_tag {};
class join_iterator_end_tag {}; class join_iterator_end_tag {};