All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Pages
Public Types | Public Member Functions | Friends | List of all members
paal::data_structures::combine_iterator_engine< Range, RangesRest...> Class Template Reference
Inheritance diagram for paal::data_structures::combine_iterator_engine< Range, RangesRest...>:
paal::data_structures::combine_iterator_engine< RangesRest...>

Public Types

using base = combine_iterator_engine< RangesRest...>
 
using Iterator = typename boost::range_iterator< Range >::type
 

Public Member Functions

 combine_iterator_engine (Range &range, RangesRest &...rest)
 constructor More...
 
bool next ()
 move iterators to the next position More...
 
template<typename F , typename... Args>
auto call (F f, Args &&...args) -> decltype(std::declval< base >().call(std::move(f), std::forward< Args >(args)...,*std::declval< Iterator >()))
 calls arbitrary function f on (*m_curr)... More...
 

Friends

bool operator== (const combine_iterator_engine &left, const combine_iterator_engine &right)
 operator== More...
 

Detailed Description

template<typename Range, typename... RangesRest>
class paal::data_structures::combine_iterator_engine< Range, RangesRest...>

Definition at line 44 of file combine_iterator.hpp.

Constructor & Destructor Documentation

template<typename Range , typename... RangesRest>
paal::data_structures::combine_iterator_engine< Range, RangesRest...>::combine_iterator_engine ( Range &  range,
RangesRest &...  rest 
)
inline

constructor

Parameters
range
rest

Definition at line 57 of file combine_iterator.hpp.

Member Function Documentation

template<typename Range , typename... RangesRest>
template<typename F , typename... Args>
auto paal::data_structures::combine_iterator_engine< Range, RangesRest...>::call ( F  f,
Args &&...  args 
) -> decltype(std::declval<base>().call( std::move(f), std::forward<Args>(args)..., *std::declval<Iterator>()))
inline

calls arbitrary function f on (*m_curr)...

Template Parameters
F
Args
Parameters
f
args
Returns

Definition at line 90 of file combine_iterator.hpp.

template<typename Range , typename... RangesRest>
bool paal::data_structures::combine_iterator_engine< Range, RangesRest...>::next ( )
inline

move iterators to the next position

Returns

Definition at line 68 of file combine_iterator.hpp.

Friends And Related Function Documentation

template<typename Range , typename... RangesRest>
bool operator== ( const combine_iterator_engine< Range, RangesRest...> &  left,
const combine_iterator_engine< Range, RangesRest...> &  right 
)
friend

operator==

Parameters
left
right
Returns

Definition at line 103 of file combine_iterator.hpp.


The documentation for this class was generated from the following file: