All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
paal::data_structures::subsets_iterator_engine< k, Iterator > Class Template Reference

#include <subset_iterator.hpp>

Public Types

using base = subsets_iterator_engine< k-1, Iterator >
 

Public Member Functions

 subsets_iterator_engine (Iterator begin, Iterator end)
 constructor More...
 
bool next ()
 sets next configuration of iterators, pointing to next subset More...
 
template<typename F , typename... Args>
auto call (F f, Args &&...args) const -> decltype(std::declval< base >().call(std::move(f), std::forward< Args >(args)...,*std::declval< Iterator >()))
 calls arbitrary function f on (*m_curr)... More...
 

Protected Member Functions

Iterator get_begin ()
 current being More...
 
Iterator get_end ()
 end is stored in the subsets_iterator_engine<0> More...
 
void set_to_end ()
 sets all iterators to m_end
 

Friends

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

Detailed Description

template<int k, typename Iterator>
class paal::data_structures::subsets_iterator_engine< k, Iterator >

Template Parameters
Iterator
k

Definition at line 33 of file subset_iterator.hpp.

Constructor & Destructor Documentation

template<int k, typename Iterator>
paal::data_structures::subsets_iterator_engine< k, Iterator >::subsets_iterator_engine ( Iterator  begin,
Iterator  end 
)
inline

constructor

Parameters
begin
end

Definition at line 67 of file subset_iterator.hpp.

Member Function Documentation

template<int k, typename Iterator>
template<typename F , typename... Args>
auto paal::data_structures::subsets_iterator_engine< k, Iterator >::call ( F  f,
Args &&...  args 
) const -> 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 122 of file subset_iterator.hpp.

template<int k, typename Iterator>
Iterator paal::data_structures::subsets_iterator_engine< k, Iterator >::get_begin ( )
inlineprotected

current being

Returns

Definition at line 41 of file subset_iterator.hpp.

template<int k, typename Iterator>
Iterator paal::data_structures::subsets_iterator_engine< k, Iterator >::get_end ( )
inlineprotected

end is stored in the subsets_iterator_engine<0>

Returns

Definition at line 48 of file subset_iterator.hpp.

template<int k, typename Iterator>
bool paal::data_structures::subsets_iterator_engine< k, Iterator >::next ( )
inline

sets next configuration of iterators, pointing to next subset

Returns

Definition at line 92 of file subset_iterator.hpp.

Friends And Related Function Documentation

template<int k, typename Iterator>
bool operator== ( const subsets_iterator_engine< k, Iterator > &  left,
const subsets_iterator_engine< k, Iterator > &  right 
)
friend

operator==

Parameters
left
right
Returns

Definition at line 135 of file subset_iterator.hpp.


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