Elementa v8.0.0
Minimalistic library for any C++ application (C++11 and up)
Loading...
Searching...
No Matches
iterators.h File Reference
#include "elementa/license.inc"
#include "elementa/checks.inc"
#include <memory>
#include <iterator>
#include <type_traits>
#include <limits>
#include <functional>
#include "elementa/base/definitions.h"
#include "elementa/base/fundamentaltypes.h"
#include "elementa/base/exceptions.h"
#include "elementa/patterns/validatable.h"
#include "elementa/patterns/clonable.h"
#include "elementa/base/debugging.h"
Include dependency graph for iterators.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  elementa::base::MultItImpl< Data >
 Base class for implementing diverse iteration behaviors. More...
 
class  elementa::base::MultIterator< Data, BIDIR >
 A mutable iterator that can have multiple iteration behaviors. Forward case. More...
 
class  elementa::base::MultIterator< Data, true >
 A mutable bidirectional iterator that can have multiple iteration behaviors. More...
 
class  elementa::base::Range< It >
 A range is a provider of begin() and end() iterators. More...
 
class  elementa::base::SubView< It >
 A view that refers to a segment of an existing container. More...
 
class  elementa::base::IotaView< IT >
 A view that refers to a sequence of incrementable elements, bounded or not. More...
 
struct  elementa::base::IotaView< IT >::iterator_t
 The iterator type returned by begin() and end(). More...
 

Functions

template<class Data , bool BIDIR>
void elementa::base::swap (MultIterator< Data, BIDIR > &it1, MultIterator< Data, BIDIR > &it2)
 Swap function for MultIterators. More...