isolation.hxx
#ifndef PQXX_H_ISOLATION
#define PQXX_H_ISOLATION
#include "pqxx/compiler-public.hxx"
#include "pqxx/compiler-internal-pre.hxx"
#include "pqxx/util.hxx"
namespace pqxx
{
enum isolation_level
{
// read_uncommitted,
read_committed,
repeatable_read,
serializable
};
template<isolation_level LEVEL> struct isolation_traits
{
static constexpr isolation_level level() noexcept { return LEVEL; }
static constexpr const char *name() noexcept;
};
template<>
inline constexpr const char *isolation_traits<read_committed>::name() noexcept
{ return "READ COMMITTED"; }
template<>
inline constexpr const char *isolation_traits<repeatable_read>::name() noexcept
{ return "REPEATABLE READ"; }
template<>
inline constexpr const char *isolation_traits<serializable>::name() noexcept
{ return "SERIALIZABLE"; }
}
#include "pqxx/compiler-internal-post.hxx"
#endif
pqxx::serializable
@ serializable
Definition: isolation.hxx:61
pqxx::isolation_traits::level
static constexpr isolation_level level() noexcept
Definition: isolation.hxx:67
pqxx::read_committed
@ read_committed
Definition: isolation.hxx:59
pqxx::repeatable_read
@ repeatable_read
Definition: isolation.hxx:60
pqxx::isolation_traits::name
static constexpr const char * name() noexcept
pqxx
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:25
pqxx::isolation_level
isolation_level
Transaction isolation levels.
Definition: isolation.hxx:56
pqxx::isolation_traits
Traits class to describe an isolation level; primarly for libpqxx's own use.
Definition: isolation.hxx:65