![]() |
Lumiera 0.pre.04
»edit your freedom«
|
#include "lib/iter-adapter-stl.hpp"
materialised iterator contents.
At construction, the given source iterator is immediately discharged into an internal buffer (vector). This captured value sequence can then be retrieved once as Lumiera Forward Iterator
Definition at line 414 of file iter-adapter-stl.hpp.
Public Types | |
| using | pointer = VAL * |
| using | reference = VAL & |
| using | value_type = VAL |
Public Member Functions | |
| IterSnapshot () | |
| create empty snapshot | |
| template<class IT > | |
| IterSnapshot (IT &&src) | |
| take snapshot by discharging the given Lumiera Forward iterator | |
| template<class IT > | |
| IterSnapshot (IT const &src) | |
| build snapshot from a copy of the Lumiera Iterator | |
| template<class IT > | |
| IterSnapshot (IT &&pos, IT const &end) | |
| take snapshot by consuming a STL iterator | |
| template<class IT > | |
| IterSnapshot (IT const &begin, IT const &end) | |
| take snapshot from STL iterator | |
| IterSnapshot (IterSnapshot &&)=default | |
| IterSnapshot (IterSnapshot const &)=default | |
| IterSnapshot & | operator= (IterSnapshot const &)=default |
| IterSnapshot & | operator= (IterSnapshot &&)=default |
| operator bool () const | |
| size_t | size () const |
| reference | operator* () const |
| pointer | operator-> () const |
| IterSnapshot & | operator++ () |
| bool | isValid () const |
| bool | empty () const |
Friends | |
| bool | operator== (IterSnapshot const &s1, IterSnapshot const &s2) |
equality is based first on the valid state (to support pos != end) and then on the actual position and contents of the snapshots | |
| bool | operator!= (IterSnapshot const &snap1, IterSnapshot const &snap2) |
Private Types | |
| using | Sequence = std::vector< VAL > |
Private Member Functions | |
| void | _maybe_throw () const |
Private Attributes | |
| Sequence | buffer_ |
| size_t | pos_ = 0 |
|
inline |
create empty snapshot
Definition at line 425 of file iter-adapter-stl.hpp.
take snapshot by discharging the given Lumiera Forward iterator
Definition at line 432 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_.
build snapshot from a copy of the Lumiera Iterator
Definition at line 443 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_.
take snapshot by consuming a STL iterator
Definition at line 451 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_.
|
inline |
take snapshot from STL iterator
Definition at line 459 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_.
|
default |
|
default |
|
private |
Definition at line 416 of file iter-adapter-stl.hpp.
| using pointer = VAL* |
Definition at line 486 of file iter-adapter-stl.hpp.
| using reference = VAL& |
Definition at line 487 of file iter-adapter-stl.hpp.
| using value_type = VAL |
Definition at line 488 of file iter-adapter-stl.hpp.
|
default |
|
default |
|
inlineexplicit |
Definition at line 471 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::isValid().
Here is the call graph for this function:
|
inline |
Definition at line 477 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_.
|
inline |
Definition at line 491 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::_maybe_throw(), IterSnapshot< VAL >::buffer_, and IterSnapshot< VAL >::pos_.
Here is the call graph for this function:
|
inline |
Definition at line 498 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::_maybe_throw(), IterSnapshot< VAL >::buffer_, and IterSnapshot< VAL >::pos_.
Here is the call graph for this function:
|
inline |
Definition at line 505 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::_maybe_throw(), and IterSnapshot< VAL >::pos_.
Here is the call graph for this function:
|
inline |
Definition at line 513 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::buffer_, and IterSnapshot< VAL >::pos_.
Referenced by IterSnapshot< VAL >::_maybe_throw(), IterSnapshot< VAL >::empty(), and IterSnapshot< VAL >::operator bool().
Here is the caller graph for this function:
|
inline |
Definition at line 519 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::isValid().
Here is the call graph for this function:
|
inlineprivate |
Definition at line 548 of file iter-adapter-stl.hpp.
References IterSnapshot< VAL >::isValid().
Referenced by IterSnapshot< VAL >::operator*(), IterSnapshot< VAL >::operator++(), and IterSnapshot< VAL >::operator->().
Here is the call graph for this function:
Here is the caller graph for this function:
|
mutableprivate |
Definition at line 419 of file iter-adapter-stl.hpp.
Referenced by IterSnapshot< VAL >::IterSnapshot(), IterSnapshot< VAL >::IterSnapshot(), IterSnapshot< VAL >::IterSnapshot(), IterSnapshot< VAL >::IterSnapshot(), IterSnapshot< VAL >::isValid(), IterSnapshot< VAL >::operator*(), IterSnapshot< VAL >::operator->(), and IterSnapshot< VAL >::size().
|
private |
Definition at line 420 of file iter-adapter-stl.hpp.
Referenced by IterSnapshot< VAL >::isValid(), IterSnapshot< VAL >::operator*(), IterSnapshot< VAL >::operator++(), and IterSnapshot< VAL >::operator->().
|
friend |
equality is based first on the valid state (to support pos != end) and then on the actual position and contents of the snapshots
Definition at line 530 of file iter-adapter-stl.hpp.
|
friend |
Definition at line 540 of file iter-adapter-stl.hpp.
Collaboration diagram for IterSnapshot< VAL >: