MySQL 8.0.39
Source Code Documentation
|
Iterator over intervals of a non-const Gtid_set, with additional methods to modify the Gtid_set. More...
#include <rpl_gtid.h>
Public Member Functions | |
Interval_iterator (Gtid_set *gtid_set, rpl_sidno sidno) | |
Create this Interval_iterator. More... | |
Interval_iterator (Gtid_set *gtid_set) | |
Destroy this Interval_iterator. More... | |
Public Member Functions inherited from Gtid_set::Interval_iterator_base< Gtid_set *, Interval * > | |
Interval_iterator_base (Gtid_set * gtid_set, rpl_sidno sidno) | |
Construct a new iterator over the GNO intervals for a given Gtid_set. More... | |
Interval_iterator_base (Gtid_set * gtid_set) | |
Construct a new iterator over the free intervals of a Gtid_set. More... | |
void | init (Gtid_set * gtid_set, rpl_sidno sidno) |
Reset this iterator. More... | |
void | next () |
Advance current_elem one step. More... | |
Interval * | get () const |
Return current_elem. More... | |
Private Member Functions | |
void | set (Interval *iv) |
Set current_elem to the given Interval but do not touch the next pointer of the given Interval. More... | |
void | insert (Interval *iv) |
Insert the given element before current_elem. More... | |
void | remove (Gtid_set *gtid_set) |
Remove current_elem. More... | |
Friends | |
class | Gtid_set |
Only Gtid_set is allowed to use set/insert/remove. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Gtid_set::Interval_iterator_base< Gtid_set *, Interval * > | |
Interval * * | p |
Holds the address of the 'next' pointer of the previous element, or the address of the initial pointer into the list, if the current element is the first element. More... | |
Iterator over intervals of a non-const Gtid_set, with additional methods to modify the Gtid_set.
Create this Interval_iterator.
|
inline |
Destroy this Interval_iterator.
|
inlineprivate |
Insert the given element before current_elem.
|
inlineprivate |
Remove current_elem.
|
inlineprivate |
Set current_elem to the given Interval but do not touch the next pointer of the given Interval.
|
friend |
Only Gtid_set is allowed to use set/insert/remove.
They are not safe to use from other code because: (1) very easy to make a mistakes (2) they don't clear cached_string_format or cached_string_length.