# pqxx::internal Namespace Reference
[String conversion]

Private namespace for libpqxx's internal use; do not access. More...

## Classes

class | reactivation_avoidance_counter
class | reactivation_avoidance_exemption
| Scoped exemption to reactivation avoidance. More...
struct | result_data
| Information shared between all copies of a result set. More...
class | Escaper
class | transactionfocus
struct | dereference
| Functor: dereference iterator. More...
struct | deref_ptr
class | refcount
| Helper class used in reference counting (doubly-linked circular list). More...
class | PQAlloc
| Reference-counted smart pointer to libpq-allocated object. More...
class | scoped_array
class | namedclass
class | unique
| Ensure proper opening/closing of GUEST objects related to a "host" object. More...

## Namespaces

namespace | pq
| Forward declarations of libpq types as needed in libpqxx headers.

## Typedefs

typedef unsigned long | result_size_type
typedef long | result_difference_type
typedef const char * | cstring
| Work around problem with library export directives and pointers.

## Functions

void | wait_read (const internal::pq::PGconn *)
void | wait_read (const internal::pq::PGconn *, long seconds, long microseconds)
void | wait_write (const internal::pq::PGconn *)
void | freemem_result_data (result_data *) throw ()
PGSTD::string PQXX_LIBEXPORT | Escape (const PGSTD::string &s, const PGSTD::string &null)
template<typename STR>
PGSTD::string | EscapeAny (const PGSTD::string &s, const PGSTD::string &null)
template<typename STR>
PGSTD::string | EscapeAny (const char s[], const PGSTD::string &null)
template<typename T>
PGSTD::string | EscapeAny (const T &t, const PGSTD::string &null)
int | digit_to_number (char c) throw ()
| Compute numeric value of given textual digit (assuming that it is a digit).
char | number_to_digit (int i) throw ()
PGSTD::string | escape_string (const char str[], size_t maxlen) PQXX_DEPRECATED
| Internal string-escaping function; does not deal well with encoding issues.
void PQXX_LIBEXPORT | freepqmem (void *)
void PQXX_LIBEXPORT | freemem_notif (pq::PGnotify *) throw ()
void | CheckUniqueRegistration (const namedclass *New, const namedclass *Old)
void | CheckUniqueUnregistration (const namedclass *New, const namedclass *Old)
void PQXX_LIBEXPORT | sleep_seconds (int)
| Sleep for the given number of seconds.
cstring PQXX_LIBEXPORT | strerror_wrapper (int err, char buf[], PGSTD::size_t len) throw ()
| Human-readable description for error code, possibly using given buffer.
void | wait_read (const pq::PGconn *c)
void | wait_read (const pq::PGconn *c, long seconds, long microseconds)
void | wait_write (const pq::PGconn *c)
void | freemem_result_data (result_data *d) throw ()
string | Escape (const string &s, const string &null)
string | escape_string (const char str[], size_t maxlen)
| Internal string-escaping function; does not deal well with encoding issues.
void | freemem_notif (pqxx::internal::pq::PGnotify *p) throw ()
void | CheckUniqueRegistration (const namedclass *New, const namedclass *Old)
void | CheckUniqueUnregistration (const namedclass *New, const namedclass *Old)
void | freepqmem (void *p)
void | sleep_seconds (int s)
| Sleep for the given number of seconds.
const char * | strerror_wrapper (int err, char buf[], size_t len) throw ()

## Variables

const char | sql_begin_work []
| Commonly used SQL commands.
const char | sql_commit_work []
const char | sql_rollback_work []

## Detailed Description

Private namespace for libpqxx's internal use; do not access.

This namespace hides definitions internal to libpqxx. These are not supposed to be used by client programs, and they may change at any time without notice.

Conversely, if you find something in this namespace tremendously useful, by all means do lodge a request for its publication.

Warning:
  Here be dragons!

## Typedef Documentation

typedef const char* pqxx::internal::cstring

Work around problem with library export directives and pointers.

typedef long pqxx::internal::result_difference_type

typedef unsigned long pqxx::internal::result_size_type

## Function Documentation

void pqxx::internal::CheckUniqueRegistration | ( | const namedclass * | New,
|  | const namedclass * | Old |
| ) |  |  |

void pqxx::internal::CheckUniqueRegistration | ( | const namedclass * | New,
|  | const namedclass * | Old |
| ) |  |  |

void pqxx::internal::CheckUniqueUnregistration | ( | const namedclass * | New,
|  | const namedclass * | Old |
| ) |  |  |

void pqxx::internal::CheckUniqueUnregistration | ( | const namedclass * | New,
|  | const namedclass * | Old |
| ) |  |  |

int pqxx::internal::digit_to_number | ( | char | c | ) | throw ()

Compute numeric value of given textual digit (assuming that it is a digit).

string pqxx::internal::Escape | ( | const string & | s,
|  | const string & | null |
| ) |  |  |

PGSTD::string PQXX_LIBEXPORT pqxx::internal::Escape | ( | const PGSTD::string & | s,
|  | const PGSTD::string & | null |
| ) |  |  |

string pqxx::internal::escape_string | ( | const char | str[],
|  | size_t | maxlen |
| ) |  |  |

Internal string-escaping function; does not deal well with encoding issues.

Deprecated:
  Use transaction's esc() function instead

PGSTD::string pqxx::internal::escape_string | ( | const char | str[],
|  | size_t | maxlen |
| ) |  |  |

Internal string-escaping function; does not deal well with encoding issues.

Deprecated:
  Use transaction's esc() function instead

template<typename T>

PGSTD::string pqxx::internal::EscapeAny | ( | const T & | t,
|  | const PGSTD::string & | null |
| ) |  |  |

template<typename STR>

PGSTD::string pqxx::internal::EscapeAny | ( | const char | s[],
|  | const PGSTD::string & | null |
| ) |  |  |

template<typename STR>

PGSTD::string pqxx::internal::EscapeAny | ( | const PGSTD::string & | s,
|  | const PGSTD::string & | null |
| ) |  |  |

void pqxx::internal::freemem_notif | ( | pqxx::internal::pq::PGnotify * | p | ) | throw ()

void PQXX_LIBEXPORT pqxx::internal::freemem_notif | ( | pq::PGnotify * |  | ) | throw ()

void pqxx::internal::freemem_result_data | ( | result_data * | d | ) | throw ()

void pqxx::internal::freemem_result_data | ( | result_data * |  | ) | throw ()

void pqxx::internal::freepqmem | ( | void * | p | ) |

void PQXX_LIBEXPORT pqxx::internal::freepqmem | ( | void * |  | ) |

char pqxx::internal::number_to_digit | ( | int | i | ) | throw ()

void pqxx::internal::sleep_seconds | ( | int |  | ) |

Sleep for the given number of seconds.

May return early, e.g. when interrupted by a signal. Completes instantly if a zero or negative sleep time is requested.

void PQXX_LIBEXPORT pqxx::internal::sleep_seconds | ( | int |  | ) |

Sleep for the given number of seconds.

May return early, e.g. when interrupted by a signal. Completes instantly if a zero or negative sleep time is requested.

const char* pqxx::internal::strerror_wrapper | ( | int | err,
|  | char | buf[],
|  | size_t | len |
| ) |  |  | throw ()

cstring PQXX_LIBEXPORT pqxx::internal::strerror_wrapper | ( | int | err,
|  | char | buf[],
|  | PGSTD::size_t | len |
| ) |  |  | throw ()

Human-readable description for error code, possibly using given buffer.

Wrapper for `strerror()` or `strerror_r()`, as available. The normal case is to copy the string to the provided buffer, but this may not always be the case. The result is guaranteed to remain usable for as long as the given buffer does.

Parameters:

  | err | system error code as copied from errno
  | buf | caller-provided buffer for message to be stored in, if needed
  | len | usable size (in bytes) of provided buffer

Returns:
  human-readable error string, which may or may not reside in buf

void pqxx::internal::wait_read | ( | const pq::PGconn * | c,
|  | long | seconds,
|  | long | microseconds |
| ) |  |  |

void pqxx::internal::wait_read | ( | const pq::PGconn * | c | ) |

void pqxx::internal::wait_read | ( | const internal::pq::PGconn * | ,
|  | long | seconds,
|  | long | microseconds |
| ) |  |  |

void pqxx::internal::wait_read | ( | const internal::pq::PGconn * |  | ) |

void pqxx::internal::wait_write | ( | const pq::PGconn * | c | ) |

void pqxx::internal::wait_write | ( | const internal::pq::PGconn * |  | ) |

## Variable Documentation

const char pqxx::internal::sql_begin_work

Commonly used SQL commands.

const char pqxx::internal::sql_commit_work

const char pqxx::internal::sql_rollback_work