Quick Links: |
#include <bdlcc_deque.h>
Public Member Functions | |
Proctor (Deque< TYPE > *container=0) | |
~Proctor () | |
void | load (Deque< TYPE > *container) |
void | release () |
MonoDeque * | operator-> () const |
MonoDeque & | operator* () const |
TYPE & | operator[] (typename MonoDeque::size_type position) const |
bool | isNull () const |
This class defines a proctor type that provides direct access to the underlying bsl::deque
contained in a Deque
. Creation of a Proctor
object locks the mutex of the Deque
, and destruction unlocks it.
bdlcc::Deque< TYPE >::Proctor::Proctor | ( | Deque< TYPE > * | container = 0 |
) | [explicit] |
Create a Proctor
object to provide access to the underlying bsl::deque
contained in the optionally specified *container
, locking container
s mutex. If no container
is specified, this object will be null.
bdlcc::Deque< TYPE >::Proctor::~Proctor | ( | ) |
void bdlcc::Deque< TYPE >::Proctor::load | ( | Deque< TYPE > * | container | ) |
In the case where this Proctor
has been released, attach this object to the specified container
. If this object is already attached, release the previous object first. The behavior is undefined if 0 == container
.
void bdlcc::Deque< TYPE >::Proctor::release | ( | ) |
Release this proctor without destroying it. Afterward the destructor will have no effect. This may be called multiple times; only the first call has any effect.
MonoDeque* bdlcc::Deque< TYPE >::Proctor::operator-> | ( | ) | const |
Return a pointer to the bsl::deque
contained in the Deque
managed by this Proctor
object'. The behavior is undefined if this Proctor
has been released.
MonoDeque& bdlcc::Deque< TYPE >::Proctor::operator* | ( | ) | const |
Return a reference to the bsl::deque
managed by this Proctor
object. The behavior is undefined if this Proctor
has been released.
TYPE& bdlcc::Deque< TYPE >::Proctor::operator[] | ( | typename MonoDeque::size_type | position | ) | const |
Return a reference providing modifiable access to the element at the specified position
in the bsl::deque
held by this proctor. The behavior is undefined unless position < size
where size
is the the number of elements in that deque.
bool bdlcc::Deque< TYPE >::Proctor::isNull | ( | ) | const |
Return true
if this object is not associated with a Deque
object.