#include <wipal/tool/iterator.hh>
iterator provides the standard operators one expects from iterators (==
, !=
, ++
, *
, ->
).
To subclass iterator, you must provide the following methods:
equal
(const exact_type&
) : Equality check.
increment()
: Increment the iterator.
get()
and get_ptr()
: Indirection (as a reference and as a pointer).
Public Types | |
typedef HIDDEN | exact_type |
Iterator types. | |
typedef ssize_t | difference_type |
typedef HIDDEN | value_type |
typedef value_type * | pointer |
typedef value_type & | reference |
typedef std::input_iterator_tag | iterator_category |
Public Member Functions | |
Equality checks | |
bool | operator== (const exact_type &) const |
bool | operator!= (const exact_type &) const |
Increment operators | |
const exact_type & | operator++ () |
exact_type | operator++ (int) |
Indirections | |
const value_type & | operator* () const |
const value_type * | operator-> () const |
Downcast methods | |
const exact_type & | exact () const |
exact_type & | exact () |
const exact_type * | exact_ptr () const |
exact_type * | exact_ptr () |
Protected Member Functions | |
~iterator () |
typedef HIDDEN tool::iterator< Bottom >::exact_type |
Exact type for this template instantiation.
Reimplemented from tool::static_base< Bottom >.
Reimplemented in pcapxx::internals::frame_iterator< Descriptor, Bottom >, tool::valued_iterator< Bottom >, tool::window< InputIterator, WSize, Step, Bottom >, wifi::frame::filter::internals::non_noisy_prism_iterator< I, B, Bottom >, wifi::frame::filter::internals::uniquely_identifiable_iterator< U, I, H, B, Bottom >, and tool::valued_iterator< HIDDEN >.
tool::iterator< B >::~iterator | ( | ) | [inline, protected] |
Protected destructor: iterator is abstract.
const static_base< Bottom >::exact_type & tool::static_base< Bottom >::exact | ( | ) | const [inline, inherited] |
Safely downcast to the exact type as a const reference.
static_base< Bottom >::exact_type & tool::static_base< Bottom >::exact | ( | ) | [inline, inherited] |
Safely downcast to the exact type as a non-const reference.
const static_base< Bottom >::exact_type * tool::static_base< Bottom >::exact_ptr | ( | ) | const [inline, inherited] |
Safely downcast to the exact type as a const pointer.
static_base< Bottom >::exact_type * tool::static_base< Bottom >::exact_ptr | ( | ) | [inline, inherited] |
Safely downcast to the exact type as a non-const pointer.