4#ifndef PROXY_ITERATOR_H_
5#define PROXY_ITERATOR_H_
21template<
bool,
class T>
37template <
class Cond,
class T>
41template <
class T,
class U>
44 static const bool value =
false;
54 static const bool value = ! T::value;
57template<
class P,
class C>
175template<
class P1,
class P2,
class C>
181template<
class P1,
class P2,
class C>
188template<
class P,
class C>
194template<
class P,
class C>
200template<
class P,
class C>
207template<
class P,
class C>
213template<
class P,
class C>
217 return a.
cmp(b) >= 0;
219template<
class P,
class C>
225template<
class P,
class C>
229 return a.
cmp(b) <= 0;
232template<
class P,
class C>
#define NULL
Definition cddefines.h:115
Definition proxy_iterator.h:33
Definition proxy_iterator.h:59
ProxyIterator & operator+=(difference_type i)
Definition proxy_iterator.h:158
pointer operator->() const
Definition proxy_iterator.h:107
EnableIf< Not< IsSame< EmissionProxy, EmissionConstProxy > >, ProxyIterator< EmissionConstProxy, EmissionConstProxy > > const_iterator_type_1
Definition proxy_iterator.h:62
ProxyIterator(typename P::list_type *list, int index)
Definition proxy_iterator.h:71
const value_type * pointer
Definition proxy_iterator.h:69
ProxyIterator & operator=(ProxyIterator other)
Definition proxy_iterator.h:76
random_access_iterator_tag iterator_category
Definition proxy_iterator.h:67
ProxyIterator(void)
Definition proxy_iterator.h:75
int cmp(const ProxyIterator &other) const
Definition proxy_iterator.h:148
ProxyIterator & operator-=(difference_type i)
Definition proxy_iterator.h:163
bool equals(const ProxyIterator &other) const
Definition proxy_iterator.h:97
ProxyIterator operator++(int)
Definition proxy_iterator.h:119
bool associated() const
Definition proxy_iterator.h:92
void swap(ProxyIterator other)
Definition proxy_iterator.h:86
int difference_type
Definition proxy_iterator.h:66
ProxyIterator(const ProxyIterator &other)
Definition proxy_iterator.h:73
const value_type operator[](difference_type i) const
Definition proxy_iterator.h:169
const ProxyIterator add(difference_type i) const
Definition proxy_iterator.h:138
const value_type & reference
Definition proxy_iterator.h:68
reference operator*() const
Definition proxy_iterator.h:103
ProxyIterator & operator++()
Definition proxy_iterator.h:114
const_iterator_type_1::type const_iterator_type
Definition proxy_iterator.h:63
EmissionProxy value_type
Definition proxy_iterator.h:65
difference_type diff(const ProxyIterator &other) const
Definition proxy_iterator.h:143
ProxyIterator operator--(int)
Definition proxy_iterator.h:130
ProxyIterator & operator--()
Definition proxy_iterator.h:125
EmissionProxy proxy
Definition proxy_iterator.h:60
bool operator<=(const ProxyIterator< P, C > &a, const ProxyIterator< P, C > &b)
Definition proxy_iterator.h:226
const ProxyIterator< P, C > operator+(typename ProxyIterator< P, C >::difference_type i, const ProxyIterator< P, C > &a)
Definition proxy_iterator.h:189
const ProxyIterator< P, C > operator-(const ProxyIterator< P, C > &a, typename ProxyIterator< P, C >::difference_type i)
Definition proxy_iterator.h:201
bool operator<(const ProxyIterator< P, C > &a, const ProxyIterator< P, C > &b)
Definition proxy_iterator.h:220
bool operator==(const ProxyIterator< P1, C > &a, const ProxyIterator< P2, C > &b)
Definition proxy_iterator.h:176
bool operator>(const ProxyIterator< P, C > &a, const ProxyIterator< P, C > &b)
Definition proxy_iterator.h:208
bool operator>=(const ProxyIterator< P, C > &a, const ProxyIterator< P, C > &b)
Definition proxy_iterator.h:214
bool operator!=(const ProxyIterator< P1, C > &a, const ProxyIterator< P2, C > &b)
Definition proxy_iterator.h:182
Invalid type
Definition proxy_iterator.h:35
Definition proxy_iterator.h:23
T type
Definition proxy_iterator.h:25
Definition proxy_iterator.h:39
static const bool value
Definition proxy_iterator.h:49
Definition proxy_iterator.h:43
static const bool value
Definition proxy_iterator.h:44
Definition proxy_iterator.h:53
static const bool value
Definition proxy_iterator.h:54