|
Utopia 2
Framework for studying models of complex & adaptive systems.
|
#include <iterator>#include <tuple>#include <type_traits>#include <iostream>#include <boost/hana/ext/std/tuple.hpp>#include <boost/hana/transform.hpp>#include <boost/hana/for_each.hpp>#include "type_traits.hh"

Go to the source code of this file.
Classes | |
| class | Utopia::Itertools::ZipIterator< Iters > |
| Iterator over an arbitrary number of collections. More... | |
| class | Utopia::Itertools::zip< Containers > |
| A range defined by instances of ZipIterator. More... | |
Namespaces | |
| namespace | Utopia |
| namespace | Utopia::Itertools |
| Tools for iterating over collections. | |
Functions | |
| template<typename... Iterators> | |
| Utopia::Itertools::ZipIterator (std::tuple< Iterators... > iters) -> ZipIterator< Iterators... > | |
| Deduce the iterator types from the types inside the tuple. | |
| template<typename Adaptor , typename... Containers> | |
| auto | Utopia::Itertools::adapt_zip (Adaptor &&adaptor, Containers &... containers) |
| Return a zip iterator built from an adapter applied to containers. | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::begin (zip< Containers... > &zipper) |
| Begin function like std::begin. | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::end (zip< Containers... > &zipper) |
| end function like std::end | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::cbegin (zip< Containers... > &zipper) |
| Begin function like std::begin. | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::cend (zip< Containers... > &zipper) |
| end function like std::end | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::rbegin (zip< Containers... > &zipper) |
| Begin function like std::begin. | |
| template<typename... Containers> | |
| auto | Utopia::Itertools::rend (zip< Containers... > &zipper) |
| end function like std::end | |