unnest_iterator_rep< T > Class Template Reference

#include <mmc_glue.hpp>

Inheritance diagram for unnest_iterator_rep< T >:
iterator_rep< T > rep_struct format< T > empty_format

List of all members.

Public Types

Public Member Functions

Public Attributes

Protected Member Functions

Friends


Detailed Description

template<typename T>
class mmx::unnest_iterator_rep< T >

Definition at line 665 of file mmc_glue.hpp.


Member Typedef Documentation

typedef empty_format FT [inherited]

Definition at line 196 of file type_props.hpp.


Constructor & Destructor Documentation

unnest_iterator_rep ( const iterator< iterator< T > > &  it2  )  [inline]

Definition at line 680 of file mmc_glue.hpp.

References unnest_iterator_rep< T >::spool().

Referenced by unnest_iterator_rep< T >::clone().

00680                                                          :
00681     iterator_rep<T> (CF (it2)), it (it2), inner (*it) { spool (); }
  unnest_iterator_rep (const iterator<iterator<T> >& it2,

unnest_iterator_rep ( const iterator< iterator< T > > &  it2,
const iterator< T > &  inner2 
) [inline]

Definition at line 682 of file mmc_glue.hpp.

00683                                                  :
00684     iterator_rep<T> (CF (inner2)), it (it2), inner (inner2) {}


Member Function Documentation

void advance (  )  [inline, protected, virtual]

Implements iterator_rep< T >.

Definition at line 688 of file mmc_glue.hpp.

References unnest_iterator_rep< T >::spool().

00688 { ++inner; spool (); }

iterator_rep<T>* clone (  )  [inline, protected, virtual]

Reimplemented from iterator_rep< T >.

Definition at line 690 of file mmc_glue.hpp.

References iterator_rep< T >::copy, and unnest_iterator_rep< T >::unnest_iterator_rep().

00690                             {
00691     return new unnest_iterator_rep (copy (it), copy (inner)); }

T current (  )  [inline, protected, virtual]

Implements iterator_rep< T >.

Definition at line 689 of file mmc_glue.hpp.

00689 { return *inner; }

empty_format format1 (  )  const [inline, inherited]

Definition at line 189 of file type_props.hpp.

Referenced by mmx::get_format1().

00189 { return empty_format (); }

empty_format format2 (  )  const [inline, inherited]

Definition at line 190 of file type_props.hpp.

Referenced by mmx::get_format2().

00190 { return empty_format (); }

empty_format format3 (  )  const [inline, inherited]

Definition at line 191 of file type_props.hpp.

00191 { return empty_format (); }

bool is_busy (  )  [inline, protected, virtual]

Implements iterator_rep< T >.

Definition at line 687 of file mmc_glue.hpp.

References iterator_rep< T >::busy.

00687 { return busy (inner); }

virtual bool is_done (  )  [inline, protected, virtual, inherited]

Definition at line 41 of file iterator.hpp.

00041 { return !is_busy (); }

virtual bool is_init (  )  [inline, protected, virtual, inherited]

Definition at line 42 of file iterator.hpp.

00042                           {
00043     ERROR ("not implemented (is_init)"); return false; }

virtual void regress (  )  [inline, protected, virtual, inherited]

Definition at line 45 of file iterator.hpp.

00045                           {
00046     ERROR ("not implemented (regress)"); }

empty_format rfm (  )  const [inline, inherited]

Definition at line 188 of file type_props.hpp.

00188 { return *this; }

T sample (  )  const [inline, inherited]

Definition at line 202 of file type_props.hpp.

00202 { return C(); }

void spool (  )  [inline, protected]

Definition at line 670 of file mmc_glue.hpp.

References iterator_rep< T >::busy.

Referenced by unnest_iterator_rep< T >::advance(), and unnest_iterator_rep< T >::unnest_iterator_rep().

00670                 {
00671     while (true) {
00672       if (busy (inner) || !busy (it)) break;
00673       ++it;
00674       if (!busy (it)) break;
00675       inner= *it;
00676     }
00677   }

format<T > tfm (  )  const [inline, inherited]

Definition at line 201 of file type_props.hpp.

00201 { return *this; }


Friends And Related Function Documentation

bool busy ( const iterator< T > &  it  )  [friend, inherited]
iterator<T > copy ( const iterator< T > &  it  )  [friend, inherited]

Definition at line 100 of file iterator.hpp.

Referenced by unnest_iterator_rep< T >::clone(), and filter_iterator_rep< T >::clone().

00100 { return it.rep->clone (); }

bool done ( const iterator< T > &  it  )  [friend, inherited]

Definition at line 98 of file iterator.hpp.

00098 { return it.rep->is_done (); }

nat exact_hash ( const iterator< T > &  it  )  [friend, inherited]

Definition at line 184 of file iterator.hpp.

00195 : public Iterator_rep {

nat hash ( const iterator< T > &  it  )  [friend, inherited]

Definition at line 185 of file iterator.hpp.

00195 : public Iterator_rep {

bool init ( const iterator< T > &  it  )  [friend, inherited]

Definition at line 99 of file iterator.hpp.

00099 { return it.rep->is_init (); }

friend class iterator< T > [friend, inherited]

Definition at line 55 of file iterator.hpp.


Member Data Documentation

MMX_ALLOCATORS int ref_count [inherited]

Definition at line 164 of file basix.hpp.


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

Generated on 6 Dec 2012 for basix by  doxygen 1.6.1