#include <base/datum.h>
|
constexpr const char * | GetVarlenBytes () const |
| Returns the variable-length value of a datum as an array of bytes. More...
|
|
constexpr uint32_t | GetVarlenSize () const |
| Returns the length of the variable-length value of a datum. More...
|
|
constexpr absl::string_view | GetVarlenAsStringView () const |
|
constexpr Datum & | GetDatum () const |
| Returns a reference to the underlying datum if this references one with a variable-length value. More...
|
|
Datum | DeepCopy (bool isbyref) const |
| Returns a new Datum that is a deep copy of the underlying datum. More...
|
|
◆ DeepCopy()
template<class DatumImpl >
Returns a new Datum that is a deep copy of the underlying datum.
The argument isbyref
whether the underlying datum has a value that is passed by reference or by value. Currently variable-length values (which includes all variable-length types and certain fixed-length types that are not 1,2,4,8 bytes long) are always passed by reference, while fixed-length values (which are 1,2,3,8 bytes long) are always passed by value.
It is the caller's responsibility to correctly determine whether the underlying datum is passed by reference or by value. Usually, that is determined by the SysTable_Type::typbyref() of the type of value.
◆ GetDatum()
template<class DatumImpl >
Returns a reference to the underlying datum if this references one with a variable-length value.
Not valid if it stores a fixed-length value, in which case the value instead of the Datum pointer is stored in the DatumRef/NullableDatumRef.
◆ GetVarlenAsStringView()
template<class DatumImpl >
◆ GetVarlenBytes()
template<class DatumImpl >
Returns the variable-length value of a datum as an array of bytes.
◆ GetVarlenSize()
template<class DatumImpl >
Returns the length of the variable-length value of a datum.
The documentation for this class was generated from the following file: