{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.2pssoK6v/b1/libpqxx_7.9.1-2_arm64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.2pssoK6v/b2/libpqxx_7.9.1-2_arm64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,5 +1,5 @@\n \n 1a8793f7460e0d5200a2fd96d87b0c56 2226780 debug optional libpqxx-7.9-dbgsym_7.9.1-2_arm64.deb\n 415bdd04fac310778dc269a218e0537f 164620 libs optional libpqxx-7.9_7.9.1-2_arm64.deb\n 0c86d68da5d6e0e6d5aadbd3ccf5541a 344568 libdevel optional libpqxx-dev_7.9.1-2_arm64.deb\n- 5be0d879f2586a61600538ed1d515c85 2602960 doc optional libpqxx-doc_7.9.1-2_all.deb\n+ 28cdb0fff7ba0042599b0d4f22c08dcc 2604448 doc optional libpqxx-doc_7.9.1-2_all.deb\n"}, {"source1": "libpqxx-doc_7.9.1-2_all.deb", "source2": "libpqxx-doc_7.9.1-2_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2024-07-10 18:27:49.000000 debian-binary\n--rw-r--r-- 0 0 0 31992 2024-07-10 18:27:49.000000 control.tar.xz\n--rw-r--r-- 0 0 0 2570776 2024-07-10 18:27:49.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 31996 2024-07-10 18:27:49.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 2572260 2024-07-10 18:27:49.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./control", "source2": "./control", "unified_diff": "@@ -1,13 +1,13 @@\n Package: libpqxx-doc\n Source: libpqxx\n Version: 7.9.1-2\n Architecture: all\n Maintainer: Debian PostgreSQL team \n-Installed-Size: 13312\n+Installed-Size: 13361\n Suggests: libpqxx-dev (>= 7.9.1-2)\n Section: doc\n Priority: optional\n Multi-Arch: foreign\n Homepage: https://github.com/jtv/libpqxx/\n Description: C++ library to connect to PostgreSQL (documentation)\n C++ library to enable user programs to communicate with\n"}, {"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -57,22 +57,22 @@\n -rw-r--r-- 0 root (0) root (0) 7476 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connecting-members.html\n -rw-r--r-- 0 root (0) root (0) 16230 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connecting.html\n -rw-r--r-- 0 root (0) root (0) 678 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connecting.js\n -rw-r--r-- 0 root (0) root (0) 27344 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connection-members.html\n -rw-r--r-- 0 root (0) root (0) 113472 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connection.html\n -rw-r--r-- 0 root (0) root (0) 5513 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connection.js\n -rw-r--r-- 0 root (0) root (0) 29785 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator-members.html\n--rw-r--r-- 0 root (0) root (0) 62527 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator.html\n+-rw-r--r-- 0 root (0) root (0) 75521 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator.html\n -rw-r--r-- 0 root (0) root (0) 1037 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator.js\n -rw-r--r-- 0 root (0) root (0) 734 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator__coll__graph.map\n -rw-r--r-- 0 root (0) root (0) 7752 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator__coll__graph.png\n -rw-r--r-- 0 root (0) root (0) 769 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 8763 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 25117 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator-members.html\n--rw-r--r-- 0 root (0) root (0) 31660 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator.html\n+-rw-r--r-- 0 root (0) root (0) 37135 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator.html\n -rw-r--r-- 0 root (0) root (0) 1273 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator.js\n -rw-r--r-- 0 root (0) root (0) 1052 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator__coll__graph.map\n -rw-r--r-- 0 root (0) root (0) 11447 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator__coll__graph.png\n -rw-r--r-- 0 root (0) root (0) 776 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 8876 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 20910 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__row__iterator-members.html\n -rw-r--r-- 0 root (0) root (0) 24738 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__row__iterator.html\n@@ -316,18 +316,18 @@\n -rw-r--r-- 0 root (0) root (0) 9532 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range-members.html\n -rw-r--r-- 0 root (0) root (0) 22537 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range.html\n -rw-r--r-- 0 root (0) root (0) 643 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range.js\n -rw-r--r-- 0 root (0) root (0) 10254 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range__bound-members.html\n -rw-r--r-- 0 root (0) root (0) 14961 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range__bound.html\n -rw-r--r-- 0 root (0) root (0) 618 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1range__bound.js\n -rw-r--r-- 0 root (0) root (0) 19948 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result-members.html\n--rw-r--r-- 0 root (0) root (0) 52421 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result.html\n+-rw-r--r-- 0 root (0) root (0) 62624 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result.html\n -rw-r--r-- 0 root (0) root (0) 2267 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result.js\n -rw-r--r-- 0 root (0) root (0) 19732 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row-members.html\n--rw-r--r-- 0 root (0) root (0) 51379 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row.html\n+-rw-r--r-- 0 root (0) root (0) 60574 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row.html\n -rw-r--r-- 0 root (0) root (0) 1893 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row.js\n -rw-r--r-- 0 root (0) root (0) 421 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row__coll__graph.map\n -rw-r--r-- 0 root (0) root (0) 4514 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row__coll__graph.png\n -rw-r--r-- 0 root (0) root (0) 753 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row__inherit__graph.map\n -rw-r--r-- 0 root (0) root (0) 8703 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row__inherit__graph.png\n -rw-r--r-- 0 root (0) root (0) 658 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1sql__error__coll__graph.map\n -rw-r--r-- 0 root (0) root (0) 5836 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1sql__error__coll__graph.png\n@@ -844,19 +844,19 @@\n -rw-r--r-- 0 root (0) root (0) 4859 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/prepared__statement_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 101843 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/range_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 5685 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/resize.js\n -rw-r--r-- 0 root (0) root (0) 8659 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result-connection_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 10652 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result-creation_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 8755 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result-pipeline_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 8590 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result-sql__cursor_8hxx_source.html\n--rw-r--r-- 0 root (0) root (0) 47760 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result_8hxx_source.html\n--rw-r--r-- 0 root (0) root (0) 30983 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result__iter_8hxx_source.html\n--rw-r--r-- 0 root (0) root (0) 61623 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result__iterator_8hxx_source.html\n+-rw-r--r-- 0 root (0) root (0) 49500 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result_8hxx_source.html\n+-rw-r--r-- 0 root (0) root (0) 33088 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result__iter_8hxx_source.html\n+-rw-r--r-- 0 root (0) root (0) 64819 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/result__iterator_8hxx_source.html\n -rw-r--r-- 0 root (0) root (0) 19458 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/robusttransaction_8hxx_source.html\n--rw-r--r-- 0 root (0) root (0) 90886 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/row_8hxx_source.html\n+-rw-r--r-- 0 root (0) root (0) 95674 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/row_8hxx_source.html\n drwxr-xr-x 0 root (0) root (0) 0 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/\n -rw-r--r-- 0 root (0) root (0) 7418 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_0.js\n -rw-r--r-- 0 root (0) root (0) 4742 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_1.js\n -rw-r--r-- 0 root (0) root (0) 6978 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_10.js\n -rw-r--r-- 0 root (0) root (0) 20982 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_11.js\n -rw-r--r-- 0 root (0) root (0) 7494 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_12.js\n -rw-r--r-- 0 root (0) root (0) 2858 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_13.js\n@@ -873,15 +873,15 @@\n -rw-r--r-- 0 root (0) root (0) 1038 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_7.js\n -rw-r--r-- 0 root (0) root (0) 5822 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_8.js\n -rw-r--r-- 0 root (0) root (0) 147 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_9.js\n -rw-r--r-- 0 root (0) root (0) 2861 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_a.js\n -rw-r--r-- 0 root (0) root (0) 1297 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_b.js\n -rw-r--r-- 0 root (0) root (0) 8911 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_c.js\n -rw-r--r-- 0 root (0) root (0) 8813 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_d.js\n--rw-r--r-- 0 root (0) root (0) 6212 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_e.js\n+-rw-r--r-- 0 root (0) root (0) 6249 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_e.js\n -rw-r--r-- 0 root (0) root (0) 4374 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/all_f.js\n -rw-r--r-- 0 root (0) root (0) 875 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_0.js\n -rw-r--r-- 0 root (0) root (0) 1086 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_1.js\n -rw-r--r-- 0 root (0) root (0) 975 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_10.js\n -rw-r--r-- 0 root (0) root (0) 835 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_11.js\n -rw-r--r-- 0 root (0) root (0) 157 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_12.js\n -rw-r--r-- 0 root (0) root (0) 85 2024-07-10 18:27:49.000000 ./usr/share/doc/libpqxx-doc/doxygen-html/search/classes_13.js\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__fieldstream.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__fieldstream.html", "unified_diff": "@@ -148,15 +148,15 @@\n \n  basic_fieldstream (field const &f)\n  \n \n

Detailed Description

\n
template<typename CHAR = char, typename TRAITS = std::char_traits<CHAR>>
\n class pqxx::basic_fieldstream< CHAR, TRAITS >

Input stream that gets its data from a result field.

\n-
Deprecated:
To convert a field's value string to some other type, e.g. to an int, use the field's as<...>() member function. To read a field efficiently just as a string, use its c_str() or its as<std::string_vview>().
\n+
Deprecated:
To convert a field's value string to some other type, e.g. to an int, use the field's as<...>() member function. To read a field efficiently just as a string, use its c_str() or its as<std::string_vview>().
\n

Works like any other istream to read data from a field. It supports all formatting and streaming operations of std::istream. For convenience there is a fieldstream alias, which defines a basic_fieldstream for char. This is similar to how e.g. std::ifstream relates to std::basic_ifstream.

\n

This class has only been tested for the char type (and its default traits).

\n

The documentation for this class was generated from the following file:\n \n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__ilostream.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__ilostream.html", "unified_diff": "@@ -151,15 +151,15 @@\n  basic_ilostream (dbtransaction &t, oid o, largeobject::size_type buf_size=512)\n  Create a basic_ilostream.
\n  \n \n

Detailed Description

\n
template<typename CHAR = char, typename TRAITS = std::char_traits<CHAR>>
\n class pqxx::basic_ilostream< CHAR, TRAITS >

Input stream that gets its data from a large object.

\n-
Deprecated:
Access large objects directly using the blob class.
\n+
Deprecated:
Access large objects directly using the blob class.
\n

This class worked like any other istream, but to read data from a large object. It supported all formatting and streaming operations of std::istream.

\n

This functionality was considered too fragile and complex, so it has been replaced with a single, much simpler class.

\n

Constructor & Destructor Documentation

\n \n

◆ basic_ilostream() [1/2]

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__lostream.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__lostream.html", "unified_diff": "@@ -151,15 +151,15 @@\n  basic_lostream (dbtransaction &t, oid o, largeobject::size_type buf_size=512)\n  Create a basic_lostream.
\n  \n \n

Detailed Description

\n
template<typename CHAR = char, typename TRAITS = std::char_traits<CHAR>>
\n class pqxx::basic_lostream< CHAR, TRAITS >

Stream that reads and writes a large object.

\n-
Deprecated:
Access large objects directly using the blob class.
\n+
Deprecated:
Access large objects directly using the blob class.
\n

This worked like a std::iostream, but to read data from, or write data to, a large object. It supported all formatting and streaming operations of std::iostream.

\n

This functionality was considered too fragile and complex, so it has been replaced with a single, much simpler class.

\n

Constructor & Destructor Documentation

\n \n

◆ basic_lostream() [1/2]

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__olostream.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1basic__olostream.html", "unified_diff": "@@ -151,15 +151,15 @@\n  basic_olostream (dbtransaction &t, oid o, largeobject::size_type buf_size=512)\n  Create a basic_olostream.
\n  \n \n

Detailed Description

\n
template<typename CHAR = char, typename TRAITS = std::char_traits<CHAR>>
\n class pqxx::basic_olostream< CHAR, TRAITS >

Output stream that writes data back to a large object.

\n-
Deprecated:
Access large objects directly using the blob class.
\n+
Deprecated:
Access large objects directly using the blob class.
\n

This worked like any other ostream, but to write data to a large object. It supported all formatting and streaming operations of std::ostream.

\n

This functionality was considered too fragile and complex, so it has been replaced with a single, much simpler class.

\n

Constructor & Destructor Documentation

\n \n

◆ basic_olostream() [1/2]

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connection.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1connection.html", "unified_diff": "@@ -1408,15 +1408,15 @@\n )\n &\n \n \n
\n \n

Set session variable, using SQL's SET command.

\n-
Deprecated:
To set a session variable, use set_session_var. To set a transaction-local variable, execute an SQL SET command.
\n+
Deprecated:
To set a session variable, use set_session_var. To set a transaction-local variable, execute an SQL SET command.
\n
Warning
When setting a string value, you must escape and quote it first. Use the quote() function to do that.
\n
\n This executes an SQL query, so do not get or set variables while a table stream or pipeline is active on the same connection.
\n
Parameters
\n \n \n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__result__iterator.html", "unified_diff": "@@ -128,298 +128,298 @@\n \"\"\n \n
[legend]
\n
varVariable to set.
valueNew value for Var. This can be any SQL expression. If it's a string, be sure that it's properly escaped and quoted.
\n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n

\n Public Types

\n-using iterator_category = std::random_access_iterator_tag
iterator_category = std::random_access_iterator_tag
 
\n-using value_type = row const
value_type = row const
 
\n-using pointer = row const *
pointer = row const *
 
\n-using reference = row
reference = row
 
\n-using size_type = result_size_type
size_type = result_size_type
 
\n-using difference_type = result_difference_type
difference_type = result_difference_type
 
\"-\"/ Public Types inherited from pqxx::row
\n-using size_type = row_size_type
size_type = row_size_type
 
\n-using difference_type = row_difference_type
difference_type = row_difference_type
 
\n-using const_iterator = const_row_iterator
const_iterator = const_row_iterator
 
\n-using iterator = const_iterator
iterator = const_iterator
 
\n-using reference = field
reference = field
 
\n-using pointer = const_row_iterator
pointer = const_row_iterator
 
\n-using const_reverse_iterator = const_reverse_row_iterator
const_reverse_iterator = const_reverse_row_iterator
 
\n-using reverse_iterator = const_reverse_iterator
reverse_iterator = const_reverse_iterator
 
\n \n \n+ \n \n \n \n+ \n \n \n \n+ \n \n \n \n+ \n \n \n \n \n \n+pointer \n \n \n \n+reference \n \n \n \n \n+const_result_iterator & \n \n \n+const_result_iterator & \n \n \n+const_result_iterator \n \n \n \n \n+const_result_iterator \n \n \n \n \n+const_result_iterator & \n \n \n+const_result_iterator & \n \n \n+void \n \n \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n \n+reference \n \n \n+reference \n \n \n+reference \n \n-\n+\n \n \n+constexpr result::size_type \n \n \n \n \n+ \n \n \n+ \n \n \n+row & \n \n \n+row & \n \n \n+PQXX_PURE bool \n \n \n+bool \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+reference \n \n \n+reference \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+reference \n \n-\n+\n \n \n+reference \n \n-\n+\n \n \n+constexpr size_type \n \n \n+constexpr result::size_type \n \n \n \n+size_type \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n-\n+\n \n \n \n+size_type \n \n \n \n+constexpr result::size_type \n \n-\n-\n+\n+\n \n \n \n-\n+\n \n \n \n+void \n \n-\n+\n \n \n+PQXX_PURE bool \n \n \n

\n Public Member Functions

\n- const_result_iterator () noexcept=default
const_result_iterator () noexcept=default
 Create an iterator, but in an unusable state.
 
\n- const_result_iterator (const_result_iterator const &) noexcept=default
const_result_iterator (const_result_iterator const &) noexcept=default
 Copy an iterator.
 
\n- const_result_iterator (const_result_iterator &&) noexcept=default
const_result_iterator (const_result_iterator &&) noexcept=default
 Move an iterator.
 
\n- const_result_iterator (row const &t) noexcept
const_result_iterator (row const &t) noexcept
 Begin iterating a row.
 
Dereferencing operators

An iterator \"points to\" its own row, which is also itself. This makes it easy to address a result as a two-dimensional container, without going through the intermediate step of dereferencing the iterator. It makes the interface similar to C pointer/array semantics.

\n

IIRC Alex Stepanov, the inventor of the STL, once remarked that having this as standard behaviour for pointers would be useful in some algorithms. So even if this makes me look foolish, I would seem to be in distinguished company.

\n
\n-pointer operator-> () const
operator-> () const
 Dereference the iterator.
 
\n-reference operator* () const
operator* () const
 Dereference the iterator.
 
Manipulations
\n-const_result_iteratoroperator= (const_result_iterator const &rhs)
operator= (const_result_iterator const &rhs)
 
\n-const_result_iteratoroperator= (const_result_iterator &&rhs)
operator= (const_result_iterator &&rhs)
 
\n-const_result_iterator operator++ (int) &
operator++ (int) &
 
\n const_result_iteratoroperator++ ()
 
\n-const_result_iterator operator-- (int) &
operator-- (int) &
 
\n const_result_iteratoroperator-- ()
 
\n-const_result_iteratoroperator+= (difference_type i)
operator+= (difference_type i)
 
\n-const_result_iteratoroperator-= (difference_type i)
operator-= (difference_type i)
 
\n-void swap (const_result_iterator &other) noexcept
swap (const_result_iterator &other) noexcept
 Interchange two iterators in an exception-safe manner.
 
Comparisons
\n-bool operator== (const_result_iterator const &i) const
operator== (const_result_iterator const &i) const
 
\n-bool operator!= (const_result_iterator const &i) const
operator!= (const_result_iterator const &i) const
 
\n-bool operator< (const_result_iterator const &i) const
operator< (const_result_iterator const &i) const
 
\n-bool operator<= (const_result_iterator const &i) const
operator<= (const_result_iterator const &i) const
 
\n-bool operator> (const_result_iterator const &i) const
operator> (const_result_iterator const &i) const
 
\n-bool operator>= (const_result_iterator const &i) const
operator>= (const_result_iterator const &i) const
 
Field access
\n-reference back () const noexcept
back () const noexcept
 
\n-reference front () const noexcept
front () const noexcept
 
\n-reference at (size_type) const
at (size_type) const
 
reference at (zview col_name) const
reference at (zview col_name) const
 
\n-constexpr result::size_type rownumber () const noexcept
rownumber () const noexcept
 Row number, assuming this is a real row and not end()/rend().
 
\"-\"/ Public Member Functions inherited from pqxx::row
\n- row (row &&) noexcept=default
row (row &&) noexcept=default
 
\n- row (row const &) noexcept=default
row (row const &) noexcept=default
 
\n-rowoperator= (row const &) noexcept=default
operator= (row const &) noexcept=default
 
\n-rowoperator= (row &&) noexcept=default
operator= (row &&) noexcept=default
 
\n-PQXX_PURE bool operator== (row const &) const noexcept
operator== (row const &) const noexcept
 
\n-bool operator!= (row const &rhs) const noexcept
operator!= (row const &rhs) const noexcept
 
\n-const_iterator begin () const noexcept
begin () const noexcept
 
\n-const_iterator cbegin () const noexcept
cbegin () const noexcept
 
\n-const_iterator end () const noexcept
end () const noexcept
 
\n-const_iterator cend () const noexcept
cend () const noexcept
 
\n-reference front () const noexcept
front () const noexcept
 
\n-reference back () const noexcept
back () const noexcept
 
\n-const_reverse_row_iterator rbegin () const noexcept
rbegin () const noexcept
 
\n-const_reverse_row_iterator crbegin () const noexcept
crbegin () const noexcept
 
\n-const_reverse_row_iterator rend () const noexcept
rend () const noexcept
 
\n-const_reverse_row_iterator crend () const noexcept
crend () const noexcept
 
\n-reference operator[] (size_type) const noexcept
operator[] (size_type) const noexcept
 
reference operator[] (zview col_name) const
reference operator[] (zview col_name) const
 
\n-reference at (size_type) const
at (size_type) const
 
reference at (zview col_name) const
reference at (zview col_name) const
 
\n-constexpr size_type size () const noexcept
size () const noexcept
 
\n-constexpr result::size_type rownumber () const noexcept
rownumber () const noexcept
 Row number, assuming this is a real row and not end()/rend().
 
\n-size_type column_number (zview col_name) const
column_number (zview col_name) const
 Number of given column (throws exception if it doesn't exist).
 
\n-oid column_type (size_type) const
column_type (size_type) const
 Return a column's type.
 
\n-oid column_type (zview col_name) const
column_type (zview col_name) const
 Return a column's type.
 
\n-oid column_table (size_type col_num) const
column_table (size_type col_num) const
 What table did this column come from?
 
\n-oid column_table (zview col_name) const
column_table (zview col_name) const
 What table did this column come from?
 
size_type table_column (size_type) const
size_type table_column (size_type) const
 What column number in its table did this result column come from?
 
\n-size_type table_column (zview col_name) const
table_column (zview col_name) const
 What column number in its table did this result column come from?
 
\n-constexpr result::size_type num () const noexcept
num () const noexcept
 
template<typename Tuple >
void to (Tuple &t) const
template<typename Tuple >
void to (Tuple &t) const
 Extract entire row's values into a tuple.
 
template<typename... TYPE>
std::tuple< TYPE... > as () const
std::tuple< TYPE... > as () const
 Extract entire row's values into a tuple.
 
\n-void swap (row &) noexcept
swap (row &) noexcept
 
row slice (size_type sbegin, size_type send) const
row slice (size_type sbegin, size_type send) const
 
\n-PQXX_PURE bool empty () const noexcept
empty () const noexcept
 Is this a row without fields? Can only happen to a slice.
 
\n \n \n+class \n \n \n+const_result_iterator \n \n \n+const_result_iterator \n \n \n+const_result_iterator \n \n \n+difference_type \n \n

Arithmetic operators

\n-class pqxx::result
pqxx::result
 
\n-const_result_iterator operator+ (difference_type, const_result_iterator const &)
operator+ (difference_type, const_result_iterator const &)
 
\n-const_result_iterator operator+ (difference_type) const
operator+ (difference_type) const
 
\n-const_result_iterator operator- (difference_type) const
operator- (difference_type) const
 
\n-difference_type operator- (const_result_iterator const &) const
operator- (const_result_iterator const &) const
 
\n \n \n-\n+\n \n \n+void \n \n \n-\n-\n+\n+\n \n \n \n-\n+template<typenameTuple > \n+\n \n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -9,234 +9,234 @@\n [+]Inheritance diagram for pqxx::const_result_iterator:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n [+]Collaboration diagram for pqxx::const_result_iterator:\n [Collaboration graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_c\bca\bat\bte\beg\bgo\bor\bry\by = std::random_access_iterator_tag\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_c\bca\bat\bte\beg\bgo\bor\bry\by = std::random_access_iterator_tag\n \u00a0\n-using\u00a0 v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw const\n+_\bu_\bs_\bi_\bn_\bg\u00a0 v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-using\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\br_\bo_\bw const *\n+_\bu_\bs_\bi_\bn_\bg\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt *\n \u00a0\n-using\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\br_\bo_\bw\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\br_\bo_\bw\n \u00a0\n-using\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n \u00a0\n [-]\u00a0Public Types inherited from _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw\n-using\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bf_\bi_\be_\bl_\bd\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bf_\bi_\be_\bl_\bd\n \u00a0\n-using\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br () noexcept=default\n+ \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br () _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Create an iterator, but in an unusable state.\n \u00a0\n- \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &) noexcept=default\n+ \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Copy an iterator.\n \u00a0\n \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &&)\n- noexcept=default\n+ _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Move an iterator.\n \u00a0\n- \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br (_\br_\bo_\bw const &t) noexcept\n+ \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &_\bt) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Begin iterating a _\br_\bo_\bw.\n \u00a0\n Dereferencing operators\n An iterator \"points to\" its own row, which is also itself. This makes it easy\n to address a _\br_\be_\bs_\bu_\bl_\bt as a two-dimensional container, without going through the\n intermediate step of dereferencing the iterator. It makes the interface similar\n to C pointer/array semantics.\n IIRC Alex Stepanov, the inventor of the STL, once remarked that having this as\n standard behaviour for pointers would be useful in some algorithms. So even if\n this makes me look foolish, I would seem to be in distinguished company.\n- pointer\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b->\b> () const\n+ _\bp_\bo_\bi_\bn_\bt_\be_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b->\b> () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Dereference the iterator.\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br*\b* () const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br*\b* () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Dereference the iterator.\n \u00a0\n Manipulations\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &rhs)\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs)\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &&rhs)\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &&_\br_\bh_\bs)\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ (int) &\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ (_\bi_\bn_\bt) &\n \u00a0\n _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- (int) &\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- (_\bi_\bn_\bt) &\n \u00a0\n _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b= (difference_type i)\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b= (difference_type _\bi)\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b= (difference_type i)\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b= (difference_type _\bi)\n \u00a0\n- void\u00a0 s\bsw\bwa\bap\bp (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &other) noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 s\bsw\bwa\bap\bp (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &_\bo_\bt_\bh_\be_\br) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Interchange two iterators in an exception-safe\n manner.\n \u00a0\n Comparisons\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b< (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b< (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b<=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b<=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b> (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b> (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b>=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &i) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b>=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n Field access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-constexpr result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () const noexcept\n+_\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Row number, assuming this is a real row and not\n end()/rend().\n \u00a0\n [-]\u00a0Public Member Functions inherited from _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw\n- \u00a0 r\bro\bow\bw (_\br_\bo_\bw &&) noexcept=default\n+ \u00a0 r\bro\bow\bw (_\br_\bo_\bw &&) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- \u00a0 r\bro\bow\bw (_\br_\bo_\bw const &) noexcept=default\n+ \u00a0 r\bro\bow\bw (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw const &) noexcept=default\n+ _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw &&) noexcept=default\n+ _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw &&) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- PQXX_PURE bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\bo_\bw const &) const noexcept\n+ PQXX_PURE _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\bo_\bw const &rhs) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b] (size_type) const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b] (size_type) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- constexpr size_type\u00a0 s\bsi\biz\bze\be () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br size_type\u00a0 s\bsi\biz\bze\be () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n-constexpr result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () const noexcept\n+_\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Row number, assuming this is a real row and not\n end()/rend().\n \u00a0\n- size_type\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw col_name) const\n+ size_type\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Number of given column (throws exception if it\n doesn't exist).\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (size_type) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return a column's type.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return a column's type.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (size_type col_num) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (size_type _\bc_\bo_\bl_\b__\bn_\bu_\bm) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- size_type\u00a0 _\bt_\ba_\bb_\bl_\be_\b__\bc_\bo_\bl_\bu_\bm_\bn (size_type) const\n+ size_type\u00a0 _\bt_\ba_\bb_\bl_\be_\b__\bc_\bo_\bl_\bu_\bm_\bn (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column number in its table did this result\n column come from?\n \u00a0\n- size_type\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw col_name) const\n+ size_type\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column number in its table did this result\n column come from?\n \u00a0\n-constexpr result::size_type\u00a0 n\bnu\bum\bm () const noexcept\n+_\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 n\bnu\bum\bm () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n-template\n- void\u00a0 _\bt_\bo (Tuple &t) const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bu_\bp_\bl_\be >\n+ _\bv_\bo_\bi_\bd\u00a0 _\bt_\bo (_\bT_\bu_\bp_\bl_\be &_\bt) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Extract entire row's values into a tuple.\n \u00a0\n template\n- std::tuple< TYPE... >\u00a0 _\ba_\bs () const\n+ std::tuple< TYPE... >\u00a0 _\ba_\bs () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Extract entire row's values into a tuple.\n \u00a0\n- void\u00a0 s\bsw\bwa\bap\bp (_\br_\bo_\bw &) noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 s\bsw\bwa\bap\bp (_\br_\bo_\bw &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\bo_\bw\u00a0 _\bs_\bl_\bi_\bc_\be (size_type sbegin, size_type send) const\n+ _\br_\bo_\bw\u00a0 _\bs_\bl_\bi_\bc_\be (size_type _\bs_\bb_\be_\bg_\bi_\bn, size_type _\bs_\be_\bn_\bd) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- PQXX_PURE bool\u00a0 e\bem\bmp\bpt\bty\by () const noexcept\n+ PQXX_PURE _\bb_\bo_\bo_\bl\u00a0 e\bem\bmp\bpt\bty\by () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Is this a row without fields? Can only happen to a\n slice.\n \u00a0\n *\b**\b**\b**\b**\b* A\bAr\bri\bit\bth\bhm\bme\bet\bti\bic\bc o\bop\bpe\ber\bra\bat\bto\bor\brs\bs *\b**\b**\b**\b**\b*\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:r\bre\bes\bsu\bul\blt\bt\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:r\bre\bes\bsu\bul\blt\bt\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type, _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type, _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n &)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type) const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type) const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &) const\n+ difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n A\bAd\bdd\bdi\bit\bti\bio\bon\bna\bal\bl I\bIn\bnh\bhe\ber\bri\bit\bte\bed\bd M\bMe\bem\bmb\bbe\ber\brs\bs\n [-]\u00a0Protected Member Functions inherited from _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw\n- \u00a0 _\br_\bo_\bw (_\br_\be_\bs_\bu_\bl_\bt const &r, _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index, size_type\n- cols) noexcept\n+ \u00a0 _\br_\bo_\bw (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &_\br, _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index, size_type\n+ _\bc_\bo_\bl_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- void\u00a0 c\bch\bhe\bec\bck\bk_\b_s\bsi\biz\bze\be (size_type expected) const\n+ _\bv_\bo_\bi_\bd\u00a0 c\bch\bhe\bec\bck\bk_\b_s\bsi\biz\bze\be (size_type _\be_\bx_\bp_\be_\bc_\bt_\be_\bd) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Throw _\bu_\bs_\ba_\bg_\be_\b__\be_\br_\br_\bo_\br if row size is not expected.\n \u00a0\n-template\n- TUPLE\u00a0 _\ba_\bs_\b__\bt_\bu_\bp_\bl_\be () const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bU_\bP_\bL_\bE >\n+ _\bT_\bU_\bP_\bL_\bE\u00a0 _\ba_\bs_\b__\bt_\bu_\bp_\bl_\be () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Convert to a given tuple of values, don't check sizes.\n \u00a0\n-template\n- void\u00a0 c\bco\bon\bnv\bve\ber\brt\bt (Tuple &t) const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bu_\bp_\bl_\be >\n+ _\bv_\bo_\bi_\bd\u00a0 c\bco\bon\bnv\bve\ber\brt\bt (_\bT_\bu_\bp_\bl_\be &_\bt) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Convert entire row to tuple fields, without checking row\n size.\n \u00a0\n [-]\u00a0Protected Attributes inherited from _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw\n _\br_\be_\bs_\bu_\bl_\bt\u00a0 m\bm_\b_r\bre\bes\bsu\bul\blt\bt\n \u00a0 Result set of which this is one row.\n \u00a0\n"}]}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1const__reverse__result__iterator.html", "unified_diff": "@@ -130,141 +130,141 @@\n \"\"\n \n
[legend]
\n

\n Additional Inherited Members

\"-\"/ Protected Member Functions inherited from pqxx::row
 row (result const &r, result_size_type index, size_type cols) noexcept
 row (result const &r, result_size_type index, size_type cols) noexcept
 
\n-void check_size (size_type expected) const
check_size (size_type expected) const
 Throw usage_error if row size is not expected.
 
template<typename TUPLE >
TUPLE as_tuple () const
template<typename TUPLE >
TUPLE as_tuple () const
 Convert to a given tuple of values, don't check sizes.
 
\n-template<typename Tuple >
void convert (Tuple &t) const
void convert (Tuple &t) const
 Convert entire row to tuple fields, without checking row size.
 
\"-\"/ Protected Attributes inherited from pqxx::row
\n result m_result
 Result set of which this is one row.
 
\n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n

\n Public Types

\n-using super = const_result_iterator
super = const_result_iterator
 
\n-using iterator_type = const_result_iterator
iterator_type = const_result_iterator
 
\n-using value_type = iterator_type::value_type
value_type = iterator_type::value_type
 
\n-using reference = iterator_type::reference
reference = iterator_type::reference
 
\n-using difference_type = result_difference_type
difference_type = result_difference_type
 
\n-using iterator_category = std::random_access_iterator_tag
iterator_category = std::random_access_iterator_tag
 
\n-using pointer = row const *
pointer = row const *
 
\n \n \n+ \n \n \n \n+ \n \n \n \n+ \n \n \n \n+ \n \n \n \n+PQXX_PURE const_result_iterator \n \n \n \n \n+const_reverse_result_iterator & \n \n \n+const_reverse_result_iterator & \n \n \n \n \n+const_reverse_result_iterator \n \n \n \n \n+const_reverse_result_iterator \n \n \n+const_reverse_result_iterator & \n \n \n+const_reverse_result_iterator & \n \n \n+void \n \n \n \n+const_reverse_result_iterator \n \n \n+const_reverse_result_iterator \n \n \n+difference_type \n \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n+bool \n \n \n \n+const_result_iterator \n \n \n \n+difference_type \n \n \n \n+reference \n \n \n \n \n+reference \n \n \n+reference \n \n \n+reference \n \n-\n+\n \n \n+constexpr result::size_type \n \n \n

\n Public Member Functions

\n- const_reverse_result_iterator ()=default
const_reverse_result_iterator ()=default
 Create an iterator, but in an unusable state.
 
\n- const_reverse_result_iterator (const_reverse_result_iterator const &rhs)=default
const_reverse_result_iterator (const_reverse_result_iterator const &rhs)=default
 Copy an iterator.
 
\n- const_reverse_result_iterator (const_result_iterator const &rhs)
const_reverse_result_iterator (const_result_iterator const &rhs)
 Copy a reverse iterator from a regular iterator.
 
\n- const_reverse_result_iterator (const_result_iterator const &&rhs)
const_reverse_result_iterator (const_result_iterator const &&rhs)
 Move a regular iterator into a reverse iterator.
 
\n-PQXX_PURE const_result_iterator base () const noexcept
base () const noexcept
 Return the underlying \"regular\" iterator (as per standard library).
 
Manipulations
\n-const_reverse_result_iteratoroperator= (const_reverse_result_iterator const &r)
operator= (const_reverse_result_iterator const &r)
 
\n-const_reverse_result_iteratoroperator= (const_reverse_result_iterator &&r)
operator= (const_reverse_result_iterator &&r)
 
\n const_reverse_result_iteratoroperator++ ()
 
\n-const_reverse_result_iterator operator++ (int) &
operator++ (int) &
 
\n const_reverse_result_iteratoroperator-- ()
 
\n-const_reverse_result_iterator operator-- (int) &
operator-- (int) &
 
\n-const_reverse_result_iteratoroperator+= (difference_type i)
operator+= (difference_type i)
 
\n-const_reverse_result_iteratoroperator-= (difference_type i)
operator-= (difference_type i)
 
\n-void swap (const_reverse_result_iterator &other) noexcept
swap (const_reverse_result_iterator &other) noexcept
 
Arithmetic operators
\n-const_reverse_result_iterator operator+ (difference_type i) const
operator+ (difference_type i) const
 
\n-const_reverse_result_iterator operator- (difference_type i)
operator- (difference_type i)
 
\n-difference_type operator- (const_reverse_result_iterator const &rhs) const
operator- (const_reverse_result_iterator const &rhs) const
 
Comparisons
\n-bool operator== (const_reverse_result_iterator const &rhs) const noexcept
operator== (const_reverse_result_iterator const &rhs) const noexcept
 
\n-bool operator!= (const_reverse_result_iterator const &rhs) const noexcept
operator!= (const_reverse_result_iterator const &rhs) const noexcept
 
\n-bool operator< (const_reverse_result_iterator const &rhs) const
operator< (const_reverse_result_iterator const &rhs) const
 
\n-bool operator<= (const_reverse_result_iterator const &rhs) const
operator<= (const_reverse_result_iterator const &rhs) const
 
\n-bool operator> (const_reverse_result_iterator const &rhs) const
operator> (const_reverse_result_iterator const &rhs) const
 
\n-bool operator>= (const_reverse_result_iterator const &rhs) const
operator>= (const_reverse_result_iterator const &rhs) const
 
Dereferencing operators
\n-const_result_iterator operator- (difference_type) const
operator- (difference_type) const
 Dereference iterator.
 
\n-difference_type operator- (const_result_iterator const &) const
operator- (const_result_iterator const &) const
 Dereference iterator.
 
\n-reference operator* () const
operator* () const
 Dereference iterator.
 
Field access
\n-reference back () const noexcept
back () const noexcept
 
\n-reference front () const noexcept
front () const noexcept
 
\n-reference at (size_type) const
at (size_type) const
 
reference at (zview col_name) const
reference at (zview col_name) const
 
\n-constexpr result::size_type rownumber () const noexcept
rownumber () const noexcept
 Row number, assuming this is a real row and not end()/rend().
 
\n

Detailed Description

\n

Reverse iterator for result. Use as result::const_reverse_iterator.

\n

Member Function Documentation

\n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -9,120 +9,120 @@\n [+]Inheritance diagram for pqxx::const_reverse_result_iterator:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n [+]Collaboration diagram for pqxx::const_reverse_result_iterator:\n [Collaboration graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-using\u00a0 s\bsu\bup\bpe\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 s\bsu\bup\bpe\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_t\bty\byp\bpe\be = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_t\bty\byp\bpe\be = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be = iterator_type::value_type\n+_\bu_\bs_\bi_\bn_\bg\u00a0 v\bva\bal\blu\bue\be_\b_t\bty\byp\bpe\be = _\bi_\bt_\be_\br_\ba_\bt_\bo_\br_\b__\bt_\by_\bp_\be_\b:_\b:_\bv_\ba_\bl_\bu_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bi_\bt_\be_\br_\ba_\bt_\bo_\br_\b__\bt_\by_\bp_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bi_\bt_\be_\br_\ba_\bt_\bo_\br_\b__\bt_\by_\bp_\be_\b:_\b:_\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\n \u00a0\n-using\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_c\bca\bat\bte\beg\bgo\bor\bry\by = std::random_access_iterator_tag\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br_\b_c\bca\bat\bte\beg\bgo\bor\bry\by = std::random_access_iterator_tag\n \u00a0\n-using\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\br_\bo_\bw const *\n+_\bu_\bs_\bi_\bn_\bg\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt *\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br ()=default\n+ \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br ()=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Create an iterator, but in an unusable state.\n \u00a0\n \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br\n- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &rhs)=default\n+ (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &_\br_\bh_\bs)=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Copy an iterator.\n \u00a0\n \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br\n- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &rhs)\n+ (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs)\n \u00a0 Copy a reverse iterator from a regular\n iterator.\n \u00a0\n \u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br\n- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &&rhs)\n+ (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &&_\br_\bh_\bs)\n \u00a0 Move a regular iterator into a reverse\n iterator.\n \u00a0\n-PQXX_PURE _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bba\bas\bse\be () const noexcept\n+PQXX_PURE _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bba\bas\bse\be () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Return the underlying \"regular\" iterator (as\n per standard library).\n \u00a0\n Manipulations\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &r)\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &_\br)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &&r)\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &&_\br)\n \u00a0\n _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ (int) &\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b++\b+ (_\bi_\bn_\bt) &\n \u00a0\n _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- ()\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- (int) &\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b--\b- (_\bi_\bn_\bt) &\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b= (difference_type i)\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+=\b= (difference_type _\bi)\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b= (difference_type i)\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b-=\b= (difference_type _\bi)\n \u00a0\n- void\u00a0 s\bsw\bwa\bap\bp (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &other)\n- noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 s\bsw\bwa\bap\bp (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br &_\bo_\bt_\bh_\be_\br)\n+ _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n Arithmetic operators\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type i) const\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br+\b+ (difference_type _\bi) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type i)\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type _\bi)\n \u00a0\n- difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &rhs) const\n+ difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n Comparisons\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n- const &rhs) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+ _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n- const &rhs) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+ _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b< (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &rhs) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b< (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b<=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n- const &rhs) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br<\b<=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+ _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b> (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const\n- &rhs) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b> (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt\n+ &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b>=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n- const &rhs) const\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br>\b>=\b= (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+ _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n Dereferencing operators\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type) const\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (difference_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Dereference iterator.\n \u00a0\n- difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br const &)\n- const\n+ difference_type\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br-\b- (_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br _\bc_\bo_\bn_\bs_\bt &)\n+ _\bc_\bo_\bn_\bs_\bt\n \u00a0 Dereference iterator.\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br*\b* () const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br*\b* () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Dereference iterator.\n \u00a0\n Field access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- constexpr result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Row number, assuming this is a real row and\n not end()/rend().\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n Reverse iterator for result. Use as result::const_reverse_iterator.\n *\b**\b**\b**\b**\b* M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bat\bt(\b()\b) *\b**\b**\b**\b**\b*\n"}]}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1internal_1_1dynamic__params.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1internal_1_1dynamic__params.html", "unified_diff": "@@ -127,15 +127,15 @@\n \n constexpr auto access (decltype(*std::declval< IT >()) value) const -> decltype(std::declval< ACCESSOR >()(value))\n  \n \n

Detailed Description

\n
template<typename IT, typename ACCESSOR = decltype(iterator_identity<IT>)>
\n class pqxx::internal::dynamic_params< IT, ACCESSOR >

Marker type: pass a dynamically-determined number of statement parameters.

\n-
Deprecated:
Use params instead.
\n+
Deprecated:
Use params instead.
\n

Normally when invoking a prepared or parameterised statement, the number of parameters is known at compile time. For instance, t.exec_prepared(\"foo\", 1, \"x\"); executes statement foo with two parameters, an int and a C string.

\n

But sometimes you may want to pass a number of parameters known only at run time. In those cases, a dynamic_params encodes a dynamically determined number of parameters. You can mix these with regular, static parameter lists, and you can re-use them for multiple statement invocations.

\n

A dynamic_params object does not store copies of its parameters, so make sure they remain accessible until you've executed the statement.

\n

The ACCESSOR is an optional callable (such as a lambda). If you pass an accessor a, then each parameter p goes into your statement as a(p).

\n

Constructor & Destructor Documentation

\n \n

◆ dynamic_params() [1/2]

\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobject.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobject.html", "unified_diff": "@@ -171,15 +171,15 @@\n  \n \n PQXX_PRIVATE std::string reason (connection const &, int err) const\n  \n \n

Detailed Description

\n

Identity of a large object.

\n-
Deprecated:
Use the blob class instead.
\n+
Deprecated:
Use the blob class instead.
\n

Encapsulates the identity of a large object.

\n

A largeobject must be accessed only from within a backend transaction, but the object's identity remains valid as long as the object exists.

\n

Constructor & Destructor Documentation

\n \n

◆ largeobject() [1/5]

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobject__streambuf.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobject__streambuf.html", "unified_diff": "@@ -190,15 +190,15 @@\n \n virtual int_type underflow () override\n  \n \n

Detailed Description

\n
template<typename CHAR = char, typename TRAITS = std::char_traits<CHAR>>
\n class pqxx::largeobject_streambuf< CHAR, TRAITS >

Streambuf to use large objects in standard I/O streams.

\n-
Deprecated:
Access large objects directly using the blob class.
\n+
Deprecated:
Access large objects directly using the blob class.
\n

The standard streambuf classes provide uniform access to data storage such as files or string buffers, so they can be accessed using standard input or output streams. This streambuf implementation provided similar access to large objects, so they could be read and written using the same stream classes.

\n

This functionality was considered too fragile and complex, so it has been replaced with a single, much simpler class.

\n

Member Data Documentation

\n \n

◆ default_mode

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobjectaccess.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1largeobjectaccess.html", "unified_diff": "@@ -238,15 +238,15 @@\n  \n bool operator>= (largeobject const &other) const\n  Compare object identities.
\n  \n \n

Detailed Description

\n

Accessor for large object's contents.

\n-
Deprecated:
Use the blob class instead.
\n+
Deprecated:
Use the blob class instead.
\n

Member Typedef Documentation

\n \n

◆ openmode

\n \n
\n
\n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1params.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1params.html", "unified_diff": "@@ -183,15 +183,15 @@\n \n \n \n \n \n
(binarystring const & value) &
\n
\n-
Deprecated:
Append binarystring parameter.
\n+
Deprecated:
Append binarystring parameter.
\n

The binarystring must stay valid for as long as the params remains active.

\n \n
\n
\n \n

◆ append() [2/6]

\n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1result.html", "unified_diff": "@@ -100,205 +100,206 @@\n \n

Result set containing data returned by a query or command. \n More...

\n \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n

\n Public Types

\n-using size_type = result_size_type
size_type = result_size_type
 
\n-using difference_type = result_difference_type
difference_type = result_difference_type
 
\n-using reference = row
reference = row
 
\n-using const_iterator = const_result_iterator
const_iterator = const_result_iterator
 
\n-using pointer = const_iterator
pointer = const_iterator
 
\n-using iterator = const_iterator
iterator = const_iterator
 
\n-using const_reverse_iterator = const_reverse_result_iterator
const_reverse_iterator = const_reverse_result_iterator
 
\n-using reverse_iterator = const_reverse_iterator
reverse_iterator = const_reverse_iterator
 
\n \n \n+ \n \n \n+ \n \n-\n+\n \n \n \n+result & \n \n \n \n \n \n+bool \n \n \n \n+bool \n \n \n \n-\n+\n \n \n \n+const_reverse_iterator \n \n \n+const_reverse_iterator \n \n \n+const_reverse_iterator \n \n \n+const_reverse_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+reference \n \n \n+reference \n \n \n+PQXX_PURE size_type \n \n \n+PQXX_PURE bool \n \n \n+size_type \n \n-\n+\n \n \n-\n+\n \n \n \n+row \n \n \n \n+field \n \n \n-\n+\n \n \n

\n Public Member Functions

\n- result (result const &rhs) noexcept=default
result (result const &rhs) noexcept=default
 
\n- result (result &&rhs) noexcept=default
result (result &&rhs) noexcept=default
 
resultoperator= (result const &rhs) noexcept=default
resultoperator= (result const &rhs) noexcept=default
 Assign one result to another.
 
\n-resultoperator= (result &&rhs) noexcept=default
operator= (result &&rhs) noexcept=default
 Assign one result to another, invaliding the old one.
 
Comparisons

You can compare results for equality. Beware: this is a very strict, dumb comparison. The smallest difference between two results (such as a string \"Foo\" versus a string \"foo\") will make them unequal.

\n
\n-bool operator== (result const &) const noexcept
operator== (result const &) const noexcept
 Compare two results for equality.
 
\n-bool operator!= (result const &rhs) const noexcept
operator!= (result const &rhs) const noexcept
 Compare two results for inequality.
 
template<typename... TYPE>
auto iter () const
auto iter () const
 Iterate rows, reading them directly into a tuple of \"TYPE...\".
 
\n-const_reverse_iterator rbegin () const
rbegin () const
 
\n-const_reverse_iterator crbegin () const
crbegin () const
 
\n-const_reverse_iterator rend () const
rend () const
 
\n-const_reverse_iterator crend () const
crend () const
 
\n-const_iterator begin () const noexcept
begin () const noexcept
 
\n-const_iterator cbegin () const noexcept
cbegin () const noexcept
 
\n-const_iterator end () const noexcept
end () const noexcept
 
\n-const_iterator cend () const noexcept
cend () const noexcept
 
\n-reference front () const noexcept
front () const noexcept
 
\n-reference back () const noexcept
back () const noexcept
 
\n-PQXX_PURE size_type size () const noexcept
size () const noexcept
 
\n-PQXX_PURE bool empty () const noexcept
empty () const noexcept
 
\n-size_type capacity () const noexcept
capacity () const noexcept
 
void swap (result &) noexcept
void swap (result &) noexcept
 Exchange two result values in an exception-safe manner.
 
row operator[] (size_type i) const noexcept
row operator[] (size_type i) const noexcept
 Index a row by number.
 
\n-row at (size_type) const
at (size_type) const
 Index a row by number, but check that the row number is valid.
 
\n-field at (size_type, row_size_type) const
at (size_type, row_size_type) const
 Index a field by row number and column number.
 
void clear () noexcept
void clear () noexcept
 Let go of the result's data.
 
\n \n \n+class \n \n \n+class \n \n \n+class \n \n \n+class \n \n \n+class \n \n \n+class \n \n \n+PQXX_PURE row_size_type \n \n \n \n+row_size_type \n \n \n \n+charconst * \n \n \n-\n+\n \n \n-\n+\n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+row_size_type \n \n \n \n+row_size_type \n \n \n \n+PQXX_PURE std::string const & \n \n \n-\n+\n \n \n-\n+\n \n \n-\n-\n+\n+\n \n \n

Column information

\n-class pqxx::internal::gate::result_pipeline
pqxx::internal::gate::result_pipeline
 
\n-class pqxx::field
pqxx::field
 
\n-class pqxx::internal::gate::result_creation
pqxx::internal::gate::result_creation
 
\n-class pqxx::internal::gate::result_connection
pqxx::internal::gate::result_connection
 
\n-class pqxx::internal::gate::result_row
pqxx::internal::gate::result_row
 
\n-class pqxx::internal::gate::result_sql_cursor
pqxx::internal::gate::result_sql_cursor
 
\n-PQXX_PURE row_size_type columns () const noexcept
columns () const noexcept
 Number of columns in result.
 
\n-row_size_type column_number (zview name) const
column_number (zview name) const
 Number of given column (throws exception if it doesn't exist).
 
\n-char const * column_name (row_size_type number) const &
column_name (row_size_type number) const &
 Name of column with this number (throws exception if it doesn't exist)
 
int column_storage (row_size_type number) const
int column_storage (row_size_type number) const
 Server-side storage size for field of column's type, in bytes.
 
int column_type_modifier (row_size_type number) const noexcept
int column_type_modifier (row_size_type number) const noexcept
 Type modifier of the column with this number.
 
\n-oid column_type (row_size_type col_num) const
column_type (row_size_type col_num) const
 Return column's type, as an OID from the system catalogue.
 
\n-oid column_type (zview col_name) const
column_type (zview col_name) const
 Return column's type, as an OID from the system catalogue.
 
\n-oid column_table (row_size_type col_num) const
column_table (row_size_type col_num) const
 What table did this column come from?
 
\n-oid column_table (zview col_name) const
column_table (zview col_name) const
 What table did this column come from?
 
\n-row_size_type table_column (row_size_type col_num) const
table_column (row_size_type col_num) const
 What column in its table did this column come from?
 
\n-row_size_type table_column (zview col_name) const
table_column (zview col_name) const
 What column in its table did this column come from?
 
\n-PQXX_PURE std::string const & query () const &noexcept
query () const &noexcept
 Query that produced this result, if available (empty string otherwise)
 
PQXX_PURE oid inserted_oid () const
PQXX_PURE oid inserted_oid () const
 If command was an INSERT of 1 row, return oid of the inserted row.
 
PQXX_PURE size_type affected_rows () const
PQXX_PURE size_type affected_rows () const
 If command was INSERT, UPDATE, or DELETE: number of affected rows.
 
template<typename CALLABLE >
void for_each (CALLABLE &&func) const
template<typename CALLABLE >
void for_each (CALLABLE &&func) const
 Run func on each row, passing the row's fields as parameters.
 
\n

Detailed Description

\n

Result set containing data returned by a query or command.

\n

This behaves as a container (as defined by the C++ standard library) and provides random access const iterators to iterate over its rows. You can also access a row by indexing a result R by the row's zero-based number:

\n-
for (result::size_type i=0; i < std::size(R); ++i) Process(R[i]);
\n+
for (result::size_type i=0; i < std::size(R); ++i) Process(R[i]);
\n+
Reverse iterator for result. Use as result::const_reverse_iterator.
Definition result_iterator.hxx:194
\n

Result sets in libpqxx are lightweight, reference-counted wrapper objects which are relatively small and cheap to copy. Think of a result object as a \"smart pointer\" to an underlying result set.

\n
Warning
The result set that a result object points to is not thread-safe. If you copy a result object, it still refers to the same underlying result set. So never copy, destroy, query, or otherwise access a result while another thread may be copying, destroying, querying, or otherwise accessing the same result set–even if it is doing so through a different result object!
\n

Member Function Documentation

\n \n

◆ affected_rows()

\n \n
\n@@ -324,15 +325,15 @@\n
\n
\n \n \n \n \n \n
\n \n \n- \n+ \n \n \n \n \n
void pqxx::result::clear void pqxx::result::clear ()
\n
\n@@ -350,15 +351,15 @@\n \n

◆ column_storage()

\n \n
\n
\n \n \n- \n+ \n \n \n \n \n \n
int pqxx::result::column_storage int pqxx::result::column_storage (row_size_type number) const
\n
\n@@ -374,15 +375,15 @@\n
\n
\n \n \n \n@@ -402,23 +403,23 @@\n \n \n

◆ for_each()

\n \n
\n
\n
\n-template<typename CALLABLE >
\n+template<typename CALLABLE >
\n
\n \n \n- \n+ \n \n \n \n \n \n
int pqxx::result::column_type_modifier int pqxx::result::column_type_modifier (row_size_type number) const
\n
\n \n \n \n@@ -428,17 +429,17 @@\n \n

Run func on each row, passing the row's fields as parameters.

\n

Goes through the rows from first to last. You provide a callable func.

\n

For each row in the result, for_each will call func. It converts the row's fields to the types of func's parameters, and pass them to func.

\n

(Therefore func must have a single signature. It can't be a generic lambda, or an object of a class with multiple overloaded function call operators. Otherwise, for_each will have no way to detect a parameter list without ambiguity.)

\n

If any of your parameter types is std::string_view, it refers to the underlying storage of this result.

\n

If any of your parameter types is a reference type, its argument will refer to a temporary value which only lives for the duration of that single invocation to func. If the reference is an lvalue reference, it must be const.

\n-

For example, this queries employee names and salaries from the database and prints how much each would like to earn instead:

tx.exec("SELECT name, salary FROM employee").for_each(
\n-
[](std::string_view name, float salary){
\n-
std::cout << name << " would like " << salary * 2 << ".\\n";
\n+

For example, this queries employee names and salaries from the database and prints how much each would like to earn instead:

tx.exec("SELECT name, salary FROM employee").for_each(
\n+
[](std::string_view name, float salary){
\n+
std::cout << name << " would like " << salary * 2 << ".\\n";
\n
})
\n

If func throws an exception, processing stops at that point and propagates the exception.

\n
Exceptions
\n
\n \n \n- \n+ \n \n- \n+ \n \n \n \n
void pqxx::result::for_each void pqxx::result::for_each (CALLABLE && CALLABLE && func) const
\n
\n inline
\n \n
pqxx::usage_errorif func's number of parameters does not match the number of columns in this result.
\n \n@@ -475,15 +476,15 @@\n
\n template<typename... TYPE>
\n \n \n \n \n \n \n
\n \n \n- \n+ \n \n \n \n \n
auto pqxx::result::iter auto pqxx::result::iter () const
\n
\n@@ -506,15 +507,15 @@\n \n \n \n \n@@ -562,15 +563,15 @@\n
\n
\n
\n \n \n \n \n- \n+ \n \n \n \n
result & pqxx::result::operator= (result const & result constrhs)
\n
\n defaultnoexcept
\n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -3,175 +3,178 @@\n Loading...\n Searching...\n No Matches\n _\bP_\bu_\bb_\bl_\bi_\bc_\b _\bT_\by_\bp_\be_\bs | _\bP_\bu_\bb_\bl_\bi_\bc_\b _\bM_\be_\bm_\bb_\be_\br_\b _\bF_\bu_\bn_\bc_\bt_\bi_\bo_\bn_\bs | _\bL_\bi_\bs_\bt_\b _\bo_\bf_\b _\ba_\bl_\bl_\b _\bm_\be_\bm_\bb_\be_\br_\bs\n pqxx::result Class Reference\n Result set containing data returned by a query or command. _\bM_\bo_\br_\be_\b._\b._\b.\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-using\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\be_\bs_\bu_\bl_\bt_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\br_\bo_\bw\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\br_\bo_\bw\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- \u00a0 r\bre\bes\bsu\bul\blt\bt (_\br_\be_\bs_\bu_\bl_\bt const &rhs) noexcept=default\n+ \u00a0 r\bre\bes\bsu\bul\blt\bt (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- \u00a0 r\bre\bes\bsu\bul\blt\bt (_\br_\be_\bs_\bu_\bl_\bt &&rhs) noexcept=default\n+ \u00a0 r\bre\bes\bsu\bul\blt\bt (_\br_\be_\bs_\bu_\bl_\bt &&_\br_\bh_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- _\br_\be_\bs_\bu_\bl_\bt &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\br_\be_\bs_\bu_\bl_\bt const &rhs) noexcept=default\n+ _\br_\be_\bs_\bu_\bl_\bt &\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b= (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Assign one result to another.\n \u00a0\n- _\br_\be_\bs_\bu_\bl_\bt &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\be_\bs_\bu_\bl_\bt &&rhs) noexcept=default\n+ _\br_\be_\bs_\bu_\bl_\bt &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\be_\bs_\bu_\bl_\bt &&_\br_\bh_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0 Assign one result to another, invaliding the old one.\n \u00a0\n Comparisons\n You can compare results for equality. Beware: this is a very strict, dumb\n comparison. The smallest difference between two results (such as a string \"Foo\"\n versus a string \"foo\") will make them unequal.\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\be_\bs_\bu_\bl_\bt const &) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Compare two results for equality.\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\be_\bs_\bu_\bl_\bt const &rhs) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Compare two results for inequality.\n \u00a0\n template\n- auto\u00a0 _\bi_\bt_\be_\br () const\n+ _\ba_\bu_\bt_\bo\u00a0 _\bi_\bt_\be_\br () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Iterate rows, reading them directly into a tuple of\n \"TYPE...\".\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt\n \u00a0\n-_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () const\n+_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- PQXX_PURE size_type\u00a0 s\bsi\biz\bze\be () const noexcept\n+ PQXX_PURE size_type\u00a0 s\bsi\biz\bze\be () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- PQXX_PURE bool\u00a0 e\bem\bmp\bpt\bty\by () const noexcept\n+ PQXX_PURE _\bb_\bo_\bo_\bl\u00a0 e\bem\bmp\bpt\bty\by () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- size_type\u00a0 c\bca\bap\bpa\bac\bci\bit\bty\by () const noexcept\n+ size_type\u00a0 c\bca\bap\bpa\bac\bci\bit\bty\by () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- void\u00a0 _\bs_\bw_\ba_\bp (_\br_\be_\bs_\bu_\bl_\bt &) noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 _\bs_\bw_\ba_\bp (_\br_\be_\bs_\bu_\bl_\bt &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Exchange two result values in an exception-safe manner.\n \u00a0\n- _\br_\bo_\bw\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (size_type i) const noexcept\n+ _\br_\bo_\bw\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (size_type _\bi) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Index a row by number.\n \u00a0\n- _\br_\bo_\bw\u00a0 a\bat\bt (size_type) const\n+ _\br_\bo_\bw\u00a0 a\bat\bt (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Index a row by number, but check that the row number is\n valid.\n \u00a0\n- _\bf_\bi_\be_\bl_\bd\u00a0 a\bat\bt (size_type, _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be) const\n+ _\bf_\bi_\be_\bl_\bd\u00a0 a\bat\bt (size_type, _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Index a field by row number and column number.\n \u00a0\n- void\u00a0 _\bc_\bl_\be_\ba_\br () noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 _\bc_\bl_\be_\ba_\br () _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Let go of the result's data.\n \u00a0\n *\b**\b**\b**\b**\b* C\bCo\bol\blu\bum\bmn\bn i\bin\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_p\bpi\bip\bpe\bel\bli\bin\bne\be\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_p\bpi\bip\bpe\bel\bli\bin\bne\be\n \u00a0\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:f\bfi\bie\bel\bld\bd\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:f\bfi\bie\bel\bld\bd\n \u00a0\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_c\bcr\bre\bea\bat\bti\bio\bon\bn\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_c\bcr\bre\bea\bat\bti\bio\bon\bn\n \u00a0\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_c\bco\bon\bnn\bne\bec\bct\bti\bio\bon\bn\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_c\bco\bon\bnn\bne\bec\bct\bti\bio\bon\bn\n \u00a0\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_r\bro\bow\bw\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_r\bro\bow\bw\n \u00a0\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_s\bsq\bql\bl_\b_c\bcu\bur\brs\bso\bor\br\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:g\bga\bat\bte\be:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_s\bsq\bql\bl_\b_c\bcu\bur\brs\bso\bor\br\n \u00a0\n- PQXX_PURE _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 c\bco\bol\blu\bum\bmn\bns\bs () const noexcept\n+ PQXX_PURE _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 c\bco\bol\blu\bum\bmn\bns\bs () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Number of columns in result.\n \u00a0\n- _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw name) const\n+ _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw name) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Number of given column (throws exception if it\n doesn't exist).\n \u00a0\n- char const *\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bna\bam\bme\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be number) const &\n+ _\bc_\bh_\ba_\br _\bc_\bo_\bn_\bs_\bt *\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bna\bam\bme\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\bu_\bm_\bb_\be_\br) _\bc_\bo_\bn_\bs_\bt &\n \u00a0 Name of column with this number (throws\n exception if it doesn't exist)\n \u00a0\n- int\u00a0 _\bc_\bo_\bl_\bu_\bm_\bn_\b__\bs_\bt_\bo_\br_\ba_\bg_\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be number) const\n+ _\bi_\bn_\bt\u00a0 _\bc_\bo_\bl_\bu_\bm_\bn_\b__\bs_\bt_\bo_\br_\ba_\bg_\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\bu_\bm_\bb_\be_\br) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Server-side storage size for field of column's\n type, in bytes.\n \u00a0\n- int\u00a0 _\bc_\bo_\bl_\bu_\bm_\bn_\b__\bt_\by_\bp_\be_\b__\bm_\bo_\bd_\bi_\bf_\bi_\be_\br (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be number)\n- const noexcept\n+ _\bi_\bn_\bt\u00a0 _\bc_\bo_\bl_\bu_\bm_\bn_\b__\bt_\by_\bp_\be_\b__\bm_\bo_\bd_\bi_\bf_\bi_\be_\br (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bn_\bu_\bm_\bb_\be_\br)\n+ _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Type modifier of the column with this number.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be col_num) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bc_\bo_\bl_\b__\bn_\bu_\bm) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return column's type, as an OID from the system\n catalogue.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return column's type, as an OID from the system\n catalogue.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be col_num) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bc_\bo_\bl_\b__\bn_\bu_\bm) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be col_num) const\n+ _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be _\bc_\bo_\bl_\b__\bn_\bu_\bm) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column in its table did this column come\n from?\n \u00a0\n- _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column in its table did this column come\n from?\n \u00a0\n-PQXX_PURE std::string const &\u00a0 q\bqu\bue\ber\bry\by () const &noexcept\n+PQXX_PURE std::string _\bc_\bo_\bn_\bs_\bt &\u00a0 q\bqu\bue\ber\bry\by () _\bc_\bo_\bn_\bs_\bt &_\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Query that produced this result, if available\n (empty string otherwise)\n \u00a0\n- PQXX_PURE _\bo_\bi_\bd\u00a0 _\bi_\bn_\bs_\be_\br_\bt_\be_\bd_\b__\bo_\bi_\bd () const\n+ PQXX_PURE _\bo_\bi_\bd\u00a0 _\bi_\bn_\bs_\be_\br_\bt_\be_\bd_\b__\bo_\bi_\bd () _\bc_\bo_\bn_\bs_\bt\n \u00a0 If command was an INSERT of 1 row, return oid of\n the inserted row.\n \u00a0\n- PQXX_PURE size_type\u00a0 _\ba_\bf_\bf_\be_\bc_\bt_\be_\bd_\b__\br_\bo_\bw_\bs () const\n+ PQXX_PURE size_type\u00a0 _\ba_\bf_\bf_\be_\bc_\bt_\be_\bd_\b__\br_\bo_\bw_\bs () _\bc_\bo_\bn_\bs_\bt\n \u00a0 If command was INSERT, UPDATE, or DELETE: number\n of affected rows.\n \u00a0\n-template\n- void\u00a0 _\bf_\bo_\br_\b__\be_\ba_\bc_\bh (CALLABLE &&func) const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bC_\bA_\bL_\bL_\bA_\bB_\bL_\bE >\n+ _\bv_\bo_\bi_\bd\u00a0 _\bf_\bo_\br_\b__\be_\ba_\bc_\bh (_\bC_\bA_\bL_\bL_\bA_\bB_\bL_\bE &&_\bf_\bu_\bn_\bc) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Run func on each row, passing the row's fields\n as parameters.\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n Result set containing data returned by a query or command.\n This behaves as a container (as defined by the C++ standard library) and\n provides random access const iterators to iterate over its rows. You can also\n access a row by indexing a result R by the row's zero-based number:\n-for (result::size_type i=0; i < std::size(R); ++i) Process(R[i]);\n+for (result::size_type _\bi=0; _\bi < std::size(_\bR); ++_\bi) _\bP_\br_\bo_\bc_\be_\bs_\bs(_\bR[_\bi]);\n+_\bp_\bq_\bx_\bx_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\be_\bs_\bu_\bl_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+Reverse iterator for result. Use as result::const_reverse_iterator.\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn result_iterator.hxx:194\n Result sets in libpqxx are lightweight, reference-counted wrapper objects which\n are relatively small and cheap to copy. Think of a result object as a \"smart\n pointer\" to an underlying result set.\n Warning\n The result set that a result object points to is not thread-safe. If you\n copy a result object, it still refers to the same underlying result set.\n So never copy, destroy, query, or otherwise access a result while another\n@@ -181,40 +184,40 @@\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\baf\bff\bfe\bec\bct\bte\bed\bd_\b_r\bro\bow\bws\bs(\b()\b) *\b**\b**\b**\b**\b*\n pqxx::result::size_type pqxx::result::affected_rows ( ) const\n If command was INSERT, UPDATE, or DELETE: number of affected rows.\n Returns\n Number of affected rows if last command was INSERT, UPDATE, or DELETE;\n zero for all other commands.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bcl\ble\bea\bar\br(\b()\b) *\b**\b**\b**\b**\b*\n-void pqxx::result:: ( ) inlinenoexcept\n+_\bv_\bo_\bi_\bd pqxx::result:: ( ) inlinenoexcept\n clear\n Let go of the result's data.\n Use this if you need to deallocate the result data earlier than you can destroy\n the result object itself.\n Multiple result objects can refer to the same set of underlying data. The\n underlying data will be deallocated once all result objects that refer to it\n are cleared or destroyed.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bol\blu\bum\bmn\bn_\b_s\bst\bto\bor\bra\bag\bge\be(\b()\b) *\b**\b**\b**\b**\b*\n-int pqxx::result::column_storage ( _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bnu\bum\bmb\bbe\ber\br ) const\n+_\bi_\bn_\bt pqxx::result::column_storage ( _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bnu\bum\bmb\bbe\ber\br ) const\n Server-side storage size for field of column's type, in bytes.\n Returns the size of the server's internal representation of the column's data\n type. A negative value indicates the data type is variable-length.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be_\b_m\bmo\bod\bdi\bif\bfi\bie\ber\br(\b()\b) *\b**\b**\b**\b**\b*\n-int pqxx::result::column_type_modifier ( _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bnu\bum\bmb\bbe\ber\br ) const noexcept\n+_\bi_\bn_\bt pqxx::result::column_type_modifier ( _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 n\bnu\bum\bmb\bbe\ber\br ) const noexcept\n Type modifier of the column with this number.\n The meaning of modifier values is type-specific; they typically indicate\n precision or size limits.\n U\bUs\bse\be t\bth\bhi\bis\bs o\bon\bnl\bly\by i\bif\bf y\byo\bou\bu k\bkn\bno\bow\bw w\bwh\bha\bat\bt y\byo\bou\bu'\b'r\bre\be d\bdo\boi\bin\bng\bg.\b. Most applications do not need it,\n and most types do not use modifiers.\n The value -1 indicates \"no information available.\"\n Warning\n There is no check for errors, such as an invalid column number.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0f\bfo\bor\br_\b_e\bea\bac\bch\bh(\b()\b) *\b**\b**\b**\b**\b*\n-template\n-void pqxx::result::for_each ( CALLABLE &&\u00a0 f\bfu\bun\bnc\bc ) const inline\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bC_\bA_\bL_\bL_\bA_\bB_\bL_\bE >\n+_\bv_\bo_\bi_\bd pqxx::result::for_each ( _\bC_\bA_\bL_\bL_\bA_\bB_\bL_\bE &&\u00a0 f\bfu\bun\bnc\bc ) const inline\n Run func on each row, passing the row's fields as parameters.\n Goes through the rows from first to last. You provide a callable func.\n For each row in the result, for_each will call func. It converts the row's\n fields to the types of func's parameters, and pass them to func.\n (Therefore func must have a s\bsi\bin\bng\bgl\ble\be signature. It can't be a generic lambda, or\n an object of a class with multiple overloaded function call operators.\n Otherwise, for_each will have no way to detect a parameter list without\n@@ -222,17 +225,17 @@\n If any of your parameter types is std::string_view, it refers to the underlying\n storage of this result.\n If any of your parameter types is a reference type, its argument will refer to\n a temporary value which only lives for the duration of that single invocation\n to func. If the reference is an lvalue reference, it must be const.\n For example, this queries employee names and salaries from the database and\n prints how much each would like to earn instead:\n-tx.exec(\"SELECT name, salary FROM employee\").for_each(\n-[](std::string_view name, float salary){\n-std::cout << name << \" would like \" << salary * 2 << \".\\n\";\n+_\bt_\bx.exec(\"SELECT name, salary FROM employee\").for_each(\n+[](std::string_view name, float _\bs_\ba_\bl_\ba_\br_\by){\n+std::cout << name << \" would like \" << _\bs_\ba_\bl_\ba_\br_\by * 2 << \".\\n\";\n })\n If func throws an exception, processing stops at that point and propagates the\n exception.\n Exceptions\n _\bp_\bq_\bx_\bx_\b:_\b:_\bu_\bs_\ba_\bg_\be_\b__\be_\br_\br_\bo_\br if func's number of parameters does not match the\n number of columns in this result.\n The parameter types must have conversions from PostgreSQL's string format\n@@ -241,32 +244,32 @@\n _\bp_\bq_\bx_\bx_\b:_\b:_\bo_\bi_\bd pqxx::result::inserted_oid ( ) const\n If command was an INSERT of 1 row, return oid of the inserted row.\n Returns\n Identifier of inserted row if exactly one row was inserted, or _\bo_\bi_\bd_\b__\bn_\bo_\bn_\be\n otherwise.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0i\bit\bte\ber\br(\b()\b) *\b**\b**\b**\b**\b*\n template\n-auto pqxx::result::iter ( ) const inline\n+_\ba_\bu_\bt_\bo pqxx::result::iter ( ) const inline\n Iterate rows, reading them directly into a tuple of \"TYPE...\".\n Converts the fields to values of the given respective types.\n Use this only with a ranged \"for\" loop. The iteration produces std::\n tuple which you can \"unpack\" to a series of auto variables.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br=\b=(\b()\b) *\b**\b**\b**\b**\b*\n-_\br_\be_\bs_\bu_\bl_\bt & pqxx::result:: ( _\br_\be_\bs_\bu_\bl_\bt const &\u00a0 r\brh\bhs\bs ) defaultnoexcept\n+_\br_\be_\bs_\bu_\bl_\bt & pqxx::result:: ( _\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &\u00a0 r\brh\bhs\bs ) defaultnoexcept\n operator=\n Assign one result to another.\n Copying results is cheap: it copies only smart pointers, but the actual data\n stays in the same place.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b](\b()\b) *\b**\b**\b**\b**\b*\n _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw pqxx::result::operator[] ( size_type\u00a0 i\bi ) const noexcept\n Index a row by number.\n This returns a _\br_\bo_\bw object. Generally you should not keep the row around as a\n variable, but if you do, make sure that your variable is a row, not a row&.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0s\bsw\bwa\bap\bp(\b()\b) *\b**\b**\b**\b**\b*\n-void pqxx::result:: ( _\br_\be_\bs_\bu_\bl_\bt &\u00a0 r\brh\bhs\bs ) noexcept\n+_\bv_\bo_\bi_\bd pqxx::result:: ( _\br_\be_\bs_\bu_\bl_\bt &\u00a0 r\brh\bhs\bs ) noexcept\n swap\n Exchange two result values in an exception-safe manner.\n If the swap fails, the two values will be exactly as they were before.\n The swap is not necessarily thread-safe.\n ===============================================================================\n The documentation for this class was generated from the following files:\n * /build/reproducible-path/libpqxx-7.9.1/include/pqxx/_\br_\be_\bs_\bu_\bl_\bt_\b._\bh_\bx_\bx\n"}]}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1row.html", "unified_diff": "@@ -126,121 +126,121 @@\n \"\"\n \n
[legend]
\n
\n \n \n- \n+ \n \n \n \n \n \n
void pqxx::result::swap void pqxx::result::swap (resultrhs)
\n
\n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n \n+using \n \n

\n Public Types

\n-using size_type = row_size_type
size_type = row_size_type
 
\n-using difference_type = row_difference_type
difference_type = row_difference_type
 
\n-using const_iterator = const_row_iterator
const_iterator = const_row_iterator
 
\n-using iterator = const_iterator
iterator = const_iterator
 
\n-using reference = field
reference = field
 
\n-using pointer = const_row_iterator
pointer = const_row_iterator
 
\n-using const_reverse_iterator = const_reverse_row_iterator
const_reverse_iterator = const_reverse_row_iterator
 
\n-using reverse_iterator = const_reverse_iterator
reverse_iterator = const_reverse_iterator
 
\n \n \n+ \n \n \n+ \n \n \n+row & \n \n \n+row & \n \n \n \n+PQXX_PURE bool \n \n \n+bool \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n+const_iterator \n \n \n \n+reference \n \n \n+reference \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+const_reverse_row_iterator \n \n \n+reference \n \n-\n+\n \n \n+reference \n \n-\n+\n \n \n+constexpr size_type \n \n \n+constexpr result::size_type \n \n \n

\n Public Member Functions

\n- row (row &&) noexcept=default
row (row &&) noexcept=default
 
\n- row (row const &) noexcept=default
row (row const &) noexcept=default
 
\n-rowoperator= (row const &) noexcept=default
operator= (row const &) noexcept=default
 
\n-rowoperator= (row &&) noexcept=default
operator= (row &&) noexcept=default
 
Comparison
\n-PQXX_PURE bool operator== (row const &) const noexcept
operator== (row const &) const noexcept
 
\n-bool operator!= (row const &rhs) const noexcept
operator!= (row const &rhs) const noexcept
 
\n-const_iterator begin () const noexcept
begin () const noexcept
 
\n-const_iterator cbegin () const noexcept
cbegin () const noexcept
 
\n-const_iterator end () const noexcept
end () const noexcept
 
\n-const_iterator cend () const noexcept
cend () const noexcept
 
Field access
\n-reference front () const noexcept
front () const noexcept
 
\n-reference back () const noexcept
back () const noexcept
 
\n-const_reverse_row_iterator rbegin () const noexcept
rbegin () const noexcept
 
\n-const_reverse_row_iterator crbegin () const noexcept
crbegin () const noexcept
 
\n-const_reverse_row_iterator rend () const noexcept
rend () const noexcept
 
\n-const_reverse_row_iterator crend () const noexcept
crend () const noexcept
 
\n-reference operator[] (size_type) const noexcept
operator[] (size_type) const noexcept
 
reference operator[] (zview col_name) const
reference operator[] (zview col_name) const
 
\n-reference at (size_type) const
at (size_type) const
 
reference at (zview col_name) const
reference at (zview col_name) const
 
\n-constexpr size_type size () const noexcept
size () const noexcept
 
\n-constexpr result::size_type rownumber () const noexcept
rownumber () const noexcept
 Row number, assuming this is a real row and not end()/rend().
 
\n \n \n+class \n \n \n+class \n \n \n-\n+\n \n \n+class \n \n \n \n \n \n \n@@ -250,80 +250,81 @@\n \n \n \n \n \n \n+size_type \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n \n+oid \n \n \n-\n+\n \n \n \n+size_type \n \n \n \n+constexpr result::size_type \n \n-\n-\n+\n+\n \n \n \n-\n+\n \n \n \n+void \n \n-\n+\n \n \n+PQXX_PURE bool \n \n \n-\n+\n \n \n+void \n \n \n-\n-\n+\n+\n \n \n \n-\n+template<typenameTuple > \n+\n \n \n

Column information

\n-class const_row_iterator
const_row_iterator
 
\n-class result
result
 
\n template<typename... T>
class pqxx::internal::result_iter
class pqxx::internal::result_iter
 
\n-class field
field
 
\n result m_result
 Result set of which this is one row.
 
result::size_type m_index = 0
 Row number.
 First column in slice. This row ignores lower-numbered columns.
 
\n size_type m_end = 0
 End column in slice. This row only sees lower-numbered columns.
 
\n-size_type column_number (zview col_name) const
column_number (zview col_name) const
 Number of given column (throws exception if it doesn't exist).
 
\n-oid column_type (size_type) const
column_type (size_type) const
 Return a column's type.
 
\n-oid column_type (zview col_name) const
column_type (zview col_name) const
 Return a column's type.
 
\n-oid column_table (size_type col_num) const
column_table (size_type col_num) const
 What table did this column come from?
 
\n-oid column_table (zview col_name) const
column_table (zview col_name) const
 What table did this column come from?
 
size_type table_column (size_type) const
size_type table_column (size_type) const
 What column number in its table did this result column come from?
 
\n-size_type table_column (zview col_name) const
table_column (zview col_name) const
 What column number in its table did this result column come from?
 
\n-constexpr result::size_type num () const noexcept
num () const noexcept
 
template<typename Tuple >
void to (Tuple &t) const
template<typename Tuple >
void to (Tuple &t) const
 Extract entire row's values into a tuple.
 
template<typename... TYPE>
std::tuple< TYPE... > as () const
std::tuple< TYPE... > as () const
 Extract entire row's values into a tuple.
 
\n-void swap (row &) noexcept
swap (row &) noexcept
 
row slice (size_type sbegin, size_type send) const
row slice (size_type sbegin, size_type send) const
 
\n-PQXX_PURE bool empty () const noexcept
empty () const noexcept
 Is this a row without fields? Can only happen to a slice.
 
 row (result const &r, result_size_type index, size_type cols) noexcept
 row (result const &r, result_size_type index, size_type cols) noexcept
 
\n-void check_size (size_type expected) const
check_size (size_type expected) const
 Throw usage_error if row size is not expected.
 
template<typename TUPLE >
TUPLE as_tuple () const
template<typename TUPLE >
TUPLE as_tuple () const
 Convert to a given tuple of values, don't check sizes.
 
\n-template<typename Tuple >
void convert (Tuple &t) const
void convert (Tuple &t) const
 Convert entire row to tuple fields, without checking row size.
 
\n

Detailed Description

\n

Reference to one row in a result.

\n

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):

\n-
cout << row["date"].c_str() << ": " << row["name"].c_str() << endl;
\n+
cout << row["date"].c_str() << ": " << row["name"].c_str() << endl;
\n+
Reverse iterator for a row. Use as row::const_reverse_iterator.
Definition row.hxx:406
\n
Reference to one row in a result.
Definition row.hxx:47
\n

The row itself acts like a (non-modifyable) container, complete with its own const_iterator and const_reverse_iterator.

\n

Constructor & Destructor Documentation

\n \n

◆ row()

\n \n
\n@@ -331,15 +332,15 @@\n \n \n \n \n \n
\n \n \n \n \n- \n+ \n \n \n \n \n \n \n \n@@ -409,21 +410,21 @@\n \n \n

◆ as_tuple()

\n \n
\n
\n
\n-template<typename TUPLE >
\n+template<typename TUPLE >
\n
pqxx::row::row (result const & result constr,
result_size_type index,
\n \n \n \n \n \n \n
\n \n \n- \n+ \n \n \n \n \n
TUPLE pqxx::row::as_tuple TUPLE pqxx::row::as_tuple () const
\n
\n@@ -497,15 +498,15 @@\n ) const
\n
\n

Produce a slice of this row, containing the given range of columns.

\n-
Deprecated:
I haven't heard of anyone caring about row slicing at all in at least the last 15 years. Yet it adds complexity, so unless anyone files a bug explaining why they really need this feature, I'm going to remove it. Even if they do, the feature may need an update.
\n+
Deprecated:
I haven't heard of anyone caring about row slicing at all in at least the last 15 years. Yet it adds complexity, so unless anyone files a bug explaining why they really need this feature, I'm going to remove it. Even if they do, the feature may need an update.
\n

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.

\n \n
\n \n \n

◆ table_column()

\n \n@@ -536,23 +537,23 @@\n \n \n

◆ to()

\n \n
\n
\n
\n-template<typename Tuple >
\n+template<typename Tuple >
\n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -9,88 +9,88 @@\n [+]Inheritance diagram for pqxx::row:\n [Inheritance graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n [+]Collaboration diagram for pqxx::row:\n [Collaboration graph]\n [_\bl_\be_\bg_\be_\bn_\bd]\n P\bPu\bub\bbl\bli\bic\bc T\bTy\byp\bpe\bes\bs\n-using\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 s\bsi\biz\bze\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n+_\bu_\bs_\bi_\bn_\bg\u00a0 d\bdi\bif\bff\bfe\ber\bre\ben\bnc\bce\be_\b_t\bty\byp\bpe\be = _\br_\bo_\bw_\b__\bd_\bi_\bf_\bf_\be_\br_\be_\bn_\bc_\be_\b__\bt_\by_\bp_\be\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bf_\bi_\be_\bl_\bd\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bef\bfe\ber\bre\ben\bnc\bce\be = _\bf_\bi_\be_\bl_\bd\n \u00a0\n-using\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 p\bpo\boi\bin\bnt\bte\ber\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 c\bco\bon\bns\bst\bt_\b_r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n-using\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+_\bu_\bs_\bi_\bn_\bg\u00a0 r\bre\bev\bve\ber\brs\bse\be_\b_i\bit\bte\ber\bra\bat\bto\bor\br = _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n \u00a0\n P\bPu\bub\bbl\bli\bic\bc M\bMe\bem\bmb\bbe\ber\br F\bFu\bun\bnc\bct\bti\bio\bon\bns\bs\n- \u00a0 r\bro\bow\bw (_\br_\bo_\bw &&) noexcept=default\n+ \u00a0 r\bro\bow\bw (_\br_\bo_\bw &&) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- \u00a0 r\bro\bow\bw (_\br_\bo_\bw const &) noexcept=default\n+ \u00a0 r\bro\bow\bw (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw const &) noexcept=default\n+ _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n- _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw &&) noexcept=default\n+ _\br_\bo_\bw &\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b= (_\br_\bo_\bw &&) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt=_\bd_\be_\bf_\ba_\bu_\bl_\bt\n \u00a0\n Comparison\n- PQXX_PURE bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\bo_\bw const &) const noexcept\n+ PQXX_PURE _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br=\b==\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- bool\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\bo_\bw const &rhs) const noexcept\n+ _\bb_\bo_\bo_\bl\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br!\b!=\b= (_\br_\bo_\bw _\bc_\bo_\bn_\bs_\bt &_\br_\bh_\bs) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 b\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 e\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bce\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n Field access\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 f\bfr\bro\bon\bnt\bt () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 b\bba\bac\bck\bk () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\brb\bbe\beg\bgi\bin\bn () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 r\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\u00a0 c\bcr\bre\ben\bnd\bd () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b] (size_type) const noexcept\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 o\bop\bpe\ber\bra\bat\bto\bor\br[\b[]\b] (size_type) _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\bo_\bp_\be_\br_\ba_\bt_\bo_\br_\b[_\b] (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 a\bat\bt (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\br_\be_\bf_\be_\br_\be_\bn_\bc_\be\u00a0 _\ba_\bt (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- constexpr size_type\u00a0 s\bsi\biz\bze\be () const noexcept\n+ _\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br size_type\u00a0 s\bsi\biz\bze\be () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n-constexpr result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () const noexcept\n+_\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 r\bro\bow\bwn\bnu\bum\bmb\bbe\ber\br () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Row number, assuming this is a real row and not\n end()/rend().\n \u00a0\n *\b**\b**\b**\b**\b* C\bCo\bol\blu\bum\bmn\bn i\bin\bnf\bfo\bor\brm\bma\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n- class\u00a0 c\bco\bon\bns\bst\bt_\b_r\bro\bow\bw_\b_i\bit\bte\ber\bra\bat\bto\bor\br\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 c\bco\bon\bns\bst\bt_\b_r\bro\bow\bw_\b_i\bit\bte\ber\bra\bat\bto\bor\br\n \u00a0\n- class\u00a0 r\bre\bes\bsu\bul\blt\bt\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 r\bre\bes\bsu\bul\blt\bt\n \u00a0\n template\n- class\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\br\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 p\bpq\bqx\bxx\bx:\b::\b:i\bin\bnt\bte\ber\brn\bna\bal\bl:\b::\b:r\bre\bes\bsu\bul\blt\bt_\b_i\bit\bte\ber\br\n \u00a0\n- class\u00a0 f\bfi\bie\bel\bld\bd\n+ _\bc_\bl_\ba_\bs_\bs\u00a0 f\bfi\bie\bel\bld\bd\n \u00a0\n _\br_\be_\bs_\bu_\bl_\bt\u00a0 m\bm_\b_r\bre\bes\bsu\bul\blt\bt\n \u00a0 Result set of which this is one row.\n \u00a0\n result::size_type\u00a0 _\bm_\b__\bi_\bn_\bd_\be_\bx = 0\n \u00a0 Row number.\n \u00a0\n@@ -98,86 +98,89 @@\n \u00a0 First column in slice. This row ignores lower-\n numbered columns.\n \u00a0\n size_type\u00a0 m\bm_\b_e\ben\bnd\bd = 0\n \u00a0 End column in slice. This row only sees lower-\n numbered columns.\n \u00a0\n- size_type\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw col_name) const\n+ size_type\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_n\bnu\bum\bmb\bbe\ber\br (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Number of given column (throws exception if it\n doesn't exist).\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (size_type) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return a column's type.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bty\byp\bpe\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Return a column's type.\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (size_type col_num) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (size_type _\bc_\bo_\bl_\b__\bn_\bu_\bm) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw col_name) const\n+ _\bo_\bi_\bd\u00a0 c\bco\bol\blu\bum\bmn\bn_\b_t\bta\bab\bbl\ble\be (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What table did this column come from?\n \u00a0\n- size_type\u00a0 _\bt_\ba_\bb_\bl_\be_\b__\bc_\bo_\bl_\bu_\bm_\bn (size_type) const\n+ size_type\u00a0 _\bt_\ba_\bb_\bl_\be_\b__\bc_\bo_\bl_\bu_\bm_\bn (size_type) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column number in its table did this result\n column come from?\n \u00a0\n- size_type\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw col_name) const\n+ size_type\u00a0 t\bta\bab\bbl\ble\be_\b_c\bco\bol\blu\bum\bmn\bn (_\bz_\bv_\bi_\be_\bw _\bc_\bo_\bl_\b__\bn_\ba_\bm_\be) _\bc_\bo_\bn_\bs_\bt\n \u00a0 What column number in its table did this result\n column come from?\n \u00a0\n-constexpr result::size_type\u00a0 n\bnu\bum\bm () const noexcept\n+_\bc_\bo_\bn_\bs_\bt_\be_\bx_\bp_\br result::size_type\u00a0 n\bnu\bum\bm () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n-template\n- void\u00a0 _\bt_\bo (Tuple &t) const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bu_\bp_\bl_\be >\n+ _\bv_\bo_\bi_\bd\u00a0 _\bt_\bo (_\bT_\bu_\bp_\bl_\be &_\bt) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Extract entire row's values into a tuple.\n \u00a0\n template\n- std::tuple< TYPE... >\u00a0 _\ba_\bs () const\n+ std::tuple< TYPE... >\u00a0 _\ba_\bs () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Extract entire row's values into a tuple.\n \u00a0\n- void\u00a0 s\bsw\bwa\bap\bp (_\br_\bo_\bw &) noexcept\n+ _\bv_\bo_\bi_\bd\u00a0 s\bsw\bwa\bap\bp (_\br_\bo_\bw &) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- _\br_\bo_\bw\u00a0 _\bs_\bl_\bi_\bc_\be (size_type sbegin, size_type send) const\n+ _\br_\bo_\bw\u00a0 _\bs_\bl_\bi_\bc_\be (size_type _\bs_\bb_\be_\bg_\bi_\bn, size_type _\bs_\be_\bn_\bd) _\bc_\bo_\bn_\bs_\bt\n \u00a0\n- PQXX_PURE bool\u00a0 e\bem\bmp\bpt\bty\by () const noexcept\n+ PQXX_PURE _\bb_\bo_\bo_\bl\u00a0 e\bem\bmp\bpt\bty\by () _\bc_\bo_\bn_\bs_\bt _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0 Is this a row without fields? Can only happen to a\n slice.\n \u00a0\n- \u00a0 _\br_\bo_\bw (_\br_\be_\bs_\bu_\bl_\bt const &r, _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index,\n- size_type cols) noexcept\n+ \u00a0 _\br_\bo_\bw (_\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &_\br, _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be index,\n+ size_type _\bc_\bo_\bl_\bs) _\bn_\bo_\be_\bx_\bc_\be_\bp_\bt\n \u00a0\n- void\u00a0 c\bch\bhe\bec\bck\bk_\b_s\bsi\biz\bze\be (size_type expected) const\n+ _\bv_\bo_\bi_\bd\u00a0 c\bch\bhe\bec\bck\bk_\b_s\bsi\biz\bze\be (size_type _\be_\bx_\bp_\be_\bc_\bt_\be_\bd) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Throw _\bu_\bs_\ba_\bg_\be_\b__\be_\br_\br_\bo_\br if row size is not expected.\n \u00a0\n-template\n- TUPLE\u00a0 _\ba_\bs_\b__\bt_\bu_\bp_\bl_\be () const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bU_\bP_\bL_\bE >\n+ _\bT_\bU_\bP_\bL_\bE\u00a0 _\ba_\bs_\b__\bt_\bu_\bp_\bl_\be () _\bc_\bo_\bn_\bs_\bt\n \u00a0 Convert to a given tuple of values, don't check\n sizes.\n \u00a0\n-template\n- void\u00a0 c\bco\bon\bnv\bve\ber\brt\bt (Tuple &t) const\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bu_\bp_\bl_\be >\n+ _\bv_\bo_\bi_\bd\u00a0 c\bco\bon\bnv\bve\ber\brt\bt (_\bT_\bu_\bp_\bl_\be &_\bt) _\bc_\bo_\bn_\bs_\bt\n \u00a0 Convert entire row to tuple fields, without\n checking row size.\n \u00a0\n *\b**\b**\b**\b**\b* D\bDe\bet\bta\bai\bil\ble\bed\bd D\bDe\bes\bsc\bcr\bri\bip\bpt\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n Reference to one row in a result.\n A row represents one row (also called a row) in a query result set. It also\n acts as a container mapping column numbers or names to field values (see\n below):\n-cout << _\br_\bo_\bw[\"date\"].c_str() << \": \" << _\br_\bo_\bw[\"name\"].c_str() << endl;\n+_\bc_\bo_\bu_\bt << _\br_\bo_\bw[\"date\"].c_str() << \": \" << _\br_\bo_\bw[\"name\"].c_str() << _\be_\bn_\bd_\bl;\n+_\bp_\bq_\bx_\bx_\b:_\b:_\bc_\bo_\bn_\bs_\bt_\b__\br_\be_\bv_\be_\br_\bs_\be_\b__\br_\bo_\bw_\b__\bi_\bt_\be_\br_\ba_\bt_\bo_\br\n+Reverse iterator for a row. Use as row::const_reverse_iterator.\n+D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn row.hxx:406\n _\bp_\bq_\bx_\bx_\b:_\b:_\br_\bo_\bw\n Reference to one row in a result.\n D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bn row.hxx:47\n The row itself acts like a (non-modifyable) container, complete with its own\n const_iterator and const_reverse_iterator.\n *\b**\b**\b**\b**\b* C\bCo\bon\bns\bst\btr\bru\buc\bct\bto\bor\br &\b& D\bDe\bes\bst\btr\bru\buc\bct\bto\bor\br D\bDo\boc\bcu\bum\bme\ben\bnt\bta\bat\bti\bio\bon\bn *\b**\b**\b**\b**\b*\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0r\bro\bow\bw(\b()\b) *\b**\b**\b**\b**\b*\n-pqxx::row::row ( _\br_\be_\bs_\bu_\bl_\bt const &\u00a0 r\br,\n+pqxx::row::row ( _\br_\be_\bs_\bu_\bl_\bt _\bc_\bo_\bn_\bs_\bt &\u00a0 r\br,\n _\br_\be_\bs_\bu_\bl_\bt_\b__\bs_\bi_\bz_\be_\b__\bt_\by_\bp_\be\u00a0 i\bin\bnd\bde\bex\bx, protectednoexcept\n size_type\u00a0 c\bco\bol\bls\bs\u00a0\n )\n Implementation of the _\bp_\bq_\bx_\bx_\b:_\b:_\br_\be_\bs_\bu_\bl_\bt class and support classes.\n _\bp_\bq_\bx_\bx_\b:_\b:_\br_\be_\bs_\bu_\bl_\bt represents the set of result rows from a database query.\n Copyright (c) 2000-2024, Jeroen T. Vermeulen.\n See COPYING for copyright license. If you did not receive a file called COPYING\n@@ -191,16 +194,16 @@\n Converts to the types of the tuple's respective fields.\n The types must have conversions from PostgreSQL's text format defined; see\n _\bS_\bu_\bp_\bp_\bo_\br_\bt_\bi_\bn_\bg_\b _\ba_\bd_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl_\b _\bd_\ba_\bt_\ba_\b _\bt_\by_\bp_\be_\bs.\n Exceptions\n _\bu_\bs_\ba_\bg_\be_\b__\be_\br_\br_\bo_\br If the number of columns in the row does not match the number\n of fields in t.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bas\bs_\b_t\btu\bup\bpl\ble\be(\b()\b) *\b**\b**\b**\b**\b*\n-template\n-TUPLE pqxx::row::as_tuple ( ) const inlineprotected\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bU_\bP_\bL_\bE >\n+_\bT_\bU_\bP_\bL_\bE pqxx::row::as_tuple ( ) const inlineprotected\n Convert to a given tuple of values, don't check sizes.\n We need this for cases where we have a full tuple of field types, but not a\n parameter pack.\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0a\bat\bt(\b()\b) *\b**\b**\b**\b**\b*\n _\bp_\bq_\bx_\bx_\b:_\b:_\bf_\bi_\be_\bl_\bd pqxx::row::at ( _\bz_\bv_\bi_\be_\bw\u00a0 c\bco\bol\bl_\b_n\bna\bam\bme\be ) const\n Address field by name.\n Warning\n@@ -229,16 +232,16 @@\n from a column in a table. If the column is computed in any other way, a\n logic_error will be thrown.\n Parameters\n col_num a zero-based column number in this result set\n Returns\n a zero-based column number in originating table\n *\b**\b**\b**\b**\b* _\b?\b\u25c6_\b?\b\u00a0t\bto\bo(\b()\b) *\b**\b**\b**\b**\b*\n-template\n-void pqxx::row::to ( Tuple &\u00a0 t\bt ) const inline\n+template<_\bt_\by_\bp_\be_\bn_\ba_\bm_\be _\bT_\bu_\bp_\bl_\be >\n+_\bv_\bo_\bi_\bd pqxx::row::to ( _\bT_\bu_\bp_\bl_\be &\u00a0 t\bt ) const inline\n Extract entire row's values into a tuple.\n Converts to the types of the tuple's respective fields.\n The types in the tuple must have conversions from PostgreSQL's text format\n defined; see _\bS_\bu_\bp_\bp_\bo_\br_\bt_\bi_\bn_\bg_\b _\ba_\bd_\bd_\bi_\bt_\bi_\bo_\bn_\ba_\bl_\b _\bd_\ba_\bt_\ba_\b _\bt_\by_\bp_\be_\bs.\n Exceptions\n _\bu_\bs_\ba_\bg_\be_\b__\be_\br_\br_\bo_\br If the number of columns in the row does not match the number\n of fields in t.\n"}]}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1stream__from.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1stream__from.html", "unified_diff": "@@ -209,15 +209,15 @@\n \n \n \n \n
\n \n \n- \n+ \n \n- \n+ \n \n \n \n
void pqxx::row::to void pqxx::row::to (Tuple & Tuplet) const
\n
\n inline
 
static stream_from table (transaction_base &tx, table_path path, std::initializer_list< std::string_view > columns={})
 Factory: Stream data from a given table.
 
\n

Detailed Description

\n

Stream data from the database.

\n-
Deprecated:
Use transaction_base::stream.
\n+
Deprecated:
Use transaction_base::stream.
\n

For larger data sets, retrieving data this way is likely to be faster than executing a query and then iterating and converting the rows fields. You will also be able to start processing before all of the data has come in.

\n

There are also downsides. Not all kinds of query will work in a stream. But straightforward SELECT and UPDATE ... RETURNING queries should work. This function makes use of pqxx::stream_from, which in turn uses PostgreSQL's COPY command, so see the documentation for those to get the full details.

\n

There are other downsides. If there stream encounters an error, it may leave the entire connection in an unusable state, so you'll have to give the whole thing up. Finally, opening a stream puts the connection in a special state, so you won't be able to do many other things with the connection or the transaction while the stream is open.

\n

There are two ways of starting a stream: you stream either all rows in a table (using one of the factories, table() or raw_table()), or the results of a query (using the query() factory).

\n

Usually you'll want the stream convenience wrapper in transaction_base, * so you don't need to deal with this class directly.

\n
Warning
While a stream is active, you cannot execute queries, open a pipeline, etc. on the same transaction. A transaction can have at most one object of a type derived from pqxx::transaction_focus active on it at a time.
\n

Constructor & Destructor Documentation

\n@@ -250,15 +250,15 @@\n
)
\n
\n \n

Execute query, and stream over the results.

\n-
Deprecated:
Use factory function query instead.
\n+
Deprecated:
Use factory function query instead.
\n \n
\n
\n \n

◆ stream_from() [2/7]

\n \n
\n@@ -287,15 +287,15 @@\n
)
\n
\n \n

Stream all rows in table, all columns.

\n-
Deprecated:
Use factories table or raw_table instead.
\n+
Deprecated:
Use factories table or raw_table instead.
\n \n
\n
\n \n

◆ stream_from() [3/7]

\n \n
\n@@ -346,15 +346,15 @@\n
\n inline
\n
\n \n

Stream given columns from all rows in table.

\n-
Deprecated:
Use factories table or raw_table instead.
\n+
Deprecated:
Use factories table or raw_table instead.
\n \n
\n
\n \n

◆ stream_from() [4/7]

\n \n
\n@@ -399,15 +399,15 @@\n \n inline \n \n \n
\n \n

Stream given columns from all rows in table.

\n-
Deprecated:
Use factory function query instead.
\n+
Deprecated:
Use factory function query instead.
\n \n
\n
\n \n

◆ stream_from() [5/7]

\n \n
\n@@ -436,15 +436,15 @@\n \n \n \n inline \n \n \n
\n-
Deprecated:
Use factories table or raw_table instead.
\n+
Deprecated:
Use factories table or raw_table instead.
\n \n
\n
\n \n

◆ stream_from() [6/7]

\n \n
\n@@ -481,15 +481,15 @@\n \n \n \n inline \n \n \n
\n-
Deprecated:
Use factories table or raw_table instead.
\n+
Deprecated:
Use factories table or raw_table instead.
\n \n
\n
\n \n

◆ stream_from() [7/7]

\n \n
\n@@ -524,15 +524,15 @@\n \n \n )\n \n \n \n
\n-
Deprecated:
Use factories table or raw_table instead.
\n+
Deprecated:
Use factories table or raw_table instead.
\n \n
\n
\n

Member Function Documentation

\n \n

◆ complete()

\n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1stream__to.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/classpqxx_1_1stream__to.html", "unified_diff": "@@ -222,15 +222,15 @@\n \n inline \n \n \n
\n \n

Create a stream, without specifying columns.

\n-
Deprecated:
Use table or raw_table as a factory.
\n+
Deprecated:
Use table or raw_table as a factory.
\n

Fields will be inserted in whatever order the columns have in the database.

\n

You'll probably want to specify the columns, so that the mapping between your data fields and the table is explicit in your code, and not hidden in an \"implicit contract\" between your code and your schema.

\n \n
\n
\n \n

◆ stream_to() [2/3]

\n@@ -271,15 +271,15 @@\n \n inline \n \n \n
\n \n

Create a stream, specifying column names as a container of strings.

\n-
Deprecated:
Use table or raw_table as a factory.
\n+
Deprecated:
Use table or raw_table as a factory.
\n \n
\n \n \n

◆ stream_to() [3/3]

\n \n
\n@@ -324,15 +324,15 @@\n \n inline \n \n \n
\n \n

Create a stream, specifying column names as a sequence of strings.

\n-
Deprecated:
Use table or raw_table as a factory.
\n+
Deprecated:
Use table or raw_table as a factory.
\n \n
\n \n

Member Function Documentation

\n \n

◆ complete()

\n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/deprecated.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/deprecated.html", "unified_diff": "@@ -91,85 +91,85 @@\n \n
\n
Deprecated List
\n
\n
\n
\n
Class pqxx::basic_fieldstream< CHAR, TRAITS >
\n-
To convert a field's value string to some other type, e.g. to an int, use the field's as<...>() member function. To read a field efficiently just as a string, use its c_str() or its as<std::string_vview>().
\n+
To convert a field's value string to some other type, e.g. to an int, use the field's as<...>() member function. To read a field efficiently just as a string, use its c_str() or its as<std::string_vview>().
\n
Class pqxx::basic_ilostream< CHAR, TRAITS >
\n-
Access large objects directly using the blob class.
\n+
Access large objects directly using the blob class.
\n
Class pqxx::basic_lostream< CHAR, TRAITS >
\n-
Access large objects directly using the blob class.
\n+
Access large objects directly using the blob class.
\n
Class pqxx::basic_olostream< CHAR, TRAITS >
\n-
Access large objects directly using the blob class.
\n+
Access large objects directly using the blob class.
\n
Class pqxx::binarystring
\n-
Use bytes and bytes_view for binary data. In C++20 or better, any contiguous_range of std::byte will do.
\n+
Use bytes and bytes_view for binary data. In C++20 or better, any contiguous_range of std::byte will do.
\n
Member pqxx::blob::read (std::vector< std::byte, ALLOC > &buf)
\n
As libpqxx moves to C++20 as its baseline language version, this will take and return std::span<std::byte>.
\n
Member pqxx::connection::set_variable (std::string_view var, std::string_view value) &
\n-
To set a session variable, use set_session_var. To set a transaction-local variable, execute an SQL SET command.
\n+
To set a session variable, use set_session_var. To set a transaction-local variable, execute an SQL SET command.
\n
Member pqxx::connection_base
\n-
Old base class for connection. They are now the same class.
\n-
Member pqxx::encrypt_password (zview user, zview password)
\n-
Use connection::encrypt_password instead.
\n+
Old base class for connection. They are now the same class.
\n
Member pqxx::encrypt_password (char const user[], char const password[])
\n-
Use connection::encrypt_password instead.
\n+
Use connection::encrypt_password instead.
\n+
Member pqxx::encrypt_password (zview user, zview password)
\n+
Use connection::encrypt_password instead.
\n
Member pqxx::fieldstream
\n-
Read a field using field::as<...>() or field::c_str().
\n+
Read a field using field::as<...>() or field::c_str().
\n
Member pqxx::from_query
\n-
Use transaction_base::stream instead of stream_from.
\n+
Use transaction_base::stream instead of stream_from.
\n
Struct pqxx::from_query_t
\n-
Use stream_from::query() instead.
\n+
Use stream_from::query() instead.
\n
Member pqxx::from_table
\n-
Use transaction_base::stream instead of stream_from.
\n+
Use transaction_base::stream instead of stream_from.
\n
Struct pqxx::from_table_t
\n-
Use stream_from::table() instead.
\n+
Use stream_from::table() instead.
\n
Class pqxx::internal::dynamic_params< IT, ACCESSOR >
\n-
Use params instead.
\n+
Use params instead.
\n
Class pqxx::largeobject
\n-
Use the blob class instead.
\n+
Use the blob class instead.
\n
Class pqxx::largeobject_streambuf< CHAR, TRAITS >
\n-
Access large objects directly using the blob class.
\n+
Access large objects directly using the blob class.
\n
Class pqxx::largeobjectaccess
\n-
Use the blob class instead.
\n+
Use the blob class instead.
\n
Member pqxx::operator<< (std::basic_ostream< CHAR > &s, field const &value)
\n-
The C++ streams library is not great to work with. In particular, error handling is easy to get wrong. So you're probably better off doing this by hand.
\n+
The C++ streams library is not great to work with. In particular, error handling is easy to get wrong. So you're probably better off doing this by hand.
\n
Member pqxx::params::append (binarystring const &value) &
\n-
Append binarystring parameter.
\n+
Append binarystring parameter.
\n
Namespace pqxx::prepare
\n-
The new params class replaces all of this.
\n+
The new params class replaces all of this.
\n
Member pqxx::row::slice (size_type sbegin, size_type send) const
\n-
I haven't heard of anyone caring about row slicing at all in at least the last 15 years. Yet it adds complexity, so unless anyone files a bug explaining why they really need this feature, I'm going to remove it. Even if they do, the feature may need an update.
\n+
I haven't heard of anyone caring about row slicing at all in at least the last 15 years. Yet it adds complexity, so unless anyone files a bug explaining why they really need this feature, I'm going to remove it. Even if they do, the feature may need an update.
\n
Class pqxx::stream_from
\n-
Use transaction_base::stream.
\n+
Use transaction_base::stream.
\n
Member pqxx::stream_from::stream_from (transaction_base &, from_query_t, std::string_view query)
\n-
Use factory function query instead.
\n+
Use factory function query instead.
\n
Member pqxx::stream_from::stream_from (transaction_base &, from_table_t, std::string_view table)
\n-
Use factories table or raw_table instead.
\n-
Member pqxx::stream_from::stream_from (transaction_base &, from_table_t, std::string_view table, Iter columns_begin, Iter columns_end)
\n
Use factories table or raw_table instead.
\n+
Member pqxx::stream_from::stream_from (transaction_base &, from_table_t, std::string_view table, Iter columns_begin, Iter columns_end)
\n+
Use factories table or raw_table instead.
\n
Member pqxx::stream_from::stream_from (transaction_base &tx, from_table_t, std::string_view table, Columns const &columns)
\n-
Use factory function query instead.
\n+
Use factory function query instead.
\n
Member pqxx::stream_from::stream_from (transaction_base &tx, std::string_view table)
\n-
Use factories table or raw_table instead.
\n+
Use factories table or raw_table instead.
\n
Member pqxx::stream_from::stream_from (transaction_base &tx, std::string_view table, Columns const &columns)
\n-
Use factories table or raw_table instead.
\n+
Use factories table or raw_table instead.
\n
Member pqxx::stream_from::stream_from (transaction_base &, std::string_view table, Iter columns_begin, Iter columns_end)
\n-
Use factories table or raw_table instead.
\n-
Member pqxx::stream_to::stream_to (transaction_base &, std::string_view table_name, Columns const &columns)
\n-
Use table or raw_table as a factory.
\n+
Use factories table or raw_table instead.
\n
Member pqxx::stream_to::stream_to (transaction_base &, std::string_view table_name, Iter columns_begin, Iter columns_end)
\n-
Use table or raw_table as a factory.
\n+
Use table or raw_table as a factory.
\n+
Member pqxx::stream_to::stream_to (transaction_base &, std::string_view table_name, Columns const &columns)
\n+
Use table or raw_table as a factory.
\n
Member pqxx::stream_to::stream_to (transaction_base &tx, std::string_view table_name)
\n-
Use table or raw_table as a factory.
\n+
Use table or raw_table as a factory.
\n
Member pqxx::strip_t
\n-
In C++20 we'll replace this with std::remove_cvref.
\n+
In C++20 we'll replace this with std::remove_cvref.
\n
Member pqxx::transaction_base::set_variable (std::string_view var, std::string_view value)
\n-
To set a transaction-local variable, execute an SQL SET command. To set a session variable, use the connection's set_session_var function.
\n+
To set a transaction-local variable, execute an SQL SET command. To set a session variable, use the connection's set_session_var function.
\n
\n
\n
\n \n \n
\n
\n

Binary data corresponding to PostgreSQL's \"BYTEA\" binary-string type.

\n-
Deprecated:
Use bytes and bytes_view for binary data. In C++20 or better, any contiguous_range of std::byte will do.
\n+
Deprecated:
Use bytes and bytes_view for binary data. In C++20 or better, any contiguous_range of std::byte will do.
\n

This class represents a binary string as stored in a field of type bytea.

\n

Internally a binarystring is zero-terminated, but it may also contain null bytes, they're just like any other byte value. So don't assume that it's safe to treat the contents as a C-style string.

\n

The binarystring retains its value even if the result it was obtained from is destroyed, but it cannot be copied or assigned.

\n

To include a binarystring value in an SQL query, escape and quote it using the transaction's quote_raw function.

\n
Warning
This class is implemented as a reference-counting smart pointer. Copying, swapping, and destroying binarystring objects that refer to the same underlying data block is not thread-safe. If you wish to pass binarystrings around between threads, make sure that each of these operations is protected against concurrency with similar operations on the same object, or other objects pointing to the same data block.
\n
\n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/group__transactions.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/group__transactions.html", "unified_diff": "@@ -3148,15 +3148,15 @@\n \n \n \n

Public Types

)
\n
\n \n

Set session variable using SQL \"SET\" command.

\n-
Deprecated:
To set a transaction-local variable, execute an SQL SET command. To set a session variable, use the connection's set_session_var function.
\n+
Deprecated:
To set a transaction-local variable, execute an SQL SET command. To set a session variable, use the connection's set_session_var function.
\n
Warning
When setting a string value, you must make sure that the string is \"safe.\" If you call quote() on the string, it will return a safely escaped and quoted version for use as an SQL literal.
\n
\n This function executes SQL. Do not try to set or get variables while a pipeline or table stream is active.
\n
Parameters
\n \n \n \n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/namespacepqxx.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/namespacepqxx.html", "unified_diff": "@@ -916,15 +916,15 @@\n
varThe variable to set.
valueThe new value to store in the variable. This can be any SQL expression.
\n \n \n \n
struct pqxx::from_query_t
\n
\n

Marker for stream_from constructors: \"stream from query.\".

\n-
Deprecated:
Use stream_from::query() instead.
\n+
Deprecated:
Use stream_from::query() instead.
\n
\n
\n \n \n

◆ pqxx::from_table_t

\n \n
\n@@ -932,15 +932,15 @@\n \n \n \n \n
struct pqxx::from_table_t
\n
\n

Marker for stream_from constructors: \"stream from table.\".

\n-
Deprecated:
Use stream_from::table() instead.
\n+
Deprecated:
Use stream_from::table() instead.
\n
\n
\n \n \n

◆ pqxx::stream_query

\n \n
\n@@ -1002,30 +1002,30 @@\n
\n \n \n \n \n
using pqxx::connection_base = typedef connection
\n
\n-
Deprecated:
Old base class for connection. They are now the same class.
\n+
Deprecated:
Old base class for connection. They are now the same class.
\n \n
\n
\n \n

◆ fieldstream

\n \n
\n
\n \n \n \n \n
using pqxx::fieldstream = typedef basic_fieldstream<char>
\n
\n-
Deprecated:
Read a field using field::as<...>() or field::c_str().
\n+
Deprecated:
Read a field using field::as<...>() or field::c_str().
\n \n
\n
\n \n

◆ strip_t

\n \n
\n@@ -1036,15 +1036,15 @@\n \n using pqxx::strip_t = typedef std::remove_cv_t<std::remove_reference_t<TYPE> >\n \n \n
\n \n

Remove any constness, volatile, and reference-ness from a type.

\n-
Deprecated:
In C++20 we'll replace this with std::remove_cvref.
\n+
Deprecated:
In C++20 we'll replace this with std::remove_cvref.
\n \n
\n \n \n

◆ table_path

\n \n
\n@@ -1415,15 +1415,15 @@\n )\n \n \n \n
\n \n

Encrypt a password.

\n-
Deprecated:
Use connection::encrypt_password instead.
\n+
Deprecated:
Use connection::encrypt_password instead.
\n \n
\n \n \n

◆ encrypt_password() [2/2]

\n \n
\n@@ -1454,15 +1454,15 @@\n \n inline \n \n \n
\n \n

Encrypt password.

\n-
Deprecated:
Use connection::encrypt_password instead.
\n+
Deprecated:
Use connection::encrypt_password instead.
\n \n
\n \n \n

◆ from_string()

\n \n
\n@@ -1630,15 +1630,15 @@\n \n inline \n \n \n
\n \n

Write a result field to any type of stream.

\n-
Deprecated:
The C++ streams library is not great to work with. In particular, error handling is easy to get wrong. So you're probably better off doing this by hand.
\n+
Deprecated:
The C++ streams library is not great to work with. In particular, error handling is easy to get wrong. So you're probably better off doing this by hand.
\n

This can be convenient when writing a field to an output stream. More importantly, it lets you write a field to e.g. a stringstream which you can then use to read, format and convert the field in ways that to() does not support.

\n

Example: parse a field into a variable of the nonstandard long long type.

\n
extern result R;
\n
long long L;
\n
stringstream S;
\n
\n
// Write field's string into S
\n@@ -1914,15 +1914,15 @@\n \n constexpr \n \n \n
\n \n

Pass this to a stream_from constructor to stream query results.

\n-
Deprecated:
Use transaction_base::stream instead of stream_from.
\n+
Deprecated:
Use transaction_base::stream instead of stream_from.
\n \n
\n
\n \n

◆ from_table

\n \n
\n@@ -1939,15 +1939,15 @@\n \n constexpr \n \n \n
\n \n

Pass this to a stream_from constructor to stream table contents.

\n-
Deprecated:
Use transaction_base::stream instead of stream_from.
\n+
Deprecated:
Use transaction_base::stream instead of stream_from.
\n \n
\n \n \n

◆ has_generic_bytes_char_traits

\n \n
\n"}, {"source1": "./usr/share/doc/libpqxx-doc/doxygen-html/namespacepqxx_1_1prepare.html", "source2": "./usr/share/doc/libpqxx-doc/doxygen-html/namespacepqxx_1_1prepare.html", "unified_diff": "@@ -90,15 +90,15 @@\n
\n \n
\n
pqxx::prepare Namespace Reference
\n
\n
\n

Detailed Description

\n-
Deprecated:
The new params class replaces all of this.
\n+
Deprecated:
The new params class replaces all of this.
\n
\n
\n \n
\n