|
MADNESS 0.10.1
|
#include <worldhashmap.h>


Public Types | |
| typedef std::conditional< std::is_const< hashT >::value, typenamestd::add_const< typenamehashT::datumT >::type, typenamehashT::datumT >::type | datumT |
| typedef std::conditional< std::is_const< hashT >::value, typenamestd::add_const< typenamehashT::entryT >::type, typenamehashT::entryT >::type | entryT |
| typedef datumT * | pointer |
| typedef datumT & | reference |
| typedef datumT | value_type |
Public Member Functions | |
| HashAccessor () | |
| HashAccessor (entryT *entry) | |
| ~HashAccessor () | |
| datumT & | operator* () const |
| datumT * | operator-> () const |
| void | release () |
Private Member Functions | |
| void | convert_read_lock_to_write_lock () |
| void | set (entryT *entry) |
| Used by Hash to set entry (assumed that it has the lock already) | |
| void | unset () |
| Used by Hash after having already released lock and deleted entry. | |
Private Member Functions inherited from NO_DEFAULTS | |
| NO_DEFAULTS () | |
| NO_DEFAULTS (const NO_DEFAULTS &)=delete | |
| NO_DEFAULTS (NO_DEFAULTS &&)=delete | |
| NO_DEFAULTS & | operator= (const NO_DEFAULTS &)=delete |
| NO_DEFAULTS & | operator= (NO_DEFAULTS &&)=delete |
Private Attributes | |
| entryT * | entry |
| bool | gotlock |
Friends | |
| template<class a , class b , class c > | |
| class | madness::ConcurrentHashMap |
| typedef std::conditional<std::is_const<hashT>::value,typenamestd::add_const<typenamehashT::datumT>::type,typenamehashT::datumT>::type madness::Hash_private::HashAccessor< hashT, lockmode >::datumT |
| typedef std::conditional<std::is_const<hashT>::value,typenamestd::add_const<typenamehashT::entryT>::type,typenamehashT::entryT>::type madness::Hash_private::HashAccessor< hashT, lockmode >::entryT |
| typedef datumT* madness::Hash_private::HashAccessor< hashT, lockmode >::pointer |
| typedef datumT& madness::Hash_private::HashAccessor< hashT, lockmode >::reference |
| typedef datumT madness::Hash_private::HashAccessor< hashT, lockmode >::value_type |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
References madness::Hash_private::entry< keyT, valueT >::datum, and MADNESS_EXCEPTION.
|
inline |
References madness::Hash_private::entry< keyT, valueT >::datum, and MADNESS_EXCEPTION.
|
inline |
References madness::Hash_private::HashAccessor< hashT, lockmode >::gotlock, madness::nonlinear_vector_solver(), and madness::MutexReaderWriter::unlock().
Referenced by madness::Hash_private::HashAccessor< hashT, lockmode >::~HashAccessor(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::find(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::find(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::insert(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::insert(), and madness::Hash_private::HashAccessor< hashT, lockmode >::set().
|
inlineprivate |
Used by Hash to set entry (assumed that it has the lock already)
References madness::Hash_private::HashAccessor< hashT, lockmode >::entry, madness::Hash_private::HashAccessor< hashT, lockmode >::gotlock, and madness::Hash_private::HashAccessor< hashT, lockmode >::release().
Referenced by madness::ConcurrentHashMap< keyT, valueT, hashfunT >::find(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::find(), madness::ConcurrentHashMap< keyT, valueT, hashfunT >::insert(), and madness::ConcurrentHashMap< keyT, valueT, hashfunT >::insert().
|
inlineprivate |
Used by Hash after having already released lock and deleted entry.
References madness::Hash_private::HashAccessor< hashT, lockmode >::gotlock.
|
private |
|
private |