libpqxx
7.0.5
|
Reference to one row in a result. More...
#include <row.hxx>
Public Types | |
using | size_type = row_size_type |
using | difference_type = row_difference_type |
using | const_iterator = const_row_iterator |
using | iterator = const_iterator |
using | reference = field |
using | pointer = const_row_iterator |
using | const_reverse_iterator = const_reverse_row_iterator |
using | reverse_iterator = const_reverse_iterator |
Public Member Functions | |
row ()=default | |
row (row &&)=default | |
row (row const &)=default | |
row & | operator= (row const &)=default |
row & | operator= (row &&)=default |
const_iterator | begin () const noexcept |
const_iterator | cbegin () const noexcept |
const_iterator | end () const noexcept |
const_iterator | cend () const noexcept |
size_type | size () const noexcept |
void | swap (row &) noexcept |
result::size_type | rownumber () const noexcept |
Row number, assuming this is a real row and not end()/rend(). More... | |
result::size_type | num () const |
row | slice (size_type sbegin, size_type send) const |
PQXX_PURE bool | empty () const noexcept |
Comparison | |
PQXX_PURE bool | operator== (row const &) const noexcept |
bool | operator!= (row const &rhs) const noexcept |
Field access | |
reference | front () const noexcept |
reference | back () const noexcept |
const_reverse_row_iterator | rbegin () const |
const_reverse_row_iterator | crbegin () const |
const_reverse_row_iterator | rend () const |
const_reverse_row_iterator | crend () const |
reference | operator[] (size_type) const noexcept |
reference | operator[] (char const []) const |
reference | operator[] (std::string const &s) const |
reference | at (size_type) const |
reference | at (char const []) const |
reference | at (std::string const &s) const |
Column information | |
size_type | column_number (std::string const &col_name) const |
Number of given column (throws exception if it doesn't exist). More... | |
size_type | column_number (char const []) const |
Number of given column (throws exception if it doesn't exist). More... | |
oid | column_type (size_type) const |
Return a column's type. More... | |
template<typename STRING > | |
oid | column_type (STRING col_name) const |
Return a column's type. More... | |
oid | column_table (size_type col_num) const |
What table did this column come from? More... | |
template<typename STRING > | |
oid | column_table (STRING col_name) const |
What table did this column come from? More... | |
size_type | table_column (size_type) const |
What column number in its table did this result column come from? More... | |
template<typename STRING > | |
size_type | table_column (STRING col_name) const |
What column number in its table did this result column come from? More... | |
Protected Member Functions | |
row (result const &r, result_size_type i) noexcept | |
Protected Attributes | |
result | m_result |
Result set of which this is one row. More... | |
result::size_type | m_index = 0 |
Row number. More... | |
size_type | m_begin = 0 |
First column in slice. This row ignores lower-numbered columns. More... | |
size_type | m_end = 0 |
End column in slice. This row only sees lower-numbered columns. More... | |
Friends | |
class | const_row_iterator |
class | result |
class | field |
Reference to one row in a result.
A row represents one row (also called a row) in a query result set. It also acts as a container mapping column numbers or names to field values (see below):
The row itself acts like a (non-modifyable) container, complete with its own const_iterator and const_reverse_iterator.
using pqxx::row::iterator = const_iterator |
using pqxx::row::pointer = const_row_iterator |
using pqxx::row::reference = field |
using pqxx::row::size_type = row_size_type |
|
default |
|
default |
|
default |
|
protectednoexcept |
Implementation of the pqxx::result class and support classes.
pqxx::result represents the set of result rows from a database query.
Copyright (c) 2000-2020, Jeroen T. Vermeulen.
See COPYING for copyright license. If you did not receive a file called COPYING with this source code, please notify the distributor of this mistake, or contact the author.
pqxx::field pqxx::row::at | ( | size_type | i | ) | const |
References operator[](), and size().
Referenced by pqxx::const_reverse_result_iterator::const_reverse_result_iterator(), pqxx::const_result_iterator::operator*(), and operator[]().
pqxx::field pqxx::row::at | ( | char const | f[] | ) | const |
Address field by name.
References column_number(), and m_begin.
reference pqxx::row::at | ( | std::string const & | s | ) | const |
|
noexcept |
References m_end.
Referenced by pqxx::const_reverse_result_iterator::const_reverse_result_iterator(), and pqxx::const_result_iterator::operator*().
|
noexcept |
|
noexcept |
References begin().
|
noexcept |
References end().
size_type pqxx::row::column_number | ( | std::string const & | col_name | ) | const |
Number of given column (throws exception if it doesn't exist).
Referenced by at().
pqxx::row::size_type pqxx::row::column_number | ( | char const | col_name[] | ) | const |
Number of given column (throws exception if it doesn't exist).
References pqxx::result::column_name(), pqxx::result::column_number(), m_begin, m_end, and m_result.
pqxx::oid pqxx::row::column_table | ( | size_type | col_num | ) | const |
What table did this column come from?
References pqxx::result::column_table(), m_begin, and m_result.
oid pqxx::row::column_table | ( | STRING | col_name | ) | const |
What table did this column come from?
pqxx::oid pqxx::row::column_type | ( | size_type | col_num | ) | const |
Return a column's type.
References pqxx::result::column_type(), m_begin, and m_result.
oid pqxx::row::column_type | ( | STRING | col_name | ) | const |
Return a column's type.
pqxx::row::const_reverse_iterator pqxx::row::crbegin | ( | ) | const |
References rbegin().
pqxx::row::const_reverse_iterator pqxx::row::crend | ( | ) | const |
References rend().
|
noexcept |
|
noexcept |
result::size_type pqxx::row::num | ( | ) | const |
Referenced by pqxx::const_result_iterator::operator-().
|
noexcept |
Referenced by pqxx::const_result_iterator::operator=().
|
noexcept |
pqxx::row::reference pqxx::row::operator[] | ( | char const | f[] | ) | const |
Address field by name.
References at().
reference pqxx::row::operator[] | ( | std::string const & | s | ) | const |
Address field by name.
pqxx::row::const_reverse_iterator pqxx::row::rbegin | ( | ) | const |
pqxx::row::const_reverse_iterator pqxx::row::rend | ( | ) | const |
|
noexcept |
Row number, assuming this is a real row and not end()/rend().
Referenced by pqxx::const_reverse_result_iterator::const_reverse_result_iterator(), and pqxx::const_result_iterator::operator*().
|
noexcept |
Referenced by at(), operator==(), and slice().
Produce a slice of this row, containing the given range of columns.
The slice runs from the range's starting column to the range's end column, exclusive. It looks just like a normal result row, except slices can be empty.
|
noexcept |
References m_begin, m_end, m_index, m_result, and pqxx::result::swap().
Referenced by pqxx::const_result_iterator::swap().
pqxx::row::size_type pqxx::row::table_column | ( | size_type | col_num | ) | const |
What column number in its table did this result column come from?
A meaningful answer can be given only if the column in question comes directly from a column in a table. If the column is computed in any other way, a logic_error will be thrown.
col_num | a zero-based column number in this result set |
References m_begin, m_result, and pqxx::result::table_column().
size_type pqxx::row::table_column | ( | STRING | col_name | ) | const |
What column number in its table did this result column come from?
|
friend |
|
friend |
|
friend |
|
protected |
First column in slice. This row ignores lower-numbered columns.
Referenced by at(), begin(), column_number(), column_table(), column_type(), empty(), front(), operator[](), slice(), swap(), and table_column().
|
protected |
End column in slice. This row only sees lower-numbered columns.
Referenced by back(), column_number(), empty(), end(), and swap().
|
protected |
Row number.
You'd expect this to be unsigned, but due to the way reverse iterators are related to regular iterators, it must be allowed to underflow to -1.
Referenced by pqxx::const_result_iterator::operator!=(), pqxx::const_result_iterator::operator<(), pqxx::const_result_iterator::operator<=(), pqxx::const_result_iterator::operator==(), pqxx::const_result_iterator::operator>(), pqxx::const_result_iterator::operator>=(), and swap().
|
protected |
Result set of which this is one row.
Referenced by column_number(), column_table(), column_type(), swap(), and table_column().