#include "Iguana/Framework/interface/config.h"
#include <iterator>
Go to the source code of this file.
Functions | |
template<class Map> | |
class IgMapUniqueIterator | ITERATOR_BASE (bidirectional_iterator, typename Map::mapped_type, typename Map::difference_type) |
Multi-map iterator adaptor which filters out duplicate entries. |
class IgMapUniqueIterator ITERATOR_BASE | ( | bidirectional_iterator | , | |
typename Map::mapped_type | , | |||
typename Map::difference_type | ||||
) | [inline] |
Multi-map iterator adaptor which filters out duplicate entries.
Definition at line 18 of file IgMapUniqueIterator.h.
References python::multivaluedict::map(), operator *(), operator!=(), operator==(), and x.
00021 { 00022 public: 00023 typedef std::bidirectional_iterator_tag iterator_category; 00024 typedef typename Map::const_iterator base_iterator; 00025 typedef typename Map::key_type key_type; 00026 typedef typename Map::mapped_type value_type; 00027 typedef typename Map::difference_type difference_type; 00028 typedef const value_type & reference; 00029 typedef const value_type * pointer; 00030 00031 IgMapUniqueIterator (void); 00032 IgMapUniqueIterator (base_iterator pos, const Map *map); 00033 // implicit copy constructor 00034 // implicit assignment operator 00035 // implicit destructor 00036 00037 bool operator== (const IgMapUniqueIterator &x) const; 00038 bool operator!= (const IgMapUniqueIterator &x) const; 00039 reference operator* (void) const; 00040 pointer operator-> (void) const; 00041 IgMapUniqueIterator &operator++ (void); 00042 IgMapUniqueIterator operator++ (int); 00043 IgMapUniqueIterator &operator-- (void); 00044 IgMapUniqueIterator operator-- (int); 00045 00046 private: 00047 base_iterator m_pos; 00048 const Map *m_map; 00049 };