Implementation of std::iterator_traits
for enum records. Begin- and end-iterators can be received with static methods EnumRecords::begin and EnumRecords::end. In ranged base for(:)
loops, a local instance of type EnumRecords has to be created.
As the name of the class indicates, this iterator satisfies the C++ standard library concept ForwardIterator .
Definition at line 304 of file records.hpp.
#include <records.hpp>
Public Method Index: | |
TEnum | Enum () const |
TIntegral | Integral () const |
bool | operator!= (ForwardIterator other) const |
const TRecord & | operator* () const |
ForwardIterator & | operator++ () |
ForwardIterator | operator++ (int) |
TRecord const * | operator-> () const |
bool | operator== (ForwardIterator other) const |
Private Type Index: | |
using | difference_type = integer |
Implementation of std::iterator_traits . | |
using | iterator_category = std::forward_iterator_tag |
Implementation of std::iterator_traits . | |
using | Node = typename detail::EnumRecordHook<TEnum>::Node |
Shortcut to the record hook's inner node type (linked list). | |
using | pointer = TRecord const* |
Implementation of std::iterator_traits . | |
using | reference = const TRecord& |
Implementation of std::iterator_traits . | |
using | value_type = const TRecord& |
Implementation of std::iterator_traits . | |
Private Field Index: | |
Node * | node |
The current node this iterator refers to. | |
Private Method Index: | |
ForwardIterator (Node *start) noexcept | |
|
private |
Implementation of std::iterator_traits
.
Definition at line 326 of file records.hpp.
|
private |
Implementation of std::iterator_traits
.
Definition at line 324 of file records.hpp.
|
private |
Shortcut to the record hook's inner node type (linked list).
Definition at line 313 of file records.hpp.
Implementation of std::iterator_traits
.
Definition at line 327 of file records.hpp.
Implementation of std::iterator_traits
.
Definition at line 328 of file records.hpp.
|
private |
Implementation of std::iterator_traits
.
Definition at line 325 of file records.hpp.
|
private |
The current node this iterator refers to.
Definition at line 316 of file records.hpp.
|
inlineprivatenoexcept |
Constructor.
start | Pointer to the initial element. |
Definition at line 320 of file records.hpp.
|
inline |
Returns the enum element of the enum record that this iterator refers to.
Definition at line 370 of file records.hpp.
|
inline |
Returns the underlying integral value of the enum element of the enum record that this iterator refers to.
Definition at line 379 of file records.hpp.
|
inline |
Comparison operator.
other | The iterator to compare ourselves to. |
true
if this and given iterator are not equal, false
otherwise. Definition at line 361 of file records.hpp.
|
inline |
Returns a constant reference to the enum record this iterator refers to.
Definition at line 386 of file records.hpp.
|
inline |
Prefix increment operator.
Definition at line 336 of file records.hpp.
|
inline |
Postfix increment operator.
Definition at line 344 of file records.hpp.
|
inline |
Returns a constant pointer to the enum record this iterator refers to.
Definition at line 393 of file records.hpp.
|
inline |
Comparison operator.
other | The iterator to compare ourselves to. |
true
if this and the given iterator are pointing to the same element, false
otherwise. Definition at line 353 of file records.hpp.