|
libmoost
|
Objects of this class represent an upgrade of an upgradable lock. More...
#include <guarded_ptr.hpp>

Public Member Functions | |
| upgrade (upgradable_access &parent) | |
| reference | operator* () |
| const_reference | operator* () const |
| pointer | operator-> () |
| const_pointer | operator-> () const |
Private Attributes | |
| upgradable_access & | m_parent |
Objects of this class represent an upgrade of an upgradable lock.
upgrade objects can only be constructed from upgradable_access objects. The lock held by the upgradable_access object is promoted to an exclusive lock upon construction of the first upgrade object. The exclusive lock is never downgraded to a shared lock again.
The upgrade object must never outlive the underlying upgradable_access object.
Definition at line 259 of file guarded_ptr.hpp.
| moost::guarded_ptr< T >::upgradable_access::upgrade::upgrade | ( | upgradable_access & | parent | ) | [inline] |
Definition at line 262 of file guarded_ptr.hpp.
| reference moost::guarded_ptr< T >::upgradable_access::upgrade::operator* | ( | ) | [inline] |
Definition at line 269 of file guarded_ptr.hpp.
| const_reference moost::guarded_ptr< T >::upgradable_access::upgrade::operator* | ( | ) | const [inline] |
Definition at line 273 of file guarded_ptr.hpp.
| pointer moost::guarded_ptr< T >::upgradable_access::upgrade::operator-> | ( | ) | [inline] |
Definition at line 277 of file guarded_ptr.hpp.
| const_pointer moost::guarded_ptr< T >::upgradable_access::upgrade::operator-> | ( | ) | const [inline] |
Definition at line 281 of file guarded_ptr.hpp.
upgradable_access& moost::guarded_ptr< T >::upgradable_access::upgrade::m_parent [private] |
Definition at line 287 of file guarded_ptr.hpp.