libpqxx  7.5.2
types.hxx
1 /* Basic type aliases and forward declarations.
2  *
3  * Copyright (c) 2000-2021, Jeroen T. Vermeulen
4  *
5  * See COPYING for copyright license. If you did not receive a file called
6  * COPYING with this source code, please notify the distributor of this
7  * mistake, or contact the author.
8  */
9 #ifndef PQXX_H_TYPES
10 #define PQXX_H_TYPES
11 
12 #include <cstddef>
13 #include <cstdint>
14 
15 namespace pqxx
16 {
18 using result_size_type = int;
19 
22 
24 using row_size_type = int;
25 
27 using row_difference_type = int;
28 
30 using field_size_type = std::size_t;
31 
33 using large_object_size_type = int64_t;
34 
35 
36 // Forward declarations, to help break compilation dependencies.
37 // These won't necessarily include all classes in libpqxx.
38 class binarystring;
39 class connection;
43 class const_row_iterator;
44 class dbtransaction;
45 class field;
46 class largeobjectaccess;
48 struct range_error;
49 class result;
50 class row;
51 class stream_from;
52 class transaction_base;
53 
55 
58 {};
59 
61 
64 {};
65 
66 
68 
70 enum class format : int
71 {
72  text = 0,
73  binary = 1,
74 };
75 } // namespace pqxx
76 
77 #endif
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:26
int row_size_type
Number of fields in a row of database data.
Definition: types.hxx:24
int row_difference_type
Difference between row sizes.
Definition: types.hxx:27
std::size_t field_size_type
Number of bytes in a field of database data.
Definition: types.hxx:30
int result_difference_type
Difference between result sizes.
Definition: types.hxx:21
int result_size_type
Number of rows in a result set.
Definition: types.hxx:18
int64_t large_object_size_type
Number of bytes in a large object.
Definition: types.hxx:33
format
Format code: is data text or binary?
Definition: types.hxx:71
Binary data corresponding to PostgreSQL's "BYTEA" binary-string type.
Definition: binarystring.hxx:57
Connection to a database.
Definition: connection.hxx:184
Abstract transaction base class: bracket transactions on the database.
Definition: dbtransaction.hxx:53
Something is out of range, similar to std::out_of_range.
Definition: except.hxx:193
Reference to a field in a result set.
Definition: field.hxx:34
Accessor for large object's contents.
Definition: largeobject.hxx:152
Definition: notification.hxx:56
Result set containing data returned by a query or command.
Definition: result.hxx:71
Iterator for rows in a result. Use as result::const_iterator.
Definition: result_iterator.hxx:36
Reverse iterator for result. Use as result::const_reverse_iterator.
Definition: result_iterator.hxx:197
Reference to one row in a result.
Definition: row.hxx:46
Iterator for fields in a row. Use as row::const_iterator.
Definition: row.hxx:254
Reverse iterator for a row. Use as row::const_reverse_iterator.
Definition: row.hxx:359
Stream data from the database.
Definition: stream_from.hxx:73
Interface definition (and common code) for "transaction" classes.
Definition: transaction_base.hxx:75
Marker for stream_from constructors: "stream from table.".
Definition: types.hxx:58
Marker for stream_from constructors: "stream from query.".
Definition: types.hxx:64