|
CUBRID Engine
latest
|
#include <lockfree_hashmap.hpp>

Public Member Functions | |
| iterator ()=default | |
| iterator (tran::index tran_index, hashmap &hash) | |
| ~iterator ()=default | |
| T * | iterate () |
| void | restart () |
| iterator & | operator= (iterator &&o) |
Private Attributes | |
| const size_t | INVALID_INDEX = std::numeric_limits<size_t>::max () |
| hashmap * | m_hashmap |
| tran::descriptor * | m_tdes |
| size_t | m_bucket_index |
| T * | m_curr |
Definition at line 173 of file lockfree_hashmap.hpp.
|
default |
| lockfree::hashmap< Key, T >::iterator::iterator | ( | tran::index | tran_index, |
| hashmap & | hash | ||
| ) |
Definition at line 1325 of file lockfree_hashmap.hpp.
|
default |
| T * lockfree::hashmap< Key, T >::iterator::iterate | ( | ) |
Definition at line 1335 of file lockfree_hashmap.hpp.
References assert, lockfree::address_marker< T >::atomic_strip_address_mark(), lockfree::tran::descriptor::end_tran(), lockfree::hashmap< Key, T >::get_nextp_ref(), lockfree::hashmap< Key, T >::iterator::INVALID_INDEX, lockfree::address_marker< T >::is_address_marked(), lockfree::hashmap< Key, T >::lock_entry(), lockfree::hashmap< Key, T >::m_active_stats, lockfree::hashmap< Key, T >::iterator::m_bucket_index, lockfree::hashmap< Key, T >::m_buckets, lockfree::hashmap< Key, T >::iterator::m_curr, lockfree::hashmap< Key, T >::m_edesc, lockfree::hashmap< Key, T >::iterator::m_hashmap, lockfree::hashmap< Key, T >::m_size, lockfree::hashmap< Key, T >::m_stat_iterates, lockfree::hashmap< Key, T >::iterator::m_tdes, NULL, lockfree::tran::descriptor::start_tran(), lockfree::address_marker< T >::strip_address_mark(), lockfree::hashmap< Key, T >::unlock_entry(), and lf_entry_descriptor::using_mutex.
| hashmap< Key, T >::iterator & lockfree::hashmap< Key, T >::iterator::operator= | ( | iterator && | o | ) |
Definition at line 1419 of file lockfree_hashmap.hpp.
References lockfree::hashmap< Key, T >::iterator::INVALID_INDEX, lockfree::hashmap< Key, T >::iterator::m_bucket_index, lockfree::hashmap< Key, T >::iterator::m_curr, lockfree::hashmap< Key, T >::iterator::m_hashmap, lockfree::hashmap< Key, T >::iterator::m_tdes, and NULL.
| void lockfree::hashmap< Key, T >::iterator::restart | ( | ) |
Definition at line 1408 of file lockfree_hashmap.hpp.
References lockfree::tran::descriptor::end_tran(), lockfree::tran::descriptor::is_tran_started(), lockfree::hashmap< Key, T >::iterator::m_curr, lockfree::hashmap< Key, T >::iterator::m_tdes, and NULL.
|
private |
Definition at line 186 of file lockfree_hashmap.hpp.
Referenced by lockfree::hashmap< Key, T >::iterator::iterate(), and lockfree::hashmap< Key, T >::iterator::operator=().
|
private |
Definition at line 190 of file lockfree_hashmap.hpp.
Referenced by lockfree::hashmap< Key, T >::iterator::iterate(), and lockfree::hashmap< Key, T >::iterator::operator=().
|
private |
Definition at line 191 of file lockfree_hashmap.hpp.
Referenced by lockfree::hashmap< Key, T >::iterator::iterate(), lockfree::hashmap< Key, T >::iterator::operator=(), and lockfree::hashmap< Key, T >::iterator::restart().
|
private |
Definition at line 188 of file lockfree_hashmap.hpp.
Referenced by lockfree::hashmap< Key, T >::iterator::iterate(), and lockfree::hashmap< Key, T >::iterator::operator=().
|
private |
Definition at line 189 of file lockfree_hashmap.hpp.
Referenced by lockfree::hashmap< Key, T >::iterator::iterate(), lockfree::hashmap< Key, T >::iterator::operator=(), and lockfree::hashmap< Key, T >::iterator::restart().