13 #ifndef PQXX_H_RESULT_ITERATOR 14 #define PQXX_H_RESULT_ITERATOR 16 #include "pqxx/compiler-public.hxx" 17 #include "pqxx/compiler-internal-pre.hxx" 19 #include "pqxx/row.hxx" 37 std::random_access_iterator_tag,
39 result::difference_type,
40 const_result_iterator,
82 { m_index += i;
return *
this; }
84 { m_index -= i;
return *
this; }
92 {
return m_index==i.m_index;}
94 {
return m_index!=i.m_index;}
96 {
return m_index<i.m_index;}
98 {
return m_index<=i.m_index;}
100 {
return m_index>i.m_index;}
102 {
return m_index>=i.m_index;}
131 using iterator_type::iterator_category;
150 using const_result_iterator::operator->;
151 using const_result_iterator::operator*;
160 { iterator_type::operator=(r);
return *
this; }
162 { iterator_type::operator--();
return *
this; }
165 { iterator_type::operator++();
return *
this; }
168 { iterator_type::operator-=(i);
return *
this; }
170 { iterator_type::operator+=(i);
return *
this; }
183 {
return rhs.const_result_iterator::operator-(*this); }
192 {
return iterator_type::operator==(rhs); }
195 {
return !operator==(rhs); }
198 {
return iterator_type::operator>(rhs); }
200 {
return iterator_type::operator>=(rhs); }
202 {
return iterator_type::operator<(rhs); }
204 {
return iterator_type::operator<=(rhs); }
248 #include "pqxx/compiler-internal-post.hxx" const_reverse_result_iterator operator-(difference_type i)
Definition: result_iterator.hxx:179
const_iterator cend() const noexcept
Definition: result_iterator.hxx:236
Result set containing data returned by a query or command.
Definition: result.hxx:65
const_result_iterator(const row &t) noexcept
Definition: result_iterator.hxx:51
const_reverse_result_iterator & operator--()
Definition: result_iterator.hxx:164
unsigned long result_size_type
Number of rows in a result set.
Definition: types.hxx:18
Reference to one row in a result.
Definition: row.hxx:40
const_reverse_result_iterator(const const_result_iterator &rhs)
Definition: result_iterator.hxx:140
bool operator!=(const const_reverse_result_iterator &rhs) const noexcept
Definition: result_iterator.hxx:193
Reverse iterator for result. Use as result::const_reverse_iterator.
Definition: result_iterator.hxx:125
reference operator*() const
Definition: result_iterator.hxx:69
const_iterator end() const noexcept
Definition: result_iterator.hxx:232
difference_type operator-(const const_reverse_result_iterator &rhs) const
Definition: result_iterator.hxx:181
bool operator!=(const const_result_iterator &i) const
Definition: result_iterator.hxx:93
const_result_iterator & operator++()
Definition: result_iterator.hxx:77
bool operator>(const const_result_iterator &i) const
Definition: result_iterator.hxx:99
bool operator<(const const_reverse_result_iterator &rhs) const
Definition: result_iterator.hxx:197
const_result_iterator() noexcept
Definition: result_iterator.hxx:50
const_result_iterator & operator+=(difference_type i)
Definition: result_iterator.hxx:81
size_t num() const
Definition: row.hxx:170
signed long result_difference_type
Difference between result sizes.
Definition: types.hxx:21
iterator_type::value_type value_type
Definition: result_iterator.hxx:134
const_result_iterator & operator-=(difference_type i)
Definition: result_iterator.hxx:83
result_size_type size_type
Definition: result_iterator.hxx:47
bool operator<=(const const_reverse_result_iterator &rhs) const
Definition: result_iterator.hxx:199
bool operator>=(const const_reverse_result_iterator &rhs) const
Definition: result_iterator.hxx:203
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:22
Iterator for rows in a result. Use as result::const_iterator.
Definition: result_iterator.hxx:35
bool operator<=(const const_result_iterator &i) const
Definition: result_iterator.hxx:97
result_difference_type difference_type
Definition: result.hxx:69
const_reverse_result_iterator(const const_reverse_result_iterator &rhs)
Definition: result_iterator.hxx:137
result_difference_type difference_type
Definition: result_iterator.hxx:48
const_reverse_result_iterator & operator-=(difference_type i)
Definition: result_iterator.hxx:169
const_reverse_result_iterator & operator+=(difference_type i)
Definition: result_iterator.hxx:167
bool operator>=(const const_result_iterator &i) const
Definition: result_iterator.hxx:101
const_result_iterator & operator--()
Definition: result_iterator.hxx:79
PQXX_PURE const_result_iterator base() const noexcept
Definition: result.cxx:408
bool operator>(const const_reverse_result_iterator &rhs) const
Definition: result_iterator.hxx:201
bool operator==(const const_reverse_result_iterator &rhs) const noexcept
Definition: result_iterator.hxx:190
const_result_iterator operator+(difference_type) const
Definition: result_iterator.hxx:210
const_result_iterator operator+(result::difference_type o, const_result_iterator i)
Definition: result_iterator.hxx:217
pointer operator->() const
Definition: result_iterator.hxx:68
const_reverse_result_iterator operator+(difference_type i) const
Definition: result_iterator.hxx:177
bool operator<(const const_result_iterator &i) const
Definition: result_iterator.hxx:95
const_reverse_result_iterator & operator++()
Definition: result_iterator.hxx:161
bool operator==(const const_result_iterator &i) const
Definition: result_iterator.hxx:91
const_reverse_result_iterator & operator=(const const_reverse_result_iterator &r)
Definition: result_iterator.hxx:158
const_result_iterator operator-(difference_type) const
Definition: result_iterator.hxx:221