CASM
AClustersApproachtoStatisticalMechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
notstd::UniqueMapIterator< TransformFunc, MapIteratorType > Class Template Reference

#include <unique_map.hh>

Detailed Description

template<typename TransformFunc, typename MapIteratorType>
class notstd::UniqueMapIterator< TransformFunc, MapIteratorType >

An iterator over a UniqueMap.

UniqueType should be Unique or const Unique, and MapIteratorType should be std::map<int, std::unique_ptr<UniqueType> > with const-ness matching the UniqueType.

Definition at line 18 of file unique_map.hh.

Public Types

typedef
std::bidirectional_iterator_tag 
iterator_category
 
typedef
MapIteratorType::difference_type 
difference_type
 
typedef std::result_of
< TransformFunc(typename
MapIteratorType::reference)>
::type 
reference
 
typedef std::remove_reference
< reference >::type 
value_type
 
typedef value_typepointer
 

Public Member Functions

 UniqueMapIterator ()
 
 UniqueMapIterator (MapIteratorType map_it)
 
template<typename T , typename M >
 UniqueMapIterator (const UniqueMapIterator< T, M > &umap_it)
 
template<typename T , typename M >
bool operator== (const UniqueMapIterator< T, M > &B) const
 
template<typename T , typename M >
bool operator!= (const UniqueMapIterator< T, M > &B) const
 
int type () const
 
reference operator* () const
 
pointer operator-> () const
 
UniqueMapIteratoroperator++ ()
 
UniqueMapIterator operator++ (int)
 
UniqueMapIteratoroperator-- ()
 
UniqueMapIterator operator-- (int)
 
MapIteratorType base () const
 

Private Attributes

MapIteratorType m_it
 
TransformFunc m_transform
 

Member Typedef Documentation

template<typename TransformFunc, typename MapIteratorType>
typedef MapIteratorType::difference_type notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::difference_type

Definition at line 23 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
typedef std::bidirectional_iterator_tag notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::iterator_category

Definition at line 22 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
typedef value_type* notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::pointer

Definition at line 26 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
typedef std::result_of<TransformFunc(typename MapIteratorType::reference)>::type notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::reference

Definition at line 24 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
typedef std::remove_reference<reference>::type notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::value_type

Definition at line 25 of file unique_map.hh.

Constructor & Destructor Documentation

template<typename TransformFunc, typename MapIteratorType>
notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::UniqueMapIterator ( )
inline

Definition at line 28 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::UniqueMapIterator ( MapIteratorType  map_it)
inlineexplicit

Definition at line 30 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
template<typename T , typename M >
notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::UniqueMapIterator ( const UniqueMapIterator< T, M > &  umap_it)
inline

Definition at line 35 of file unique_map.hh.

Member Function Documentation

template<typename TransformFunc, typename MapIteratorType>
MapIteratorType notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::base ( ) const
inline

Definition at line 87 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
template<typename T , typename M >
bool notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator!= ( const UniqueMapIterator< T, M > &  B) const
inline

Definition at line 45 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
reference notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator* ( ) const
inline

Definition at line 53 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
UniqueMapIterator& notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator++ ( )
inline

Definition at line 62 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
UniqueMapIterator notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator++ ( int  )
inline

Definition at line 68 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
UniqueMapIterator& notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator-- ( )
inline

Definition at line 75 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
UniqueMapIterator notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator-- ( int  )
inline

Definition at line 81 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
pointer notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator-> ( ) const
inline

Definition at line 57 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
template<typename T , typename M >
bool notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::operator== ( const UniqueMapIterator< T, M > &  B) const
inline

Definition at line 40 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
int notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::type ( ) const
inline

Definition at line 49 of file unique_map.hh.

Member Data Documentation

template<typename TransformFunc, typename MapIteratorType>
MapIteratorType notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::m_it
private

Definition at line 93 of file unique_map.hh.

template<typename TransformFunc, typename MapIteratorType>
TransformFunc notstd::UniqueMapIterator< TransformFunc, MapIteratorType >::m_transform
private

Definition at line 94 of file unique_map.hh.


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