PLaSK library
Loading...
Searching...
No Matches
iterators.hpp File Reference

This file contains iterators utils. More...

#include <boost/iterator/iterator_facade.hpp>
#include <type_traits>
#include <memory>
Include dependency graph for iterators.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  plask::PolymorphicForwardIteratorImpl< ValueT, ReferenceT >
 Base class for forward, polymorphic iterators implementations. More...
 
struct  plask::PolymorphicForwardIteratorWithIndexImpl< ValueT, ReferenceT >
 Base class for forward, polymorphic iterators implementations which allow to get index of current position. More...
 
struct  plask::PolymorphicForwardIteratorWrapperImpl< wrapped_iterator_type, ValueT, ReferenceT >
 Polymorphic iterator that wrap another (usually not polymorphic) iterator (of type wrapped_iterator_type). More...
 
struct  plask::PolymorphicForwardIterator< ImplT >
 Polymorphic, forward iterator. More...
 
struct  plask::PolymorphicForwardIteratorWithIndex< ImplT >
 Polymorphic, forward iterator which allow to get index of current position. More...
 
struct  plask::IndexedIterator< ContainerType, Reference, dereference_f >
 Template to create iterators for containers which have operator[]. More...
 
struct  plask::FunctorIndexedIterator< FunctorType, Reference, Value >
 Template to create iterators which using functor having size argument. More...
 
struct  plask::MethodIterator< ContainerType, ReturnedType, Method, Reference, Value >
 Template to create iterators which using method having index argument. More...
 
struct  plask::ReindexedContainer< ContainerType >
 ReindexedContainer instantiation is class which objects have reference to original container and operator[]. More...
 

Namespaces

namespace  plask
 Patterson quadrature for complex function along specified line.
 

Functions

template<typename ContainerType , typename Reference >
Reference plask::dereferenceByIndexOperator (ContainerType &container, std::size_t index)
 
template<typename ContainerType >
IndexedIterator< ContainerTypeplask::makeIndexedIterator (ContainerType *c, std::size_t index)
 Get IndexedIterator for given container.
 
template<typename Functor >
FunctorIndexedIterator< Functorplask::makeFunctorIndexedIterator (Functor f, std::size_t index)
 Get FunctorIndexedIterator for given functor.
 
template<typename ContainerType >
ReindexedContainer< ContainerTypeplask::reindexContainer (ContainerType &originalContainer, int firstIndex=0, int delta=1)
 Helper function to create ReindexedContainer instantiation objects.
 

Detailed Description

This file contains iterators utils.

Definition in file iterators.hpp.