Honeycomb  0.1
Component-Model Framework
Public Types | Public Member Functions | Public Attributes | Protected Attributes | List of all members
honey::TupleIter< Iter, I, std::forward_iterator_tag > Class Template Reference

#include <Range.h>

Inheritance diagram for honey::TupleIter< Iter, I, std::forward_iterator_tag >:
Inheritance graph
[legend]
Collaboration diagram for honey::TupleIter< Iter, I, std::forward_iterator_tag >:
Collaboration graph
[legend]

Public Types

typedef std::forward_iterator_tag iterator_category
 
typedef mt::removeRef< reference >::type value_type
 
typedef std::iterator_traits< Iter >::difference_type difference_type
 
typedef value_typepointer
 

Public Member Functions

 TupleIter ()=default
 
 TupleIter (const Iter &i)
 
TupleIteroperator++ ()
 
TupleIter operator++ (int)
 
bool operator== (const TupleIter &rhs) const
 
bool operator!= (const TupleIter &rhs) const
 
reference operator* () const
 
pointer operator-> () const
 
 operator Iter () const
 

Public Attributes

decltype(get< I >(*Iter())) typede reference )
 

Protected Attributes

Iter _i
 

Member Typedef Documentation

template<class Iter , szt I>
typedef std::iterator_traits<Iter>::difference_type honey::TupleIter< Iter, I, std::forward_iterator_tag >::difference_type
template<class Iter , szt I>
typedef std::forward_iterator_tag honey::TupleIter< Iter, I, std::forward_iterator_tag >::iterator_category
template<class Iter , szt I>
typedef value_type* honey::TupleIter< Iter, I, std::forward_iterator_tag >::pointer
template<class Iter , szt I>
typedef mt::removeRef<reference>::type honey::TupleIter< Iter, I, std::forward_iterator_tag >::value_type

Constructor & Destructor Documentation

template<class Iter , szt I>
honey::TupleIter< Iter, I, std::forward_iterator_tag >::TupleIter ( )
default
template<class Iter , szt I>
honey::TupleIter< Iter, I, std::forward_iterator_tag >::TupleIter ( const Iter &  i)
inline

Member Function Documentation

template<class Iter , szt I>
honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator Iter ( ) const
inline
template<class Iter , szt I>
bool honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator!= ( const TupleIter< Iter, I, std::forward_iterator_tag > &  rhs) const
inline
template<class Iter , szt I>
reference honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator* ( ) const
inline
template<class Iter , szt I>
TupleIter& honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator++ ( )
inline
template<class Iter , szt I>
TupleIter honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator++ ( int  )
inline
template<class Iter , szt I>
pointer honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator-> ( ) const
inline
template<class Iter , szt I>
bool honey::TupleIter< Iter, I, std::forward_iterator_tag >::operator== ( const TupleIter< Iter, I, std::forward_iterator_tag > &  rhs) const
inline

Member Data Documentation

template<class Iter , szt I>
Iter honey::TupleIter< Iter, I, std::forward_iterator_tag >::_i
protected
template<class Iter , szt I>
decltype(get<I>(*Iter())) typede honey::TupleIter< Iter, I, std::forward_iterator_tag >::reference)

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