diff options
Diffstat (limited to 'boost/intrusive/detail/hashtable_node.hpp')
-rw-r--r-- | boost/intrusive/detail/hashtable_node.hpp | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/boost/intrusive/detail/hashtable_node.hpp b/boost/intrusive/detail/hashtable_node.hpp index 0471ebe684..8f8718e9a7 100644 --- a/boost/intrusive/detail/hashtable_node.hpp +++ b/boost/intrusive/detail/hashtable_node.hpp @@ -40,23 +40,22 @@ template <class Slist> struct bucket_impl : public Slist { typedef Slist slist_type; - bucket_impl() + BOOST_INTRUSIVE_FORCEINLINE bucket_impl() {} - bucket_impl(const bucket_impl &) + BOOST_INTRUSIVE_FORCEINLINE bucket_impl(const bucket_impl &) {} - ~bucket_impl() + BOOST_INTRUSIVE_FORCEINLINE ~bucket_impl() { //This bucket is still being used! BOOST_INTRUSIVE_INVARIANT_ASSERT(Slist::empty()); } - bucket_impl &operator=(const bucket_impl&) + BOOST_INTRUSIVE_FORCEINLINE bucket_impl &operator=(const bucket_impl&) { //This bucket is still in use! BOOST_INTRUSIVE_INVARIANT_ASSERT(Slist::empty()); - //Slist::clear(); return *this; } }; @@ -77,25 +76,25 @@ struct bucket_traits_impl typedef typename Slist::size_type size_type; /// @endcond - bucket_traits_impl(bucket_ptr buckets, size_type len) + BOOST_INTRUSIVE_FORCEINLINE bucket_traits_impl(bucket_ptr buckets, size_type len) : buckets_(buckets), buckets_len_(len) {} - bucket_traits_impl(const bucket_traits_impl &x) + BOOST_INTRUSIVE_FORCEINLINE bucket_traits_impl(const bucket_traits_impl &x) : buckets_(x.buckets_), buckets_len_(x.buckets_len_) {} - bucket_traits_impl(BOOST_RV_REF(bucket_traits_impl) x) + BOOST_INTRUSIVE_FORCEINLINE bucket_traits_impl(BOOST_RV_REF(bucket_traits_impl) x) : buckets_(x.buckets_), buckets_len_(x.buckets_len_) { x.buckets_ = bucket_ptr(); x.buckets_len_ = 0; } - bucket_traits_impl& operator=(BOOST_RV_REF(bucket_traits_impl) x) + BOOST_INTRUSIVE_FORCEINLINE bucket_traits_impl& operator=(BOOST_RV_REF(bucket_traits_impl) x) { buckets_ = x.buckets_; buckets_len_ = x.buckets_len_; x.buckets_ = bucket_ptr(); x.buckets_len_ = 0; return *this; } - bucket_traits_impl& operator=(BOOST_COPY_ASSIGN_REF(bucket_traits_impl) x) + BOOST_INTRUSIVE_FORCEINLINE bucket_traits_impl& operator=(BOOST_COPY_ASSIGN_REF(bucket_traits_impl) x) { buckets_ = x.buckets_; buckets_len_ = x.buckets_len_; return *this; } @@ -182,7 +181,7 @@ class hashtable_iterator < const BucketValueTraits >::type const_bucketvaltraits_ptr; typedef typename slist_impl::size_type size_type; - static node_ptr downcast_bucket(typename bucket_type::node_ptr p) + BOOST_INTRUSIVE_FORCEINLINE static node_ptr downcast_bucket(typename bucket_type::node_ptr p) { return pointer_traits<node_ptr>:: pointer_to(static_cast<typename node_traits::node&>(*p)); @@ -199,17 +198,17 @@ class hashtable_iterator , traitsptr_ (cont ? pointer_traits<const_bucketvaltraits_ptr>::pointer_to(*cont) : const_bucketvaltraits_ptr() ) {} - hashtable_iterator(const hashtable_iterator<BucketValueTraits, false> &other) + BOOST_INTRUSIVE_FORCEINLINE hashtable_iterator(const hashtable_iterator<BucketValueTraits, false> &other) : slist_it_(other.slist_it()), traitsptr_(other.get_bucket_value_traits()) {} BOOST_INTRUSIVE_FORCEINLINE const siterator &slist_it() const { return slist_it_; } - hashtable_iterator<BucketValueTraits, false> unconst() const + BOOST_INTRUSIVE_FORCEINLINE hashtable_iterator<BucketValueTraits, false> unconst() const { return hashtable_iterator<BucketValueTraits, false>(this->slist_it(), this->get_bucket_value_traits()); } - hashtable_iterator& operator++() + BOOST_INTRUSIVE_FORCEINLINE hashtable_iterator& operator++() { this->increment(); return *this; } hashtable_iterator operator++(int) |