libpqxx
The C++ client library for PostgreSQL
Loading...
Searching...
No Matches
pqxx::internal::enum_traits< ENUM > Struct Template Reference

Helper class for defining enum conversions. More...

Public Types

using impl_type = std::underlying_type_t<ENUM>
using impl_traits = string_traits<impl_type>

Static Public Member Functions

static constexpr zview to_buf (char *begin, char *end, ENUM const &value)
static constexpr char * into_buf (char *begin, char *end, ENUM const &value)
static ENUM from_string (std::string_view text)
static std::size_t size_buffer (ENUM const &value) noexcept

Static Public Attributes

static constexpr bool converts_to_string {true}
static constexpr bool converts_from_string {true}

Detailed Description

template<typename ENUM>
struct pqxx::internal::enum_traits< ENUM >

Helper class for defining enum conversions.

The conversion will convert enum values to numeric strings, and vice versa.

To define a string conversion for an enum type, derive a string_traits specialisation for the enum from this struct.

There's usually an easier way though: the PQXX_DECLARE_ENUM_CONVERSION macro. Use enum_traits manually only if you need to customise your traits type in more detail.


The documentation for this struct was generated from the following file:
  • /home/iurt/rpmbuild/BUILD/libpqxx-7.10.0-build/libpqxx-7.10.0/build/include/pqxx/strconv.hxx