|
Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <_concurrent_unordered_impl.h>
Classes | |
| struct | node |
Public Types | |
| typedef split_ordered_list< T, Allocator > | self_type |
| typedef Allocator::template rebind< T >::other | allocator_type |
| typedef node * | nodeptr_t |
| typedef allocator_type::size_type | size_type |
| typedef allocator_type::difference_type | difference_type |
| typedef allocator_type::pointer | pointer |
| typedef allocator_type::const_pointer | const_pointer |
| typedef allocator_type::reference | reference |
| typedef allocator_type::const_reference | const_reference |
| typedef allocator_type::value_type | value_type |
| typedef solist_iterator< self_type, const value_type > | const_iterator |
| typedef solist_iterator< self_type, value_type > | iterator |
| typedef flist_iterator< self_type, const value_type > | raw_const_iterator |
| typedef flist_iterator< self_type, value_type > | raw_iterator |
Static Public Member Functions | |
| static sokey_t | get_order_key (const raw_const_iterator &it) |
| static sokey_t | get_safe_order_key (const raw_const_iterator &it) |
| static iterator | get_iterator (const_iterator it) |
| static nodeptr_t | try_insert_atomic (nodeptr_t previous, nodeptr_t new_node, nodeptr_t current_node) |
Private Member Functions | |
| void | check_range (raw_iterator first, raw_iterator last) |
| void | check_range () |
Private Attributes | |
| allocator_type::template rebind< node >::other | my_node_allocator |
| size_type | my_element_count |
| nodeptr_t | my_head |
Friends | |
| template<typename Traits > | |
| class | concurrent_unordered_base |
Definition at line 55 of file _concurrent_unordered_impl.h.
| typedef Allocator::template rebind<T>::other tbb::interface5::internal::split_ordered_list< T, Allocator >::allocator_type |
Definition at line 188 of file _concurrent_unordered_impl.h.
| typedef solist_iterator<self_type, const value_type> tbb::interface5::internal::split_ordered_list< T, Allocator >::const_iterator |
Definition at line 200 of file _concurrent_unordered_impl.h.
| typedef allocator_type::const_pointer tbb::interface5::internal::split_ordered_list< T, Allocator >::const_pointer |
Definition at line 195 of file _concurrent_unordered_impl.h.
| typedef allocator_type::const_reference tbb::interface5::internal::split_ordered_list< T, Allocator >::const_reference |
Definition at line 197 of file _concurrent_unordered_impl.h.
| typedef allocator_type::difference_type tbb::interface5::internal::split_ordered_list< T, Allocator >::difference_type |
Definition at line 193 of file _concurrent_unordered_impl.h.
| typedef solist_iterator<self_type, value_type> tbb::interface5::internal::split_ordered_list< T, Allocator >::iterator |
Definition at line 201 of file _concurrent_unordered_impl.h.
| typedef node* tbb::interface5::internal::split_ordered_list< T, Allocator >::nodeptr_t |
Definition at line 189 of file _concurrent_unordered_impl.h.
| typedef allocator_type::pointer tbb::interface5::internal::split_ordered_list< T, Allocator >::pointer |
Definition at line 194 of file _concurrent_unordered_impl.h.
| typedef flist_iterator<self_type, const value_type> tbb::interface5::internal::split_ordered_list< T, Allocator >::raw_const_iterator |
Definition at line 202 of file _concurrent_unordered_impl.h.
| typedef flist_iterator<self_type, value_type> tbb::interface5::internal::split_ordered_list< T, Allocator >::raw_iterator |
Definition at line 203 of file _concurrent_unordered_impl.h.
| typedef allocator_type::reference tbb::interface5::internal::split_ordered_list< T, Allocator >::reference |
Definition at line 196 of file _concurrent_unordered_impl.h.
| typedef split_ordered_list<T, Allocator> tbb::interface5::internal::split_ordered_list< T, Allocator >::self_type |
Definition at line 187 of file _concurrent_unordered_impl.h.
| typedef allocator_type::size_type tbb::interface5::internal::split_ordered_list< T, Allocator >::size_type |
Definition at line 192 of file _concurrent_unordered_impl.h.
| typedef allocator_type::value_type tbb::interface5::internal::split_ordered_list< T, Allocator >::value_type |
Definition at line 198 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 302 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 310 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 350 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::begin(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::cbegin().
|
inline |
Definition at line 355 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 367 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 371 of file _concurrent_unordered_impl.h.
|
inlineprivate |
Definition at line 621 of file _concurrent_unordered_impl.h.
|
inlineprivate |
Definition at line 635 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::check_range(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::try_insert().
|
inline |
Definition at line 330 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::clear(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_copy(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::~split_ordered_list().
|
inline |
Definition at line 254 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::concurrent_unordered_base(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_insert(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::split_ordered_list().
|
inline |
Definition at line 262 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 280 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 288 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 479 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::clear(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::erase_node(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_insert(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::~split_ordered_list().
|
inline |
Definition at line 376 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 359 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::cend(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::end(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::try_insert().
|
inline |
Definition at line 363 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 568 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::erase_node(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_erase(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all().
|
inline |
Definition at line 579 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 458 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::begin(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::erase_node(), tbb::interface5::internal::concurrent_unordered_base< Traits >::const_range_type::set_midpoint(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::unsafe_begin(), and tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::unsafe_end().
|
inline |
Definition at line 469 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 326 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 434 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::concurrent_unordered_base< Traits >::const_range_type::begin(), tbb::interface5::internal::concurrent_unordered_base< Traits >::const_range_type::end(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::erase_node(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_equal_range(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_erase(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_find(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_insert(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), and tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::unsafe_erase().
|
inline |
Definition at line 441 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 447 of file _concurrent_unordered_impl.h.
|
inlinestatic |
Definition at line 452 of file _concurrent_unordered_impl.h.
|
inlinestatic |
Definition at line 423 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::check_range(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy().
|
inlinestatic |
Definition at line 427 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 510 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 386 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 589 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 406 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::begin(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::check_range(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::clear(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_init(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all().
|
inline |
Definition at line 411 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 415 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::check_range(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::first_real_iterator(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_equal_range(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_erase(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_find(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::internal_insert(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::unsafe_bucket_size(), and tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::unsafe_end().
|
inline |
Definition at line 419 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 381 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 391 of file _concurrent_unordered_impl.h.
|
inline |
Definition at line 492 of file _concurrent_unordered_impl.h.
|
inlinestatic |
Definition at line 486 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::concurrent_unordered_base(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::insert_dummy(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::try_insert().
|
friend |
Definition at line 618 of file _concurrent_unordered_impl.h.
|
private |
Definition at line 643 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::clear(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::concurrent_unordered_base(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::empty(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::erase_node(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::size(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::swap(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::try_insert().
|
private |
Definition at line 644 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::clear(), tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::concurrent_unordered_base(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::move_all(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::raw_begin(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::split_ordered_list(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::swap(), and tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::~split_ordered_list().
|
private |
Definition at line 642 of file _concurrent_unordered_impl.h.
Referenced by tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::create_node(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::create_node_v(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::destroy_node(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::get_allocator(), tbb::interface5::internal::split_ordered_list< value_type, typename Traits::allocator_type >::max_size(), and tbb::interface5::internal::concurrent_unordered_base< concurrent_unordered_map_traits< Key, T, internal::hash_compare< Key, Hasher, Key_equality >, Allocator, false > >::operator=().