MySQL 8.3.0
Source Code Documentation
cs::apply::Commit_order_queue::Iterator Class Reference

Iterator helper class to iterate over the Commit_order_queue following the underlying commit order. More...

#include <commit_order_queue.h>

Public Types

using difference_type = std::ptrdiff_t
 
using value_type = Commit_order_queue::Node *
 
using pointer = Commit_order_queue::Node *
 
using reference = Commit_order_queue::Node *
 
using iterator_category = std::forward_iterator_tag
 
using index_type = Commit_order_queue::queue_type::index_type
 

Public Member Functions

 Iterator (Commit_order_queue &parent, index_type position)
 
 Iterator (const Iterator &rhs)
 
 Iterator (Iterator &&rhs)
 
virtual ~Iterator ()=default
 
Iteratoroperator= (const Iterator &rhs)
 
Iteratoroperator= (Iterator &&rhs)
 
Iteratoroperator++ ()
 
reference operator* ()
 
Iterator operator++ (int)
 
pointer operator-> ()
 
bool operator== (Iterator const &rhs) const
 
bool operator!= (Iterator const &rhs) const
 

Private Attributes

Commit_order_queuem_target {nullptr}
 The target queue that holds the list to be iterated. More...
 
Commit_order_queue::queue_type::Iterator m_current
 The iterator pointing to the underlying queue position. More...
 

Detailed Description

Iterator helper class to iterate over the Commit_order_queue following the underlying commit order.

Check C++ documentation on Iterator named requirements for more information on the implementation.

Member Typedef Documentation

◆ difference_type

◆ index_type

using cs::apply::Commit_order_queue::Iterator::index_type = Commit_order_queue::queue_type::index_type

◆ iterator_category

◆ pointer

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ Iterator() [1/3]

cs::apply::Commit_order_queue::Iterator::Iterator ( Commit_order_queue parent,
index_type  position 
)
explicit

◆ Iterator() [2/3]

cs::apply::Commit_order_queue::Iterator::Iterator ( const Iterator rhs)
default

◆ Iterator() [3/3]

cs::apply::Commit_order_queue::Iterator::Iterator ( Iterator &&  rhs)

◆ ~Iterator()

virtual cs::apply::Commit_order_queue::Iterator::~Iterator ( )
virtualdefault

Member Function Documentation

◆ operator!=()

◆ operator*()

cs::apply::Commit_order_queue::Node * cs::apply::Commit_order_queue::Iterator::operator* ( )

◆ operator++() [1/2]

cs::apply::Commit_order_queue::Iterator & cs::apply::Commit_order_queue::Iterator::operator++ ( )

◆ operator++() [2/2]

cs::apply::Commit_order_queue::Iterator cs::apply::Commit_order_queue::Iterator::operator++ ( int  )

◆ operator->()

cs::apply::Commit_order_queue::Node * cs::apply::Commit_order_queue::Iterator::operator-> ( )

◆ operator=() [1/2]

cs::apply::Commit_order_queue::Iterator & cs::apply::Commit_order_queue::Iterator::operator= ( const Iterator rhs)
default

◆ operator=() [2/2]

cs::apply::Commit_order_queue::Iterator & cs::apply::Commit_order_queue::Iterator::operator= ( Iterator &&  rhs)

◆ operator==()

bool cs::apply::Commit_order_queue::Iterator::operator== ( Iterator const &  rhs) const

Member Data Documentation

◆ m_current

Commit_order_queue::queue_type::Iterator cs::apply::Commit_order_queue::Iterator::m_current
private

The iterator pointing to the underlying queue position.

◆ m_target

Commit_order_queue* cs::apply::Commit_order_queue::Iterator::m_target {nullptr}
private

The target queue that holds the list to be iterated.


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