Zero  0.1.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
xct_i Class Reference

Iterator over transaction list. More...

#include <xct.h>

Public Member Functions

bool locked_by_me () const
 True if this thread holds the transaction list mutex. More...
 
void never_mind ()
 Release transaction list mutex if this thread holds it. More...
 
xct_tcurr () const
 Get transaction at cursor. More...
 
xct_tnext ()
 Advance cursor. More...
 
 xct_i (bool locked_accesses)
 Constructor. More...
 
 ~xct_i ()
 Desctructor. Calls never_mind() if necessary. More...
 

Private Member Functions

void _check (bool b) const
 
 xct_i (const xct_i &)
 
xct_ioperator= (const xct_i &)
 

Private Attributes

const bool _locked
 
const bool _may_check
 
w_list_i< xct_t, queue_based_lock_tunsafe_iterator
 

Detailed Description

Iterator over transaction list.

This is exposed for the purpose of coping with out-of-log-space conditions. See SSMLOG.

Constructor & Destructor Documentation

§ xct_i() [1/2]

xct_i::xct_i ( bool  locked_accesses)
inline

Constructor.

skip

Parameters
[in]locked_accessesSet to true if you want this iterator to be safe, false if you don't care or if you already hold the transaction-list mutex.

§ ~xct_i()

xct_i::~xct_i ( )
inline

Desctructor. Calls never_mind() if necessary.

§ xct_i() [2/2]

xct_i::xct_i ( const xct_i )
private

Member Function Documentation

§ _check()

void xct_i::_check ( bool  b) const
inlineprivate

§ curr()

xct_t* xct_i::curr ( ) const
inline

Get transaction at cursor.

§ locked_by_me()

bool xct_i::locked_by_me ( ) const
inline

True if this thread holds the transaction list mutex.

§ never_mind()

void xct_i::never_mind ( )
inline

Release transaction list mutex if this thread holds it.

§ next()

xct_t* xct_i::next ( )
inline

Advance cursor.

§ operator=()

xct_i& xct_i::operator= ( const xct_i )
private

Member Data Documentation

§ _locked

const bool xct_i::_locked
private

§ _may_check

const bool xct_i::_may_check
private

§ unsafe_iterator

w_list_i<xct_t, queue_based_lock_t> xct_i::unsafe_iterator
private

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