Thrill  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator > Class Template Reference

Detailed Description

template<typename ValueType, typename KeyExtractor, typename Comparator>
class thrill::api::GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator >

Definition at line 132 of file group_by_iterator.hpp.

+ Collaboration diagram for GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator >:

#include <group_by_iterator.hpp>

Public Types

using Key = typename common::FunctionTraits< KeyExtractor >::result_type
 
using Puller = core::MultiwayMergeTree< ValueIn, std::vector< data::File::Reader >::iterator, Comparator >
 
using ValueIn = ValueType
 

Public Member Functions

 GroupByMultiwayMergeIterator (Puller &reader, const KeyExtractor &key_extractor)
 
 GroupByMultiwayMergeIterator (const GroupByMultiwayMergeIterator &)=delete
 non-copyable: delete copy-constructor More...
 
 GroupByMultiwayMergeIterator (GroupByMultiwayMergeIterator &&)=default
 move-constructor: default More...
 
bool HasNext ()
 
ValueIn Next ()
 
GroupByMultiwayMergeIteratoroperator= (const GroupByMultiwayMergeIterator &)=delete
 non-copyable: delete assignment operator More...
 
GroupByMultiwayMergeIteratoroperator= (GroupByMultiwayMergeIterator &&)=default
 move-assignment operator: default More...
 

Static Public Attributes

static constexpr bool debug = false
 

Private Member Functions

void GetNextElem ()
 
const KeyGetNextKey ()
 
bool HasNextForReal ()
 

Private Attributes

ValueIn elem_
 
bool equal_key_
 
bool is_reader_empty_
 
Key key_
 
const KeyExtractor & key_extractor_
 
Pullerreader_
 

Member Typedef Documentation

using Key = typename common::FunctionTraits<KeyExtractor>::result_type

Definition at line 149 of file group_by_iterator.hpp.

using Puller = core::MultiwayMergeTree< ValueIn, std::vector<data::File::Reader>::iterator, Comparator>

Definition at line 151 of file group_by_iterator.hpp.

using ValueIn = ValueType

Definition at line 148 of file group_by_iterator.hpp.

Constructor & Destructor Documentation

GroupByMultiwayMergeIterator ( Puller reader,
const KeyExtractor &  key_extractor 
)
inline

Definition at line 153 of file group_by_iterator.hpp.

GroupByMultiwayMergeIterator ( const GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator > &  )
delete

non-copyable: delete copy-constructor

GroupByMultiwayMergeIterator ( GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator > &&  )
default

move-constructor: default

Member Function Documentation

bool HasNextForReal ( )
inlineprivate
GroupByMultiwayMergeIterator& operator= ( const GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator > &  )
delete

non-copyable: delete assignment operator

GroupByMultiwayMergeIterator& operator= ( GroupByMultiwayMergeIterator< ValueType, KeyExtractor, Comparator > &&  )
default

move-assignment operator: default

Member Data Documentation

constexpr bool debug = false
static

Definition at line 147 of file group_by_iterator.hpp.

const KeyExtractor& key_extractor_
private

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