Cppgres
Build Postgres extensions in C++
|
Runtime-typed value of record
type.
More...
#include <record.hpp>
Public Member Functions | |
record (HeapTupleHeader heap_tuple, abstract_memory_context &ctx) | |
record (HeapTupleHeader heap_tuple, abstract_memory_context &&ctx) | |
template<std::input_iterator Iter> requires convertible_into_nullable_datum<typename std::iterator_traits<Iter>::value_type> | |
record (tuple_descriptor &tupdesc, Iter begin, Iter end) | |
template<convertible_into_nullable_datum... D> | |
record (tuple_descriptor &tupdesc, D &&...args) | |
int | attributes () const |
Number of attributes in the record. | |
type | attribute_type (int n) const |
Type of attribute using a 0-based index. | |
std::string_view | attribute_name (int n) const |
Name of attribute using a 0-based index. | |
nullable_datum | get_attribute (int n) |
Get attribute value (datum) using a 0-based index. | |
nullable_datum | operator[] (std::string_view name) |
Get attribute by name. | |
nullable_datum | operator[] (int n) |
Get attribute by 0-based index. | |
operator HeapTuple () const | |
tuple_descriptor | get_tuple_descriptor () const |
Returns tuple descriptor. | |
record (const record &other) | |
record (const record &&other) | |
record & | operator= (const record &other) |
Friends | |
struct | datum_conversion< record > |
Runtime-typed value of record
type.
These records don't have a structure known upfront, for example, when a value of this type (record
) are passed into a function.
|
inline |
Name of attribute using a 0-based index.
std::out_of_range |
|
inline |
Type of attribute using a 0-based index.
std::out_of_range |
|
inline |
Get attribute value (datum) using a 0-based index.
std::out_of_range |
|
inline |
Get attribute by 0-based index.
std::out_of_range |
|
inline |
Get attribute by name.
std::out_of_range |