![]() |
MySQL 8.0.30
Source Code Documentation
|
Iterator class to allow iterating over the replicatable fields in a TABLE object field set. More...
#include <table_column_iterator.h>
Public Types | |
using | difference_type = std::ptrdiff_t |
using | value_type = Field * |
using | pointer = Field * |
using | reference = Field * |
using | iterator_category = std::bidirectional_iterator_tag |
Public Member Functions | |
iterator (Table_columns_view &parent, long pos, long col) | |
Constructor for the iterator. More... | |
iterator (const iterator &rhs) | |
Copy constructor. More... | |
virtual | ~iterator ()=default |
Default destructor. More... | |
iterator & | operator= (const iterator &rhs) |
iterator & | operator++ () |
reference | operator* () const |
iterator | operator++ (int) |
pointer | operator-> () const |
bool | operator== (iterator rhs) const |
bool | operator!= (iterator rhs) const |
iterator & | operator-- () |
iterator | operator-- (int) |
size_t | absolute_pos () |
Returns the position this iterator object is pointing to, within the local table field set. More... | |
size_t | filtered_pos () |
Returns the position this iterator object is pointing to, within the replicated table field set. More... | |
Private Attributes | |
Table_columns_view const * | m_parent |
A reference to the instance we wish to iterate over. More... | |
long | m_absolute_pos |
The position, relative to the TABLE object, this instance iterator is pointing to. More... | |
long | m_filtered_pos |
The position, relative to the set of included fields, this instance iterator is pointing to. More... | |
Friends | |
struct | TABLE |
class | Table_columns_view |
Iterator class to allow iterating over the replicatable fields in a TABLE object field set.
It implements the bidirectional iterator concept.
In order to fully understand this class implementation, please, check the documentation on the Iterator concept requirements within the C++ standard and the STL definition.
using Table_columns_view< ExclusionFilter >::iterator::difference_type = std::ptrdiff_t |
using Table_columns_view< ExclusionFilter >::iterator::iterator_category = std::bidirectional_iterator_tag |
using Table_columns_view< ExclusionFilter >::iterator::pointer = Field * |
using Table_columns_view< ExclusionFilter >::iterator::reference = Field * |
using Table_columns_view< ExclusionFilter >::iterator::value_type = Field * |
|
explicit |
Constructor for the iterator.
It takes the parent Table_columns_view object and the initial positions for the replicated table and for the local table.
parent | reference to the target Table_columns_view object. |
pos | initial replicated table field set position. |
col | initial local table field set position. |
Table_columns_view< F >::iterator::iterator | ( | const iterator & | rhs | ) |
Copy constructor.
rhs | object instance we pretend to copy from. |
|
virtualdefault |
Default destructor.
size_t Table_columns_view< F >::iterator::absolute_pos |
Returns the position this iterator object is pointing to, within the local table field set.
size_t Table_columns_view< F >::iterator::filtered_pos |
Returns the position this iterator object is pointing to, within the replicated table field set.
bool Table_columns_view< F >::iterator::operator!= | ( | iterator | rhs | ) | const |
Table_columns_view< F >::iterator::reference Table_columns_view< F >::iterator::operator* |
Table_columns_view< F >::iterator & Table_columns_view< F >::iterator::operator++ |
Table_columns_view< F >::iterator Table_columns_view< F >::iterator::operator++ | ( | int | ) |
Table_columns_view< F >::iterator & Table_columns_view< F >::iterator::operator-- |
Table_columns_view< F >::iterator Table_columns_view< F >::iterator::operator-- | ( | int | ) |
Table_columns_view< F >::iterator::pointer Table_columns_view< F >::iterator::operator-> |
Table_columns_view< F >::iterator & Table_columns_view< F >::iterator::operator= | ( | const iterator & | rhs | ) |
bool Table_columns_view< F >::iterator::operator== | ( | iterator | rhs | ) | const |
|
friend |
|
friend |
|
private |
The position, relative to the TABLE object, this instance iterator is pointing to.
|
private |
The position, relative to the set of included fields, this instance iterator is pointing to.
|
private |
A reference to the instance we wish to iterate over.