26 #ifndef __KEYED_ITERATOR_HPP
27 #define __KEYED_ITERATOR_HPP
36 template<
typename Type>
74 return (it->first == o.it->first &&
75 it->second == o.it->second);
78 bool operator<(const keyed_iterator<Type>& o) {
107 int key()
const {
return it->first; }
108 Type
val()
const {
return it->second; }
109 Type&
val() {
return it->second; }
110 int size()
const {
return _size; }
130 template<
typename Type>
bool operator<(const keyed_iterator<Type>& l,
132 return &(*l) < &(*r);
134 template<
typename Type>
bool operator<(const keyed_iterator<const Type>& l,
136 return &(*l) < &(*r);
141 template<
typename Type>
150 template<
typename Type>
160 #endif // #ifndef __KEYED_ITERATOR_HPP
keyed_iterator operator+(int n) const
Definition: keyed_iterator.hpp:91
keyed_iterator()
Definition: keyed_iterator.hpp:54
int key() const
Definition: keyed_iterator.hpp:107
pair_type * pointer
Definition: keyed_iterator.hpp:42
bool operator!=(const keyed_iterator< Type > &l, const keyed_iterator< const Type > &r)
Definition: keyed_iterator.hpp:122
keyed_iterator operator--(int)
Definition: keyed_iterator.hpp:67
difference_type max() const
Definition: keyed_iterator.hpp:111
int size() const
Definition: keyed_iterator.hpp:110
pointer operator->() const
Definition: keyed_iterator.hpp:59
bool operator!=(const keyed_iterator &o) const
Definition: keyed_iterator.hpp:77
difference_type operator-(const keyed_iterator< Type > &o)
Definition: keyed_iterator.hpp:103
reference operator*() const
Definition: keyed_iterator.hpp:58
keyed_iterator< Type >::iterator_category iterator_category
Definition: keyed_iterator.hpp:156
keyed_iterator & operator++()
Definition: keyed_iterator.hpp:60
Definition: CDenseVector.h:35
keyed_iterator operator-(int n) const
Definition: keyed_iterator.hpp:96
keyed_iterator< Type >::pointer pointer
Definition: keyed_iterator.hpp:144
pair_type value_type
Definition: keyed_iterator.hpp:41
keyed_iterator & operator--()
Definition: keyed_iterator.hpp:66
bool operator==(const keyed_iterator< Type > &l, const keyed_iterator< const Type > &r)
Definition: keyed_iterator.hpp:114
const reference operator[](int n) const
Definition: keyed_iterator.hpp:101
keyed_iterator_tag iterator_category
Definition: keyed_iterator.hpp:45
pair_type & reference
Definition: keyed_iterator.hpp:43
keyed_iterator & operator-=(int n)
Definition: keyed_iterator.hpp:87
keyed_iterator< Type >::pair_type value_type
Definition: keyed_iterator.hpp:152
pair< int, Type > pair_type
Definition: keyed_iterator.hpp:40
keyed_iterator< Type >::iterator_category iterator_category
Definition: keyed_iterator.hpp:147
keyed_iterator< Type >::pair_type value_type
Definition: keyed_iterator.hpp:143
keyed_iterator & operator+=(int n)
Definition: keyed_iterator.hpp:83
keyed_iterator operator++(int)
Definition: keyed_iterator.hpp:61
Type val() const
Definition: keyed_iterator.hpp:108
keyed_iterator< Type >::difference_type difference_type
Definition: keyed_iterator.hpp:146
ptrdiff_t difference_type
Definition: keyed_iterator.hpp:44
keyed_iterator< Type >::reference reference
Definition: keyed_iterator.hpp:145
keyed_iterator< Type >::difference_type difference_type
Definition: keyed_iterator.hpp:155
keyed_iterator(pair< int, Type > *it, int size, difference_type max)
Definition: keyed_iterator.hpp:55
keyed_iterator< Type >::reference reference
Definition: keyed_iterator.hpp:154
keyed_iterator< Type >::pointer pointer
Definition: keyed_iterator.hpp:153
reference operator[](int n)
Definition: keyed_iterator.hpp:102
bool operator==(const keyed_iterator< Type > &o) const
Definition: keyed_iterator.hpp:73
Type & val()
Definition: keyed_iterator.hpp:109
Definition: keyed_iterator.hpp:32