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 | |