uTL
micro Template library
|
#include <dev_iterators.h>
Public Types | |
enum | Cursor { init = 0, valid = 1, eos = 2 } |
#define-like enumerator for Cursor-like behavior More... | |
using | type = iterator_t |
using | iterator_category = typename dev_iterator_traits< std::output_iterator_tag, data_t, void >::iterator_category |
using | value_type = typename dev_iterator_traits< std::output_iterator_tag, data_t, void >::value_type |
using | difference_type = typename dev_iterator_traits< std::output_iterator_tag, data_t, void >::difference_type |
using | pointer = typename dev_iterator_traits< std::output_iterator_tag, data_t, void >::pointer |
using | reference = typename dev_iterator_traits< std::output_iterator_tag, data_t, void >::reference |
Public Member Functions | |
Constructor / Destructor | |
istreamdev_it (cont_t *owner=nullptr, Cursor cursor=eos) noexcept | |
Basic constructor. More... | |
istreamdev_it (const iterator_t &it) noexcept | |
Basic copy constructor. More... | |
iterator_t & | operator= (const iterator_t &it) noexcept |
Basic copy assignment operator. More... | |
Public interface | |
value_type & | operator* () noexcept |
value_type * | operator-> () noexcept |
iterator_t & | operator++ () noexcept |
iterator_t | operator++ (int) noexcept |
const cont_t * | owner () const noexcept |
Export container for comparison. More... | |
const value_type & | value () const noexcept |
Export value for comparison. More... | |
const Cursor | cursor () const noexcept |
Export cursor for comparison. More... | |
Private Types | |
using | iterator_t = istreamdev_it< cont_t, data_t > |
Private Member Functions | |
private api | |
void | _get (value_type &v) |
Private Attributes | |
Data members | |
cont_t * | owner_ {nullptr} |
value_type | value_ {} |
Cursor | cursor_ {init} |
Definition at line 128 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::difference_type = typename dev_iterator_traits <std::output_iterator_tag, data_t, void>::difference_type |
Definition at line 137 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::iterator_category = typename dev_iterator_traits <std::output_iterator_tag, data_t, void>::iterator_category |
STL iterator traits "forwarding"
Definition at line 135 of file dev_iterators.h.
|
private |
Definition at line 129 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::pointer = typename dev_iterator_traits <std::output_iterator_tag, data_t, void>::pointer |
Definition at line 138 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::reference = typename dev_iterator_traits <std::output_iterator_tag, data_t, void>::reference |
Definition at line 139 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::type = iterator_t |
Export type as identity meta-function
Definition at line 131 of file dev_iterators.h.
using utl::istreamdev_it< cont_t, data_t >::value_type = typename dev_iterator_traits <std::output_iterator_tag, data_t, void>::value_type |
Definition at line 136 of file dev_iterators.h.
enum utl::istreamdev_it::Cursor |
#define-like enumerator for Cursor-like behavior
Enumerator | |
---|---|
init | |
valid | |
eos |
Definition at line 142 of file dev_iterators.h.
|
inlinenoexcept |
Basic constructor.
Definition at line 163 of file dev_iterators.h.
|
inlinenoexcept |
Basic copy constructor.
Definition at line 168 of file dev_iterators.h.
|
inlineprivate |
Definition at line 213 of file dev_iterators.h.
|
inlinenoexcept |
Export cursor for comparison.
Definition at line 208 of file dev_iterators.h.
|
inlinenoexcept |
Definition at line 183 of file dev_iterators.h.
|
inlinenoexcept |
Definition at line 193 of file dev_iterators.h.
|
inlinenoexcept |
Definition at line 197 of file dev_iterators.h.
|
inlinenoexcept |
Definition at line 188 of file dev_iterators.h.
|
inlinenoexcept |
Basic copy assignment operator.
Definition at line 173 of file dev_iterators.h.
|
inlinenoexcept |
Export container for comparison.
Definition at line 204 of file dev_iterators.h.
|
inlinenoexcept |
Export value for comparison.
Definition at line 206 of file dev_iterators.h.
|
private |
Definition at line 155 of file dev_iterators.h.
|
private |
Pointer to parent/owner device class. Usable iterator demands owner container in order to access data. Considering the data don't "live" in memory.
Definition at line 149 of file dev_iterators.h.
|
private |
Definition at line 154 of file dev_iterators.h.