12class iter:
public iterable,
public clonable,
public typeProvidable {
15 template <
typename E,
typename TACTIC>
friend class tnarr;
16 template <
typename K,
typename V,
typename defaultContainer>
friend class tnchain;
24 me operator+(ncnt step);
27 me& operator+=(ncnt step);
29 using iterable::operator*;
30 RSquare operator*()
override;
32 typename std::remove_reference<R>::type operator->();
33 const typename std::remove_reference<R>::type operator->() const BY_CONST_FUNC(operator->())
34 me& operator=(const me& rhs);
35 explicit operator nbool() const;
38 nbool isReversed() const override;
46 nbool isFrom(const tucontainable& it) const override;
48 nbool isEnd() const override;
49 ncnt
next(ncnt step) override;
50 ncnt prev(ncnt step) override;
51 ncnt stepForward(ncnt step) override;
52 ncnt stepBackward(ncnt step) override;
57 template <typename E> E* get() {
return get() TO(
template cast<E>()); }
59 tucontainable<T, R, RSquare>* getContainer()
override;
60 const tucontainable<T, R, RSquare>* getContainer() const BY_CONST_FUNC(getContainer())
63 me& _assign(const me& rhs);
64 nbool _onSame(const typeProvidable& rhs) const override;
70 void _nextToMatchParamType(typename
iterable::iterationType type);
71 ncnt _step(typename
iterable::iterationType type, ncnt step);
72 ncnt _iterate(typename
iterable::iterationType type, ncnt step);
Bidirectional iterator for key-value containers.
Definition biter.hpp:10
ncnt next(ncnt step) override
Definition biterable.hpp:4
Definition biteration.hpp:5