Iterator for fields in a row. Use as row::const_iterator. More...
#include <row.hxx>
Iterator for fields in a row. Use as row::const_iterator.
Reimplemented from pqxx::field.
pqxx::const_row_iterator::const_row_iterator | ( | const row & | T, | |
row::size_type | C | |||
) |
Referenced by operator+(), and operator-().
pqxx::const_row_iterator::const_row_iterator | ( | const field & | F | ) |
bool pqxx::const_row_iterator::operator!= | ( | const const_row_iterator & | rhs | ) | const |
Byte-by-byte comparison (all nulls are considered equal).
Reimplemented from pqxx::field.
Reimplemented in pqxx::const_reverse_row_iterator.
reference pqxx::const_row_iterator::operator* | ( | ) | const |
const_row_iterator pqxx::const_row_iterator::operator+ | ( | difference_type | o | ) | const |
Reimplemented in pqxx::const_reverse_row_iterator.
References pqxx::field::col(), const_row_iterator(), pqxx::field::home(), and pqxx::field::idx().
const_row_iterator& pqxx::const_row_iterator::operator++ | ( | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
pqxx::const_row_iterator pqxx::const_row_iterator::operator++ | ( | int | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
References pqxx::field::m_col.
const_row_iterator& pqxx::const_row_iterator::operator+= | ( | difference_type | i | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
const_row_iterator::difference_type pqxx::const_row_iterator::operator- | ( | const_row_iterator | i | ) | const |
References pqxx::field::num().
const_row_iterator pqxx::const_row_iterator::operator- | ( | difference_type | o | ) | const |
References pqxx::field::col(), const_row_iterator(), pqxx::field::home(), and pqxx::field::idx().
const_row_iterator& pqxx::const_row_iterator::operator-- | ( | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
pqxx::const_row_iterator pqxx::const_row_iterator::operator-- | ( | int | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
References pqxx::field::m_col.
const_row_iterator& pqxx::const_row_iterator::operator-= | ( | difference_type | i | ) |
Reimplemented in pqxx::const_reverse_row_iterator.
pointer pqxx::const_row_iterator::operator-> | ( | ) | const |
bool pqxx::const_row_iterator::operator< | ( | const const_row_iterator & | i | ) | const |
Reimplemented in pqxx::const_reverse_row_iterator.
bool pqxx::const_row_iterator::operator<= | ( | const const_row_iterator & | i | ) | const |
Reimplemented in pqxx::const_reverse_row_iterator.
bool pqxx::const_row_iterator::operator== | ( | const const_row_iterator & | rhs | ) | const |
Byte-by-byte comparison of two fields (all nulls are considered equal).
Handling of null values differs from that in SQL where a comparison involving a null value yields null, so nulls are never considered equal to one another or even to themselves.
Null handling also probably differs from the closest equivalent in C++, which is the NaN (Not-a-Number) value, a singularity comparable to SQL's null. This is because the builtin == operator demands that a == a.
The usefulness of this operator is questionable. No interpretation whatsoever is imposed on the data; 0 and 0.0 are considered different, as are null vs. the empty string, or even different (but possibly equivalent and equally valid) encodings of the same Unicode character etc.
Reimplemented from pqxx::field.
Reimplemented in pqxx::const_reverse_row_iterator.
bool pqxx::const_row_iterator::operator> | ( | const const_row_iterator & | i | ) | const |
Reimplemented in pqxx::const_reverse_row_iterator.
bool pqxx::const_row_iterator::operator>= | ( | const const_row_iterator & | i | ) | const |
Reimplemented in pqxx::const_reverse_row_iterator.
const_row_iterator operator+ | ( | difference_type | , | |
const_row_iterator | ||||
) | [friend] |