PMDK C++ bindings  1.8.2
This is the C++ bindings documentation for PMDK's libpmemobj.
Public Types | Public Member Functions | List of all members
pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor Class Reference

Combines data access, locking, and garbage collection. More...

#include <libpmemobj++/container/concurrent_hash_map.hpp>

Inheritance diagram for pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor:
pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::accessor

Public Types

using value_type = const typename concurrent_hash_map::value_type
 Type of value.
 

Public Member Functions

bool empty () const
 
void release ()
 Release accessor. More...
 
const_reference operator * () const
 
const_pointer operator-> () const
 
 const_accessor ()
 Create empty result. More...
 
 ~const_accessor ()
 Destroy result after releasing the underlying reference.
 

Detailed Description

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
class pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor

Combines data access, locking, and garbage collection.

Constructor & Destructor Documentation

◆ const_accessor()

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor::const_accessor ( )
inline

Create empty result.

Cannot be used in a transaction.

Member Function Documentation

◆ empty()

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
bool pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor::empty ( ) const
inline
Returns
true if accessor does not hold any element, false otherwise.

◆ operator *()

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
const_reference pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor::operator * ( ) const
inline
Returns
reference to associated value in hash table.

◆ operator->()

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
const_pointer pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor::operator-> ( ) const
inline
Returns
pointer to associated value in hash table.

◆ release()

template<typename Key, typename T, typename Hash, typename KeyEqual, typename MutexType, typename ScopedLockType>
void pmem::obj::concurrent_hash_map< Key, T, Hash, KeyEqual, MutexType, ScopedLockType >::const_accessor::release ( )
inline

Release accessor.

Cannot be called inside of a transaction.

Exceptions
transaction_scope_errorif called inside tranaction

The documentation for this class was generated from the following file: