Utopia  2
Framework for studying models of complex & adaptive systems.
Classes | Functions
Utopia::Itertools Namespace Reference

Tools for iterating over collections. More...

Classes

class  ZipIterator
 Iterator over an arbitrary number of collections. More...
 
class  zip
 A range defined by instances of ZipIterator. More...
 

Functions

template<typename... Iterators>
 ZipIterator (std::tuple< Iterators... > iters) -> ZipIterator< Iterators... >
 Deduce the iterator types from the types inside the tuple. More...
 
template<typename Adaptor , typename... Containers>
auto adapt_zip (Adaptor &&adaptor, Containers &... containers)
 Return a zip iterator built from an adapter applied to containers. More...
 
template<typename... Containers>
auto begin (zip< Containers... > &zipper)
 Begin function like std::begin. More...
 
template<typename... Containers>
auto end (zip< Containers... > &zipper)
 end function like std::end More...
 
template<typename... Containers>
auto cbegin (zip< Containers... > &zipper)
 Begin function like std::begin. More...
 
template<typename... Containers>
auto cend (zip< Containers... > &zipper)
 end function like std::end More...
 
template<typename... Containers>
auto rbegin (zip< Containers... > &zipper)
 Begin function like std::begin. More...
 
template<typename... Containers>
auto rend (zip< Containers... > &zipper)
 end function like std::end More...
 

Detailed Description

Tools for iterating over collections.

Function Documentation

◆ begin()

template<typename... Containers>
auto Utopia::Itertools::begin ( zip< Containers... > &  zipper)

Begin function like std::begin.

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ cbegin()

template<typename... Containers>
auto Utopia::Itertools::cbegin ( zip< Containers... > &  zipper)

Begin function like std::begin.

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ cend()

template<typename... Containers>
auto Utopia::Itertools::cend ( zip< Containers... > &  zipper)

end function like std::end

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ end()

template<typename... Containers>
auto Utopia::Itertools::end ( zip< Containers... > &  zipper)

end function like std::end

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ rbegin()

template<typename... Containers>
auto Utopia::Itertools::rbegin ( zip< Containers... > &  zipper)

Begin function like std::begin.

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ rend()

template<typename... Containers>
auto Utopia::Itertools::rend ( zip< Containers... > &  zipper)

end function like std::end

Template Parameters
Containers
Parameters
zipper
Returns
auto

◆ ZipIterator()

template<typename... Iterators>
Utopia::Itertools::ZipIterator ( std::tuple< Iterators... >  iters) -> ZipIterator< Iterators... >

Deduce the iterator types from the types inside the tuple.